SSH mit Public-Key Authentifizierung – HowTo

closeThis post was published more than three months ago. Please note that the information offered here may no longer be current and valid. Therefore, please inform yourself about this topic elsewhere. If there is any new information, you can also send me a comment. Thank you so much!

Damit man sich nicht alle Passwörter merken muss, kannst du sogenannte Keys zur Authentifizierung verwenden. Als erstes gehen wir sicher, dass der ssh-Server bzw. ssh-Client überhaupt installiert ist.

Server:

sudo aptitude install openssh-server

Client:

sudo aptitude install ssh-client


So, nun benötigen wir einen public-key und einen private-key, diese erzeugen wir mit folgendem Kommando, auf dem Client-PC.

ssh-keygen -t rsa -b 2048 -C "deine@adresse.de"

(„deine@adresse.de“ ist nur ein Kommentar, also nicht wirklich von Bedeutung.)


Falls du dein Passwort im Nachhinein ändern willst, kannst du dies mit folgendem Kommando bewerkstelligen.

ssh-keygen -p 


Jetzt müssen wir dem remote Server, welcher zu unserem PC eine Verbindung (ohne Passwort) aufbauen können soll dem public-key → ~/.ssh/id_rsa.pub mitteilen. Wir kopieren den key auf den remote Server.

scp -p id_rsa.pub remoteuser@remotehost:

Dann Logen wir uns an dem remote Server ein und fügen den Schlüssel zu den authorized_keys hinzu.

ssh remoteuser@remotehost
cat id_rsa.pub >> ~/.ssh/authorized_keys
rm id_rsa.pub
logout


Alternativ kann man diesen Vorgang mit folgendem Kommando auch beschleunigen jedoch wollte ich auch einmal gezeigt haben, was dieses Kommando macht.

ssh-copy-id -i ~/.ssh/id_rsa.pub remoteuser@remotehost


Nun wollen wir einen ersten Test wagen, mal sehen ob alles funktioniert… in der Konsole bitte folgendes eingeben…

eval `ssh-agent`
ssh-agent
ssh-add

…und schon können wir auf einen entfernten Rechner zugreifen, ohne ein Passwort eintippen zu müssen.

ssh remoteuser@remotehost

Published by

voku

Lars Moelleken | Ich bin root, ich darf das!