Ich habe ungefähr 3 Stunden damit verbracht, herauszufinden, wie ich mit Putty von meinem Windows-Computer aus eine Verbindung zu einer Linux-Box herstellen kann, ohne das Passwort senden zu müssen.
Dies stellt eine Verbindung zu einem Ubuntu-Server her, der OpenSSH verwendet. Der private Schlüssel ist SSH-2 RSA, 1024 Bit. Ich verbinde mich mit SSH2.
Ich bin bereits auf die häufigeren Probleme gestoßen:
- Putty hat den öffentlichen Schlüssel im "falschen Format" generiert. Ich habe dies korrigiert (wie in diesem Blog-Beitrag zu sehen ). Da ich jedoch noch nicht verbunden bin, kann ich nicht absolut bestätigen, dass diese Datei das richtige Format hat. Der Schlüssel befindet sich jetzt alle in einer einzelnen Zeile, und ich habe versucht, Zeilenumbrüche am Ende der Datei hinzuzufügen / zu entfernen. Ich habe auch einige Male versucht, öffentliche Dateien zu bearbeiten, um sicherzustellen, dass ich die manuelle Konvertierung nicht gestört habe. Trotzdem kann ich hier die Richtigkeit nicht überprüfen.
- Die Berechtigungen waren ebenfalls sofort falsch, was insbesondere bedeutet, dass die Datei zu viele Berechtigungen hatte. Ich musste das auch lösen und ich weiß, dass es darüber hinausgegangen ist, weil ich in /var/log/auth.log keinen verwandten Fehler mehr sehe .
- Ich habe sowohl Authorized_keys als auch Authorized_keys2 ausprobiert, falls der Server eine alte Version von OpenSSH hat, aber dies hat nichts geändert.
- Ich habe als Benutzer Zugriff. Nachdem diese Schlüsseldatei fehlgeschlagen ist, kann ich stattdessen mein Passwort eingeben
Die einzige verbleibende Information, die ich habe, ist, dass behauptet wird, ich hätte das angebliche Passwort falsch:
sshd[22288]: Failed password for zzzzzzz from zz.zz.zz.zz port 53620 ssh2
Trotzdem ist dies, soweit ich das beurteilen kann, nur ein fauler Versuch / Fang irgendwo, da ich glaube, dass es überhaupt kein Passwort gibt .
Ich sehe nichts anderes in einer der verwendeten / var / log-Dateien. Was könnte sonst noch falsch sein?
Antworten:
select all
copy
..ssh/authorized_keys
Sie den Schlüssel, fügen Sie ihn ein und entfernen Sie alle anderen vorhandenen Elemente, wenn Sie versucht haben, diesem Video zu folgen.~/.ssh
Ordner0700
mit istchmod 0700 ~/.ssh/
0600
so seinchmod 0600 ~/.ssh/authorized_keys
.quelle
Das bedeutet, dass der Schlüsselaustausch nicht stattgefunden hat oder fehlgeschlagen ist.
Bitte laden Sie das CLI-Tool plink.exe herunter (dieselbe Stelle, an der Sie putty.exe heruntergeladen haben) und führen Sie ein Debugging durch
Sehen Sie, was es Ihnen sagt, zusätzlich zu dem, was der Server sagt.
Sie können dies in einem Powershell- oder Cmd-Fenster tun.
Wenn Sie Ihre öffentliche Standard-Kittdatei bereits generiert haben, können Sie sie mit konvertieren
ssh-keygen -i -f yourputtypubkeyfile> openssh.key
zu Ihren autorisierten Schlüsseln hinzugefügt werden
quelle
Generieren Sie ein Schlüsselpaar und speichern Sie den öffentlichen Schlüssel auf dem Server, wie von @Zoredache vorgeschlagen. Geben Sie ein Passwort zum Schutz des privaten Schlüssels ein und klicken
Save private key
und speichern Sie den Schlüssel, z. B. in Ihrem Benutzerprofil. Entfernen Sie die Berechtigung für alle außer Ihnen aus der Schlüsseldatei.Um sich mit Ihrem privaten Schlüssel authentifizieren zu können, müssen Sie ihn PuTTY zur Verfügung stellen. Laden Sie es entweder mit
Pageant
oder geben Sie es im PuTTY-Konfigurationsdialog unter einConnection > SSH > Auth
(klicken Sie aufBrowse...
und wählen Sie die gerade gespeicherte Datei aus).Geben Sie im selben Dialogfeld
Session
in der Kategorie den Hostnamen oder die IP-Adresse des Hosts ein, zu dem Sie eine Verbindung herstellen möchten. Wechseln Sie in die UnterkategorieLogging
und klicken SieAll session output
dann aufOpen
.Wenn das Terminalfenster geöffnet wird, klicken Sie mit der rechten Maustaste auf die Titelleiste und wählen Sie
Event Log
. Dieses clientseitige Protokoll ergänzt sichauth.log
auf der Serverseite und soll Ihnen helfen, herauszufinden, was los ist.quelle