2009-02-26 9 views

Antwort

5

Natürlich! Unter Unix und OS X generiert der Befehl ssh-keygen öffentliche und private Schlüssel für die SSH-Authentifizierung mit öffentlichen Schlüsseln. Der übliche Weg, diesen Befehl (auf dem Client) aufzurufen ist:

ssh-keygen -t rsa 

Dieser Befehl wird Sie fragen, wo Sie Ihren privaten Schlüssel zu setzen; Der Standardplatz ist ~/.ssh/id_rsa, und der öffentliche Schlüssel wird in die gleichnamige Datei mit der Erweiterung .pub eingefügt (zum Beispiel: ~/.ssh/id_rsa.pub). Der Befehl fordert Sie außerdem auf, ein Kennwort ("Passphrase") für den privaten Schlüssel zu erstellen. Sie können es für kein Passwort freilassen wie ich, aber ich empfehle diese Praxis nicht.

Sobald Sie Ihre öffentlichen und privaten Schlüssel auf dem Clientcomputer haben, müssen Sie Ihren Server dazu bringen, diesen öffentlichen Schlüssel zu erkennen. Wenn Sie Shell-Zugriff auf den Server haben, können Sie die Public-Key-Datei mit scp laden, dann ssh verwenden Sie den folgenden Befehl auf dem Server ausgeführt werden:

cat id_rsa.pub >> ~/.ssh/authorized_keys 

Wenn Ihr Hosting-Unternehmen nicht geben Sie den Zugriff Shell (obwohl Bluehost das tut, oder diese Prozedur nicht funktioniert, wird es wahrscheinlich eine Webschnittstelle zu derselben Funktionalität geben.

Sobald Ihr Server für die Erkennung Ihres öffentlichen Schlüssels eingerichtet wurde, können Sie ohne Kennwort darauf zugreifen, wenn ssh auf dem Client versucht, Ihren privaten Schlüssel für die Authentifizierung zu verwenden. Sie müssen möglicherweise noch das Kennwort Ihres privaten Schlüssels eingeben, aber normalerweise müssen Sie dies nur einmal für jede Client-Anmeldesitzung tun.

+0

Sie schlagen vor, einen * passwortlosen * privaten Schlüssel zu erstellen? –

+0

Ja, das ist eine schlechte Übung, aber normalerweise verwende ich sie. Ich werde meine Antwort bearbeiten, um diese Bedenken auszuräumen. –

+0

Im Ernst, verwenden Sie SSHKeychain. –

2

Sicher mache ich das die ganze Zeit. Folgen Sie einfach these Anweisungen, um einen SSH-Schlüssel zu generieren und auf Ihren Server zu kopieren. Die Anweisungen sollten sowohl auf Mac als auch auf Linux funktionieren.

1

OpenSSH sollte für OS X verfügbar sein; Öffne ein Terminal und sieh dir "man ssh" an. SSH-Schlüssel werden (in einem anderen Format als PuTTY) in ~/.ssh gespeichert. Eine Konfiguration in ~/.ssh/config kann Ihnen das Leben erleichtern; Sie können sagen "Verwenden Sie dieses $ SHORTNAME für diesen $ HOST mit diesem $ KEY" und ähnlich.

1

Am Terminal Prompt tun

$ apropos ssh 

Sie sollten eine Liste aller Programme Mac OS X mit Bezug zu ssh kommt bekommen.

Mit den ssh* Tools werden Ihre SSH-Schlüssel unter ~/.ssh gespeichert. PuTTY ist nett, aber verglichen mit den Standard-OpenSSH-Tools ist es nur auf Windows-Systemen nützlich.

1

Sicher kann! Erster Lauf:

ssh-keygen 

Und gehen Sie durch die Schritte. Es ist eine gute Idee, ein Passwort und dergleichen zu geben. Dann können Sie:

cat ~/.ssh/id_rsa.pub 

und copy-paste das Ergebnis in die Bluehost öffentlichen Schlüssel TextArea-.

+0

Ich habe jetzt mein Schlüsselpaar bei Bluehost. Ich habe mit meinem Server über "ssh Benutzername @ ipAddress" verbunden und es fragt immer noch mein Passwort. Wie kann ich den Unterschied sehen? –

+0

Hast du bluehost bekommen, um SSH einzuschalten? Ich denke, sie brauchen einen Scan von einem Foto-ID oder etwas ... –

+0

Mike: Ich habe SSH auf. –

2

SSHKeychain ist so ziemlich ideal dafür. Es lebt unaufdringlich in der Menüleiste und lässt sich nahtlos in die Keychain- und SSH-Implementierungen von OS X integrieren.

Sie müssen ssh-keygen verwenden, wie in anderen Antworten beschrieben, aber sobald Sie das getan haben, können Sie SSHKeychain verwenden, um zu vermeiden, Ihre private Schlüssel-Passphrase die ganze Zeit eingeben zu müssen.

+0

Ich kann nicht glauben, dass ich nie von SSHKeychain gehört habe. Wenn ich nach Hause komme, werde ich es versuchen! –

+0

"Leopard hat ssh-Agent gebaut" -http: //www.sshkeychain.org/pipermail/users/2008-September/000238.html Ich bemerkte, dass wenn meine Installation von SSHKeychain ähnlich wie in der Verknüpfung fehlschlug. Brauche ich die Software für Leopard? –

+0

@Masi: Ich weiß nicht, ich benutze Tiger (10.4). SSHKeychain wurde für eine Weile nicht aktualisiert, daher kann es jetzt veraltet sein. –

Verwandte Themen