LPIC102/110.3 Daten durch Kryptografie schützen

Aus Foxwiki

Wichtigste Wissensgebiete

  • einen OpenSSH-2-Client grundlegend konfigurieren und verwenden
  • die Rolle von OpenSSH-2-Rechnerschlüsseln verstehen
  • GnuPG grundlegend konfigurieren und verwenden
  • GPG verwenden um Dateien zu verschlüsseln, entschlüsseln, signieren und zu überprüfen
  • SSH-Port-Tunnel (auch X11-Tunnel) verstehen

Liste wichtiger Dateien, Verzeichnisse und Anwendungen

  • ssh
  • ssh-keygen
  • ssh-agent
  • ssh-add
  • ~/.ssh/id_rsa und id_rsa.pub
  • ~/.ssh/id_dsa und id_dsa.pub
  • ~/.ssh/id_ecdsa und id_ecdsa.pub
  • ~/.ssh/id_ed25519 und id_ed25519.pub
  • /etc/ssh/ssh_host_rsa_key und ssh_host_rsa_key.pub
  • /etc/ssh/ssh_host_dsa_key und ssh_host_dsa_key.pub
  • /etc/ssh/ssh_host_ecdsa_key und ssh_host_ecdsa_key.pub
  • /etc/ssh/ssh_host_ed25519_key und ssh_host_ed25519_key.pub
  • ~/.ssh/authorized_keys
  • ssh_known_hosts
  • gpg
  • gpg-agent
  • ~/.gnupg/

SSH verwenden

Die serverseitige Komponente von SSH lässt sich mit dem Paket openssh-server installieren. Ist systemd zuständig, führen Sie falls nötig die folgenden beiden Kommandos aus um den SSH Dienst zu starten:

user:~ # systemctl start sshd.service
user:~ # systemctl enable sshd.service

Hinweis Zwar unterstützt sshd die Verwendung eines TCP-Wrappers und ist auch von inetd bzw. xinetd aus startbar, aber diese Vorgehensweise wird nicht empfohlen.

SSH-Client-Verbindung

Um eine Verbindung von einem Linux-System zu einem anderen aufzubauen, startet man ssh und übergibt den Host-Namen bzw. die IP-Adresse. Dann wird man zur Eingabe eines Kennwortes aufgefordert:

user:~ # ssh server
root@server's password:

Um sich nicht mit dem gleichen Benutzerkonto anmelden zu müssen, das man derzeit lokal verwendet, gibt es zwei Wege einen alternativen Benutzer anzugeben:

user:~ # ssh -l willi server
user:~ # ssh willi@server

Grafische Anwendungen unter X tunneln

Zuerst wird die SSH-Verbindung von einem X-Terminal aus initiiert.

Verbindung zusätzlich mit der Option –X initiieren (großes X).

user:~ # ssh -l willi -X server

Auf der Konsole des Remote-Systems führt man die Anwendung aus:

willi@server's password: 
willi@server:~ # openoffice

Die Anwendung führt das entfernte System aus, während die grafische Ausgabe und die Bedienung lokal an dem SSH-Client-Rechner erfolgen.
Das hier beschriebene Verfahren wird als X11-Tunnel bezeichnet.

Weiterleitung anderer Ports durch einen SSH-Tunnel.

Als Beispiel der Zugriff auf einen Terminalserver im entfernten Netzwerk, hinter einem SSH-Server.
IP-Adresse des Terminalservers 192.168.50.10 Terminalserver lauscht an Port 3389 IP des SSH-Server 119.117.63.126

Zunächst wird die SSH-Verbindung initiiert:

archangel:~ # ssh 119.117.63.126 -L 4711:192.168.50.10:3389

Die Option -L leitet den lokalen Port 4711 an die entfernte IP-Adresse 192.168.50.10 mit der Portnummer 3389 weiter. Alle Verbindungen, die mit diesem lokalen Port hergestellt werden, werden nun an 192.168.50.10:3389 weitergeleitet. Sie können also in diesem Fall einen Terminal-Dienste-Client (z. B. remmina) starten und als Ziel localhost:4711 angeben.