SSH ohne Kennwörter mit Zertifikaten, eine SSH SingleSignOn Lösung

Immer diese lästigen Kennwort Eingaben. Unter Linux machen wir jetzt Schluss damit, bei SSH.

Die Voraussetzungen

  • openssh (Oder anderes SSH Paket)
  • openssl

Die Erstellung der Zertifikate

  1. „ssh-keygen“
  2. Speicherort angeben (Für Standart einfach ENTER drücken)
  3. passphrase eingeben (Kennwort für das Zertifikat), sollte möglichst Kryptisch aber zu merken sein
  4. passphrase nochmal eingeben
  5. fertig

Vorbereitung auf dem Zielsystem

  1. Kopieren der Datei „~/.ssh/id_rsa.pub“ auf das Zielsystem
  2. Anlegen des Verzeichnises „.ssh“ im $Home des User
  3. Anfügen des Publik-Key an die Datei „~/.ssh/authorized_keys“ mit dem Befehl „cat id_rsa.pub >> ~/.ssh/authorized_keys

Anpassungen für KDE (mit XDM)

  1. hinzufügen der Datei ssh-add.sh ins KDE Autostart unter „~/.kde/Autostart“:
    #! /bin/bash
    ssh-add
  2. Als root ssh-agent für KDE in „/etc/X11/xdm/sys.xsession“ freischalten
    1. in Zeile 11 muss stehen „usessh=“yes“

Was geht alles über diese SSH SingleSignOn Variante?

Alles was über ssh gemacht wird, hier eine kleine Liste von Programmen:

  • ssh
  • scp
  • kssh
  • konquerer (fish Protokoll)
  • mc (fish Protokoll)
  • sshfs (über fuse)
  • unison (für ssh Replikation)
  • u.v.m.

Weitere optionale Möglichkeiten

Optionen in /etc/ssh/ssh_config

Wer über mehrere Hops den SSH-Agent nutzen möchte muss die Option „ForwardAgent = yes“ eintragen

Nützliche Links

Anleitung zum Einrichten von Cygwin, PuTTY und WinSCP unter Microsoft Windows für diese SSH SingleSignOn Lösung