ssh-key generieren (rsa)

Im nachfolgenden Beispiel wird als Benutzername yuna und als IP 192.168.0.81 angenommen.

Benutzer (User): yuna
IP vom Server: 192.168.0.81

Um einen ssh-Key zu generieren, melden wir uns auf dem Server an und generieren einen Schlüssel mit dem Befehl:

$ ssh-keygen -m PEM -t rsa -b 4096
$ ssh-keygen -m PEM -t rsa -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yuna/.ssh/id_rsa): /home/yuna/id_rsa
Created directory '/home/yuna/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/yuna/.ssh/id_rsa
Your public key has been saved in /home/yuna/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:5I0tLZWA4Npi2HtU7s+1jJm7Vh0M/9nuIg1otSnlz1I benutzer@server
The key's randomart image is:
+------ [RSA 4096] ------+
|         _nnnn_         |
|        dGGGGMMb        |
|       @p~qp~~qMb       |
|       M|@||@) M|       |
|       @,----.JM|       |
|      JS^\__/  qKL      |
|     dZP        qKRb    |
|    dZP          qKKb   |
|   fZP            SMMb  |
|   HZM            MMMM  |
|   FqM            MMMM  |
| __| ".        |\dS"qML |
| |    `.       | `' \Zq |
|_)      \.___.,|     .' |
|\____   )MMMMMP|   .'   |
|     `-'       `--' hjm |
+--------[SHA256]--------+

Kopiere anschliessend den Schlüssel. Passe Username und IP-Adresse an:

$ ssh-copy-id benutzername@192.168.0.81
$ ssh-copy-id yuna@192.168.0.81
The authenticity of host '192.168.0.81 (192.168.0.81)' can't be established.
ECDSA key fingerprint is SHA256:vu1+RPGYAaOIS7x6pSg8FL9J7ZoxHCs92HAR3e/k9Ps.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
yuna@192.168.0.81's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'yuna@192.168.0.81'"
and check to make sure that only the key(s) you wanted were added.

Windows

Nun übertragen/kopieren wir den privaten Schlüssel id_rsa nach: C:\Users\BENUTZER\.ssh

Achte darauf, bei Windows die Dateierweiterung .txt zu entfernen. Die Datei heisst hier id_rsa und nicht id_rsa.txt

Bei einem Login wird nun der private Schlüssel auf Deinem PC mit dem Schlüssel auf dem Server abgeglichen. Passen die zusammen, wird die Verbindung akzeptiert.

 

Linux

Hier muss zwingend die Berechtigung vom id_rsa Schlüssel unter ~/.ssh/id_rsa auf 600 gesetzt werden. Ansonst kommt es zu diesem Vorfall:

$ ssh yuna@192.168.0.81 -p 22
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0770 for '/home/BENUTZER/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/home/BENUTZER/.ssh/id_rsa": bad permissions
yuna@192.168.0.81's password: 
(...)

Die korrekte Berechtigung setzen wir mittels:

# chmod 600 /home/BENUTZER/.ssh/id_rsa

Falls du mehrere SSH-Keys generieren möchtest, lese hier weiter.

Hinterlassen Sie einen Kommentar