Kategorien
HowTo

OpenSSH mit Keyfiles und PuTTY nutzen

User für SSH Keys freischalten

Um einen User Zugang mittels SSH Keys z.B. über PuTTY zu erlauben muss in dessen Homeverzeichnis unter .ssh sein öffentlicher Public-Key abgelegt werden.
Private Keys dürfen nie über unsichere Kanäle übertragen werden, im Idealfall verläßt ein privater Key nie das Gerät auf welchem er erzeugt wurde !!!

Ins Homeverzeichnis wechseln
cd ~

Dort sollte es das .ssh Verzeichnis schon geben, wenn nicht bitte anlegen mit Rechte nur für den Besitzer (chmod 700 .ssh)
cd .ssh
ls -al

Hier muss eine Datei mit den Namen authorized_keys abgelegt (Rechte für Besitzer chmod 600 authorized_keys) werden.

Dateien über SSH kopieren

Dazu könnte das Programm pscp (bei PuTTY dabei) verwendet werden um den Public Key direkt von einem Client zu dem Gerät wo der SSH Server läuft:
pscp michi_public_openssh.pub pi@raspberry:/home/pi/.ssh/authorized_keys

Anmelden über SSH mit Passwort deaktivieren

Passwörter sind oft zu unsicher und die Anmeldung damit sollte deaktiviert werden (natürlich erst nachdem das anmelden mit Keyfiles klappt, ansonsten sperrt man sich selbst aus). Dies wird in der Datei /etc/ssh/sshd_config gemacht. Die Zeile
#PasswordAuthentication yes
ersetzen mit
PasswordAuthentication no
danach OpenSSH restarten
sudo systemctl restart ssh

SSH Keys mit PuTTY für OpenSSH konvertieren

Mit folgenden Kommando kann ein PuTTY-Standard Public-Key in einen OpenSSH kompatiblen Key umgewandelt werden. Der neue Key darf keine Zeilenumbrüche haben.
puttygen -i -f putty-public-key > ssh_id_openssh.pub