So generieren Sie einen öffentlichen / privaten Schlüssel (UNIX)

28431
Justin k

Kann mir jemand bitte sagen, warum ein Host auch einen öffentlichen und einen privaten Schlüssel haben muss, um SSH zu nutzen? Und wie kann ich ein öffentliches / privates Schlüsselpaar für mich generieren?

11

5 Antworten auf die Frage

7
Nikolai N Fetissov

ssh-kegen(1)

Sie benötigen den Hostschlüssel, damit Sie wissen, dass Sie sich mit dem richtigen Server verbinden und nicht mit einem gefälschten.

6
martin
# private key openssl genrsa -out privkey.pem 2048  # public key openssl rsa -in privkey.pem -pubout -out pubkey.pem 

Weitere Informationen erhalten Sie unter
http://www.openssl.org/docs/apps/rsa.html
http://www.openssl.org/docs/HOWTO/keys.txt

4
redent84

Es unterscheidet sich von einer Verteilung zur anderen. Verwenden Sie unter Ubuntu diesen Befehl:

ssh-keygen 

Es werden zwei Schlüssel generiert, ein öffentlicher Schlüssel (derjenige, den Sie für den Server freigeben) und der andere ist privat, und Sie dürfen mit niemandem teilen. Nachdem der öffentliche Schlüssel in die ~ / .ssh / authorised_keys des Servers kopiert wurde, können Sie sich ohne Kennworteingabe anmelden.

2
J V

Öffentliche / private Schlüssel sind wie Sperren und Schlüssel: Der Server sendet Ihnen eine Sperre, behält jedoch den Schlüssel und Sie sperren Ihre Nachrichten an den Server. Sie müssen dem Server auch eine Sperre senden, damit Sie diese Daten abrufen können.

Wikipedia hat dafür ein gutes Beispiel.

1
peoro

Auf jeden Fall sollten Sie Schlüssel generieren ssh-keygen. Sie benötigen private und öffentliche Schlüssel, um SSL zu verwenden, ein Verschlüsselungssystem, das auf asymmetrischen Schlüsseln basiert.