OpenSSH Public Key Authentifizierung

Für eine Authentifizierung zwischen Client und Server mittels Public-Key-Verfahren ist es notwendig, diese entsprechend zu konfigurieren. Bevor es mit der eigentlichen Konfiguration des Client- Rechners losgeht, sollte SSH noch in der Firewall freigegeben werden.

Client

user@client:~]$ mkdir ~/.ssh

user@client:~]$ chmod 700 

user@client:~]$ cd .ssh

user@client:~/.ssh$ 

user@client:~/.ssh$ ssh-keygen -b 4096
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa): /home/user/.ssh/userkey_rsa
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/user/.ssh/userkey_rsa.
Your public key has been saved in /home/user/.ssh/userkey_rsa.pub.
The key fingerprint is:
20:69:c5:c3:e2:2d:a8:09:49:b9:d9:ee:ca:f9:45:5e user@client
The key's randomart image is:
+--[ RSA 4096]----+
|  .  o.          |
| o  .o+          |
|..+o+o..         |
|oo.oo...         |
|.o.  o ES        |
|o  .o .          |
|  .  o           |
|. ...            |
| +o.             |
+-----------------+

user@client:~/.ssh$ ls -la 
insgesamt 20
drwx------ 2 user user 4096 Dez 28 21:07 .
drwxr-xr-x 35 user user 4096 Dez 28 21:53 ..
-rw------- 1 user user 3326 Dez 28 21:06 userkey_rsa
-rw-r--r-- 1 user user 744 Dez 28 21:06 userkey.pub
-rw-r--r-- 1 user user 222 Dez 28 21:07 known_hosts

Achtung Sicherheitsrisiko

Sicherheit sollte immer im Vordergrund stehen, der Schlüssel muss unbedingt mit einer Passphrase geschützt werden!

user@client:~/.ssh$ cat userkey_rsa
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,CF61283D9D6B068S4DE189847EBA6D92

.....

-----END RSA PRIVATE KEY-----

Öffentlichen Schlüssel vom Client auf den Server übertragen

Damit der öffentlichen Schlüssel übertragen werden kann, wird vorübergehend noch eine SSH-Verbindung mittels Passwort-Authentifizierung benötigt. Mit dem Werkzeug ssh-copy-id wird das Idendity-File auf den Server kopiert:

user@client:~$ ssh-copy-id -i userkey_rsa.pub serveruser@192.168.2.209
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "userkey.pub"
The authenticity of host '192.168.2.209 (192.168.2.209)' can't be established.
ECDSA key fingerprint is SHA256:XQ.....ADsA.
Are you sure you want to continue connecting (yes/no)? 
/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
serveruser@192.168.2.209's password: (Hier das Passwort vom Benutzerkonto eintragen.)

The authenticity of host '192.168.2.201 (192.168.2.201)' can't be established.
ECDSA key fingerprint is SHA256:....
ECDSA key fingerprint is MD5:.....
Are you sure you want to continue connecting (yes/no)?
--
/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
serveruser@192.168.2.209's password:
--
Number of key(s) added: 1

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

[user@client:~]$ ssh serveruser@192.168.2.201
[serveruser@server:~]$

Jetzt sollte alles problemlos funktionieren.

Share