GnuPG-Schlüsseldaten veröffentlichen

Grafik eines Laptops mit Ausrufezeichenschild

In dem vorhergegangen Tutorial wurde gezeigt wie man einfach und mit Hilfe einer GUI mit Thunderbird/Enigmail einen Yubikey für GnuPG vorbereitet. Die Schlüssel helfen nichts wenn man nicht seine öffentliche Schlüssel veröffentlicht. Dies kann man zunächst einmal auf den Schlüsselservern und man erhält dann einen Link der folgendermaßen aussehen kann: https://keys.openpgp.org/vks/v1/by-fingerprint/46761780D7F5D4ED744CD286684A0B0B03A1960E

Dies ist ein auf einem Keyserver abgelegter Schlüssel. Dieser Link sollte sich bereits auf dem Yubikey unter URL befinden.

Für das Veröffentlichen des öffentlichen Schlüssels werden oft folgende Formate angeboten:

  • Key-ID (obsolet)
  • Fingerprint
  • Öffentlicher Schlüssel

Weiterlesen

Der unbekannte Befehl – „diff“ der Differenzierer

Symbolisiertes Terminal

diff ist ein Linux-Kommando zum inhaltlichen Vergleich von Dateien oder Ordnern. Dabei können die Unterschiede so dargestellt werden, dass durch die Ausgabe von diff eine Datei in die andere überführt werden kann. Dies hat eine Bedeutung beim schreiben von Patch-Dateien, durch die Änderungen an Programmcodes vorgenommen werden und diese Änderung daher nur in einer ASCII-Datei vorliegen braucht.

Wenn man zwei identische Dateien miteinander vergleicht so gibt diff keine Meldung aus. Mit der Option -s sieht das Ergebnis dann so aus:

$ diff -s orginal.txt modify.txt
Dateien orginal.txt und modify.txt sind identisch.

und es wird nur angezeigt ob die beiden inhaltlich völlig Dateien identisch sind. Interessant wird diese Funktion jedoch bei inhaltlich unterschiedlichen Dateien die in einem Zusammenhang stehen wie z.B. eine Originalquelle und der geänderte, gepatchte Quelltext.

Weiterlesen

Suchbefehl „find“ in der Linux-Konsole (II)

Symbolisiertes Terminal

Im ersten Teil dieser Serie habe ich bereits eine ganze Reihe an eher unbekannteren Suchbefehlen behandelt aber den wichtigsten Befehl find ignoriert. Dies war kein böser Wille sondern find ist derartig mächtig und umfangreich, dass man ihn separat behandeln muss. Auch erhebt dies hier nicht einmal im Ansatz den Anspruch auf Vollständigkeit sondern soll einen groben Überblick liefern.

Im Prinzip sucht find ab einem bestimmten Verzeichnis, kann auch das Wurzelverzeichnis / sein, ein bestimmtes Muster und macht eine bestimmte Aktion mit dem Ergebnis – oft einfach nur das Ergebnis auf stdout ausgeben. Nun gilt in der Unix/Linux-Welt das Prinzip „Alles ist eine Datei“ und das wird recht konsequent umgesetzt und dadurch kann man durchaus auch nach Gerätedateien oder Sockets suchen denn sie sind auf dem Dateisystem eine Datei.

Weiterlesen

Suchbefehle in der Linux-Konsole (I)

Symbolisiertes Terminal

Ich wage mich jetzt einmal an das Thema suchen in der Linux-Shell. Das Thema ist letztlich ein Fass ohne Boden da alleine der Befehl find sehr mächtig ist und man durch die möglichen Optionen schier erschlagen wird. find ist sicher der Befehl der am bekanntesten ist aber es gibt eine ganze Reihe nützliche und spezialisierterer aber deutlich unbekanntere Befehle die einem das Leben erleichtern wenn man etwas im Dateisystem sucht. Der Befehl find wird hier nicht behandelt sondern wird separat im zweiten Teil dieser Serie behandelt. Die hier behandelten Befehle sind:

  • grep
  • which
  • whereis
  • apropos
  • whatis
  • locate

