2010-08-13 5 views
97

Ich habe Putty unter Windows XP verwendet und die .ppk-Datei verwendet, um eine Verbindung zu meinen Linux-Servern (mehrere Server) herzustellen.PPK-Datei im Mac-Terminal verwenden, um eine Verbindung zur Remoteverbindung über SSH herzustellen

Auf den Servern Ich habe den folgenden Ordner und die Datei ~/.ssh/authorized_keys

ich jetzt einen Mac verbinden über das Terminal verwenden möchten. Ich habe die Remote-Verbindungen zu den Servern manuell eingerichtet und möchte wissen, wie ich die PPK-Datei oder den privaten/öffentlichen Schlüssel darin einrichten kann.

Bitte beachten Sie: Ich verwende bereits private/öffentliche Schlüsselanmeldung von Windows, so dass ich keinen neuen Schlüssel mit keygen erstellen muss, ich möchte nur wissen, wie ich jetzt einrichten, dass ich die Schlüssel bereits habe. (Mit anderen Worten, ich habe bereits die autorisierten Schlüssellisten auf dem Server und den öffentlichen und privaten Schlüssel).

Antwort

257

Sie können ssh direkt vom Terminal auf Mac, aber Sie müssen einen .PEM Schlüssel anstelle des putty.PPK Schlüssels verwenden. Sie können PuttyGen unter Windows verwenden, um von .PEM zu .PPK zu konvertieren, ich bin mir nicht sicher, anders herum.

Sie können auch den Schlüssel konvertieren mit putty für Mac über port oder brew:

sudo port install putty 

oder

brew install putty 

Dies wird auch puttygen installieren. Um puttygen zur Ausgabe einer .PEM Datei zu erhalten:

puttygen privatekey.ppk -O private-openssh -o privatekey.pem 

Sobald Sie den Schlüssel haben, öffnen Sie ein Terminalfenster und:

ssh -i privatekey.pem [email protected] 

Der private Schlüssel muss strenge Sicherheitseinstellungen haben sonst SSH beschwert. Stellen Sie sicher, dass nur der Benutzer den Schlüssel lesen kann.

chmod go-rw privatekey.pem 
+1

zu verbinden Sudo-Port ?? das gibt es sicher nicht ... zumindest in Mavericks –

+0

@Narven Bitte beachten Sie: http://www.macports.org/ –

+21

Sie können Kitt auch mit [brew] (http://brew.sh/) installieren: 'brew install putty'. Beachten Sie, dass wir 'sudo' hier nicht verwenden;) – GabLeRoux

17

Convert PPK zu OpenSSH

OS X: Homebrew installieren, führen Sie dann

Gebräu installieren Kitt

Platzieren Sie Ihre Schlüssel in einem Verzeichnis, z.B. Ihr Heimatordner. Nun wandeln die PPK Schlüssel zum SSH-Schlüsselpaare: Cache-Suche

Um den privaten Schlüssel zu generieren:

cd ~

puttygen id_dsa.ppk -O privat openssh -o id_dsa

und den öffentlichen Schlüssel zu generieren:

PuTTYgen id_dsa.ppk -O public-openssh -o id_dsa .pub

bewegen diese Tasten zu ~/.ssh und stellen Sie sicher, dass die Berechtigungen für Ihren privaten Schlüssel privat sind:

mkdir -p ~/.ssh 
mv -i ~/id_dsa* ~/.ssh 
chmod 600 ~/.ssh/id_dsa 
chmod 666 ~/.ssh/id_dsa.pub 

mit SSH-Server verbinden

ssh -i ~/.ssh/id_dsa [email protected] 

Port Forwarding verbinden mysql remote server

ssh -i ~/.ssh/id_dsa -L 9001:127.0.0.1:3306 [email protected] 
5

Es gibt eine Möglichkeit, dies zu tun, ohne Putty auf Ihrem Mac zu installieren. Sie können Ihre vorhandene PPK-Datei mithilfe von PuTTYgen unter Windows problemlos in eine PEM-Datei konvertieren.

Starten Sie PuTTYgen und laden Sie dann die vorhandene private Schlüsseldatei mit der Schaltfläche Laden. Wählen Sie im Menü "Conversions" die Option "Export OpenSSH key" und speichern Sie die private Schlüsseldatei mit der Dateierweiterung .pem.

die PEM-Datei auf Ihrem Mac kopieren und setzen Sie sie von Ihrem Benutzer schreibgeschützt werden:

chmod 400 <private-key-filename>.pem 

Dann sollten Sie in der Lage sein, ssh zu verwenden, um Remote-Server

ssh -i <private-key-filename>.pem [email protected] 
+1

'Es gibt eine Möglichkeit, dies zu tun, ohne Putty auf Ihrem Mac zu installieren. Sie können Ihre vorhandene PPK-Datei einfach in eine PEM-Datei konvertieren, indem Sie PuTTYgen unter Windows verwenden. Der beste Weg, dies auf Mac zu tun, ist es unter Windows zu machen ?! –

+0

Diese Antwort ist ein Witz – sigi

+1

Eigentlich @sigi meine Antwort war wirklich beabsichtigt, hilfreich zu sein. Das primäre Ziel der Frage, so wie ich es verstehe, ist die Verbindung von einem Mac zu einem Linux-Server mit einer vorhandenen .ppk-Datei von einem Windows-Rechner. Gegeben, der Fragesteller hat Zugriff auf eine Windows-Maschine und wandelt dann die .ppk-Datei in eine.pem-Datei vor dem Kopieren auf den Mac ist genauso eine gültige Lösung als zuerst auf den Mac kopieren und dort konvertieren. Ich habe diesen Ansatz vorgeschlagen, weil einige Leute es vorziehen, keine zusätzliche Software auf ihrem Mac zu installieren, die sie sonst nicht benötigen. – dasfrosty

Verwandte Themen