GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So vermeiden Sie, dass ssh die Schlüssel-Passphrase für passwortlose Anmeldungen auffordert

Das Programm ssh-agent ist ein Authentifizierungsagent, der Kennwörter für private SSH-Schlüssel verarbeitet. Verwenden Sie ssh-add, um die Schlüssel zu der Liste hinzuzufügen, die von ssh-agent verwaltet wird. Nachdem Sie ssh-agent ein Passwort für einen privaten Schlüssel hinzugefügt haben, müssen Sie es nicht jedes Mal eingeben, wenn Sie sich mit Ihrem öffentlichen Schlüssel mit einem entfernten Host verbinden.

Authentifizierungsschlüsselpaare generieren

Verwenden Sie das ssh-keygen Befehl zum Generieren von Authentifizierungsschlüsselpaaren wie unten beschrieben. Geben Sie beim Erstellen der Schlüsselpaare eine Passphrase an, z. B. „Passwort“.

# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U root@geeklab
The key's randomart image is:
+---[RSA 2048]----+
| o.  .oo.        |
|. o...ooo        |
| o .E=o+ .       |
|+ * B.+ o        |
|.* @ +.*S        |
|=.o.+.++o        |
|o=o...+.         |
|= .. o.          |
|o.               |
+----[SHA256]-----+

Kopieren Sie den öffentlichen Schlüssel auf den Remote-Host

1. Kopieren Sie den öffentlichen Schlüssel nach ~/.ssh/authorized_keys auf dem Remote-System.

# ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

2. Versuchen Sie nun, sich mit „ssh ‘[email protected]′′“ am Computer anzumelden, und checken Sie die .ssh/authorized_keys ein Datei, um sicherzustellen, dass wir keine zusätzlichen Schlüssel hinzugefügt haben, die Sie nicht erwartet haben.

$ ssh 192.168.12.10
Enter passphrase for key '/root/.ssh/id_rsa': 
Last login: Wed Apr 06 09:03:50 2014 from 192.168.12.20

Passwort für privaten Schlüssel zu ssh-agent hinzufügen

1. Um das Passwort des privaten Schlüssels zu ssh-agent hinzuzufügen, geben Sie den folgenden Befehl ein:

# exec ssh-agent $SHELL

2. Im nächsten Schritt verwenden Sie den Befehl ssh-add, um den Schlüssel hinzuzufügen.

# ssh-add
Enter passphrase for /root/.ssh/id_rsa: 
Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)

3. Der Befehl „ssh-add -l“ listet die Fingerabdrücke aller Identitäten auf, die derzeit vom Agenten repräsentiert werden.

# ssh-add -l
2048 SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U /root/.ssh/id_rsa (RSA)

4. Sie können sich jetzt ohne Passwort beim Remote-System anmelden.

$ ssh 192.168.12.10
Last login: Thu Apr 06 11:13:29 2014 from 192.168.12.20

In diesem Beispiel wird die Passphrase nur für die aktuelle Anmeldesitzung gespeichert und beim Abmelden vergessen.


Linux
  1. So richten Sie SSH-Schlüssel ein

  2. Wie kann ich den öffentlichen Schlüssel von einem privaten SSH-Schlüssel abrufen?

  3. So verwenden Sie den Befehl ssh-keygen, um passwortloses ssh zu konfigurieren

  4. Wie passwortloses SSH unter Linux / UNIX funktioniert

  5. So richten Sie SSH-Schlüssel für die „kennwortlose“ SSH-Anmeldung unter CentOS/RHEL ein

So richten Sie die passwortlose SSH-Authentifizierung unter Linux ein

So erstellen Sie eine SSH-Schlüssel-Passphrase unter Linux

So richten Sie die passwortlose SSH-Anmeldung in AlmaLinux ein

Wie richte ich die ssh-schlüsselbasierte Authentifizierung für Github mithilfe der Datei ~/.ssh/config ein?

So fügen Sie einen SSH-Schlüssel für den cPanel-SSH-Zugriff hinzu

So verhindern Sie, dass SSH die Verbindung trennt, wenn es eine Weile inaktiv war