Um die öffentlichen und privaten Schlüsseldateien zu erzeugen,
können Sie den SSH-Keygen-Befehl verwenden, der mit OpenSSH installiert wird.
ssh-keygen -t rsa
Sie werden jetzt aufgefordert, in den passphrase einzugehen.
Ein guter passphrase sollte mindestens 10 - 20 Charaktere lange sein, und eine Mischung von alphanumerischen und Zeichensetzungscharakteren verwenden.
Enter passphrase (empty for no passphrase):
Es ist unklug ein Schlüssel ohne passphrases zu haben. Wenn jemand gerade die private Schlüsseldatei kopiert,
werden sie Zugang zu allen Daten haben.
Verwenden Sie den folgenden Befehl, wenn Sie jemals passphrase ändern wollen:
ssh-keygen -p
Ihre öffentliche Schlüsseldatei ist jetzt ~/.ssh/id_rsa.pub dieser Schlüssel kann mit jedem geteilt werden.
Ihre private Schlüsseldatei ist jetzt ~/.ssh/id_rsa dieser Schlüssel muss heimlich behalten werden.
Sie müssen jetzt Ihre öffentliche Schlüsseldatei dem entfernten Gastgeber kopieren, auf dem Sie im Stande sein wollen, öffentliche Schlüsselbeglaubigung zu verwenden.
ssh-copy-id -i ~/.ssh/id_rsa.pub username@zielhostnameODERip
Um den Schlüssel zu installieren, muss den Schlüssel zum ~/.ssh/authorized_keys Datei auf jedem Gastgeber anhängen, auf dem Sie es verwenden möchten.
# copy the key to the remote host scp ~/.ssh/id_rsa.pub user@remotehost:id_rsa.pub # ssh into the remote host using your password ssh user@remotehost # append the public key cat id_rsa.pub >> ~/.ssh/authorized_keys rm id_rsa.pub
Datei: /etc/ssh/sshd_config
ChallengeResponseAuthentication no PasswordAuthentication no
SSH Dienst restarten
/etc/init.d/sshd restart
~~UP~~
Voraussetzung: auf beiden Systemen ist ssh installiert und läuft, sowie /root/.ssh/ Ordner existiert, wenn nicht dann erstellen mit:
mkdir -p ~/.ssh chmod 700 ~/.ssh
Beispiel: System A zugreift über ssh auf Zielsystem B, um irgendwelche Befehle auszuführen, z.b. aus crontab:
*/1 * * * * rsync -avz -e ssh root@zielsystem:/var/log/logfile.log /var/log/logfolder/ 1> /dev/null 2> /dev/null
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub | ssh root@zielsystemhostname 'cat » .ssh/authorized_keys'
ssh zielsystemhostname
~~UP~~