ssh

Login auf einem entfernten Rechner

ssh -l user rechner oder ssh user@rechner
ssh -X user@rechner
mit X-Oberfläche einloggen
ssh -XC user@rechner mit X-Oberfläche und Kompression einloggen
ssh user@rechner -X programm startet ein Programm auf dem entfernten Rechner und leitet die X-Ausgabe auf den lokalen Rechner um.

Wenn der gespeicherte Fingerabdruck des anzumeldenden Rechners nicht mehr stimmt (neue Hardware oder Neuinstallation) muss die Datei known_hosts bearbeitet werden und der betreffende Rechner gelöscht werden.

OpenSSH konfigurieren

Zur Konfiguration von openssh gibt es folgende Dateien:

  • /home/user/.ssh/config
    Konfigurationsdatei des ssh-Clients für den entsprechenden User.
  • /etc/ssh/ssh_config
    Konfigurationsdatei des ssh-Clients für alle User.
  • /etc/ssh/sshd_config
    globale Konfigurationsdatei des ssh-Servers

Server-Konfiguration

  1. Konfiguration anpassen (Beispiel s. u.): sudo vim /etc/ssh/sshd_config
  2. SSH neu starten: sudo /etc/init.d/ssh restart oder serivce ssh restart
  3. öffentlicher Teil des User-Keyfile (siehe Client einrichten) hinzufügen: 
    cat id_dsa.pub >> ~/.ssh/authorized_keys
  4. Rechte beachten (siehe chmod):
    Die Datei „authorized_keys“ muss die Dateirechte 600 haben
    Das Home-Verzeichnis des Users muss die rechte 700 haben

Client-Konfiguration

  1. Konfiguration anpassen (Beispiel s. u.):
    sudo vim /etc/ssh/ssh_config
    vim /home/user/.ssh/config
  2. Keypaar (id_rsa und id_rsa.pub) generieren:
    ssh-keygen -b 2048 -t rsa
  3. öffentlichen Key id_rsa.pub auf den Server kopieren und dort der authorized_keys hinzufügen (s.o.)

Achtung: Der Login über Publickey ist nur möglich, wenn das Home-Verzeichnis des Users die Rechte 700 hat!

Konfigurationsdateien:

/home/user/.ssh/config

# Bezeichnung des Zielrechners
Host <Aufrufname>
  # Zielrechner
  Hostname <IP Hostrechner>
  # Username auf Zielrechner
  User <username>
  # immer eine X11-Verbindung aufbauen
  ForwardX11 yes
  # Kompression aktivieren
  Compression yes
  # Port für Verbindung
  Port 22

<Aufrufname>, <IP Hostrechner> und <username> entsprechend anpassen.

Danach kann die ssh-Verbindung ganz einfach über ssh <Aufrufname> aufgebaut werden.

/etc/ssh/ssh_config (Client-Konfiguration)

In der Regel ist die von der Grundinstallation vorhandene Datei für die meisten Fälle bereits passend konfiguriert. Anpassungen sind nur bei Bedarf notwendig.

/etc/ssh/sshd_config (Server-Konfiguration)

In der Regel ist die von der Grundinstallation vorhandene Datei für die meisten Fälle bereits passend konfiguriert. Anpassungen sind nur bei Bedarf notwendig und sollten mit Bedacht erfolgen, da die Sicherheit entscheidend von der richtigen Parametrierung abhängt.

Root-Login aktivieren

Sofern ein Root-Login gewünscht wird, kann dieser über PermitRootLogin aktiviert werden:
PermitRootLogin no – Root-Zugang verboten
PermitRootLogin yes – Root kann sich mit Passwort einloggen
PermitRootLogin prohibit-password – (vor OpenSSH 7.0: PermitRootLogin without-password) Root kann sich nur bei gültiger PublicKey-Datei einloggen

Strict-Mode

Der Strict-Mode wird über StrictModes yes aktiviert. Hierbei werden die korrekten Dateirechte der Keyfiles und der Verzeichnisse berücksichtigt und lässt einen SSH-Zugang nur zu, wenn diese korrekt gesetzt sind (siehe Abschnitt Serverkonfiguration).

X11-Forwarding

wird über X11Forwarding yes aktiviert.