Weiterlesen

Der unbekannte Befehl – „reset“ der Rettungsanker

Symbolisiertes Terminal

Wem ist das noch nicht passiert und hat versucht eine binäre Datei mit cat oder less versucht anzuzeigen? Das Ergebnis ist dann man erhält eine unlesbare Kolonne an mehr oder minder seltsamen ASCII-Zeichen:

▒AE
   �-@s��@A�]
J
 ,.`s��Wc�D▒�D �h▒ADD.�s��]B�E▒�E �E(�H0�H8�G@j8A0A(B B▒B�.�s���.�s��b�a�lr�l�r�h`r�h s�� �0�`�`�v��p�p���0����q0�p���m�um@u`� ����� �����@�p��� �0�@���о�� �����@���p���tL�Ӌ׋݋��������������������t�f����▒� �%�,�7�>�G���a8�bU�d_�De��o����h��i��k��n��G��qҌrf�sI�wڌA��B��F�����
�H���#��(�I���/�L;�NC�Q���N�R{��X��m��k�Tt��s��������~����Z�����~�����}���      �����ό����
                                                                                          �>�������▒�� ���#�&�)�,�/���2������8�=�����;��%�2�?�L�S�8��[�v
�l▒��� �                                             @
�
 ▒ �  �*P     ▒������o����o���o����o��6@F@V@f@v@�@�@�@�@�@�@�@�@AA&A6AFAVAfAvA�A�A�A�A�A�A�A�ABB&B6BFBVBfBvB�B�B�B�B�B�B�B�BCC&C6CFCVCfCvC�C�C�C�C�C�C�C�CDD&D6DFDVDfDvD�D�D�D�D�D�D�D�DEE&E6EFEVEfEvE�E�E�E�E�E�E�E�EFF&F6FFFVFfFvF�F�F�F�F�F�#����?������Չe�����ˍȍȍ΍ԍڍ����������`�%�7a5f86cd6394e8f583c14d786d13b3bcbe051b87.debug�cU".shstrtab.interp.note.ABI-tag.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.plt.data.bss.gnu_debuglink
                                                                        ���� !��$4��>o
                                                                                     ��`
                                                                                       ▒F  �N���o[���o��jhh▒tB�*�*�    ▒~@@y @ @���F���F�F�%��l�l  �pp)Q �,�,��(�(�����8
�����#�h &�� ��4

Weiterlesen

Der unbekannte Befehl – „pidof“, „pkill“, „pgrep“ die Prozessbeherrscher

Symbolisiertes Terminal

In diesem Teil fasse ich gleich drei Befehle zusammen da sie von der Funktion her sehr verwandt sind. Alle diese Befehle sind für das Verwalten und Kontrolle von Prozessen mit Hilfe des Prozessnamens zuständig. Intern werden Prozesse über die PID (process identifier) verwaltet – eine mehr oder minder vom Betriebssystem zufällige aber zum aktuellen Zeitpunkt einmalig vergebene Prozessnummer. Wenn man sich mit ps die Prozesse anzeigen lässt erhält man neben anderen Informationen auch die Prozessnummer:

$ ps aux | grep sshd
root 974 0.0 0.0 15948 1248 ? Ss Jul09 0:00 /usr/sbin/sshd -D
max 15984 0.0 0.0 6088 892 pts/6 S+ 18:07 0:00 grep sshd

Der Übersichtlichkeit wurde hier im Beispiel nach dem Prozess für den ssh-Daemon (sshd) mit den Optionen für alle Prozesse gesucht. Die PID 974 steht hier für den Daemon und 15984 für den Suchprozess selber. Auch top, htop usw. eignen sich für die Anzeige der PID.

Weiterlesen

Der unbekannte Befehl – „sar“ der Retrosammler

Symbolisiertes Terminal

Ein weiteres Kind aus der Familie der sysstat-Programme ist sar was für „System Activity Report“ steht. sar besteht eigentlich aus folgenden Teilprogrammen:

  • sar – zeigt die aufgezeichneten Daten an.
  • sadc – der „System Activity Data Collector“ zeichnet die Daten zu Systemaktivitäten im binären Format auf.
  • sa1 – ein BASH Skript was sadc im Hintergrund nutzt. Es wird alle zehn Minuten per crond aufgerufen (/etc/cron.d/sysstat).
  • sa2 – ein BASH Skript das zum Schreiben des täglichen Reports verwendet wird. Es wird per crond täglich ein Mal aufgerufen (/etc/cron.d/sysstat).
  • sadf – zeigt die aufgezeichneten Daten an und bietet dabei unterschiedliche Formate wie CSV, XML usw. an.

Weiterlesen

Der unbekannte Befehl – „iostat“ der Gatekeeper

Symbolisiertes Terminal

iostat ist ein Werkzeug zur Überwachung der Geschwindigkeit der Ein/Ausgabe-Geräte (I/O-Devices) und wird normalerweise als Teil einer Performance-Analyse verwendet. In Debian-System ist es Teil des Paketes sysstat und kann mit apt-get install sysstat installiert werden. Alle sysstat-Programme lesen ihre Werte aus dem proc-Dateisystem des Linux-Kernels aus und können daher nicht mehr Daten zur Verfügung stellen als der Kernel nach /proc schreibt.

Ein einfaches Ausrufen von iostat ohne Optionen führt zu einer Ausgabe die so ähnlich aussieht  (Die Ausgabe ist farblich unterlegt aber auf diese Wiedergabe verzichte ich hier):

$ iostat
Linux 4.19.0-8-amd64 (Marvin)           07.07.2020          _x86_64_                (4 CPU)

avg-cpu:           %user            %nice          %system         %iowait          %steal         %idle
                         8,80               0,00              4,06                0,05               0,00            87,09

Device                                      tps                kB_read/s         kB_wrtn/s     kB_read    kB_wrtn
sda                                          4,01                24,31                201,88         8408878    69819736

Weiterlesen

Der unbekannte Befehl – „file“ der Dateikenner

Symbolisiertes Terminal

Der Befehl ist nützlich wenn wir Dateien haben und wissen wollen welchen Zweck diese Datei hat. In der Windows-Welt bestimmt oft die Dateiendung über die potentielle Funktion einer Datei. Windows-Benutzer sehen diese Endung oft überhaupt nicht da sie vom Betriebssystem ausgeblendet wird und es stillschweigend davon ausgeht, dass die Endung korrekt ist – was in den allermeisten Fällen sicher auch zutreffen wird. Jedoch ist es sowohl unter Windows als auch unter Linux möglich einer Datei eine falsche Dateiendung zu geben. Böse Buben machen dies z.B. um bei schädlichen Email-Anhängen die Funktion zu verschleiern. Eine Datei mit dem Namen boese_datei.pdf.exe wird unter Windows oft nur als boese_datei.pdf angezeigt da die Dateiendung verschleiert wird und erscheint dadurch eine harmlose PDF-Datei statt ein ausführbares Programm zu sein.

Weiterlesen

Der unbekannte Befehl – „update-alternatives“ der Alternative

Symbolisiertes Terminal

In der Linux-Welt ist man in der glücklichen Lage oft Alternativen für einzelne Aufgaben zu haben. Anders als in der Windows-Welt bringen die meisten Linux-Distributionen einen Paketmanager mit die für eine Aufgabe verschiedene Programme zur Verfügung stellen. So gibt es z.B. viele ASCII-Editoren, Webbrowser oder E-Mail-Clients. In der Debian-Welt gibt es mit update-alternatives ein Tool zur Verwaltung dieser Programme mit konkurrierenden Funktionen. Streng genommen dient das Programm nur dazu symbolische Links auf diese Programme zu setzen.

Weiterlesen

kais-universum.de