SSH von PuTTy nach Debian Fehler "Authorized_keys ist keine reguläre Datei"

9

Ich kann mit PuTTy keine Verbindung von meinem Windows 7-Computer zu einem neu konfigurierten Debian Squeeze-Server mithilfe der SSH-RSA-Schlüsselauthentifizierung herstellen.

Ich erhalte diese Fehlermeldung, wenn SSH im Debug-Modus ausgeführt wird: User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file


Was ich bisher gemacht habe:

  1. ssh-keygen -t rsa
  2. Passphrase einstellen.
  3. Kopierte die Datei id_rsa.pub nach ~/.ssh/authorized_keys
  4. Kopierte die id_rsa in eine Textdatei auf meinem Windows 7-Computer
  5. Importierte den Schlüssel in puttygen.exeund konvertierte ihn in eine .ppkprivate Schlüsseldatei.
  6. Laden Sie diese private Schlüsseldatei in pageant.exeund stellen Sie sicher, dass für die Verbindungs-> SSH-> Auth-Authentifizierungsmethoden die Option "Authentifizierung mit Pageant versuchen" aktiviert ist.
  7. Das Profil wurde geladen.

Basierend auf den FAQ von OpenSSH.org habe ich die Berechtigungen wie folgt geändert:

drwxr-xr-x 3 root   root   4096 Aug 13 14:16 /home
drwxr-xr-x 7 myuser myuser 4096 Aug 17 12:55 /home/myuser
drwx------ 3 myuser myuser 4096 Aug 17 13:24 /home/myuser/.ssh
drw------- 2 myuser myuser 4.0K Aug 17 13:23 /home/myuser/.ssh/authorized_keys
-rw------- 1 myuser myuser  396 Aug 17 13:17 /home/myuser/.ssh/authorized_keys/id_rsa.pub

Ich habe den Debug-Modus auf ssh gestartet und Folgendes erhalten:

debug1: userauth-request for user myuser service ssh-connection method publickey
debug1: attempt 1 failures 0
debug1: test whether pkalg/pkblob are acceptable
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: temporarily_use_uid: 1000/1000 (e=0/0)
debug1: trying public key file /home/myuser/.ssh/authorized_keys
User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file
debug1: restore_uid: 0/0
Failed publickey for myuser from 10.1.1.1 port 50710 ssh2

Ich weiß nicht, was ich sonst noch überprüfen soll. Ich habe SELinux oder so nicht eingerichtet. Irgendwelche Ideen wären sehr dankbar.

Tacotuesday
quelle

Antworten:

15

Das Problem ist:

User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file

Anscheinend haben Sie ein Verzeichnis mit dem Namen erstellt authorized_keysund alle Ihre Schlüsseldateien darin abgelegt. Deshalb funktioniert es nicht. authorized_keysist als reguläre Datei gedacht, und Sie können alle Ihre Schlüssel eingeben ~/.ssh.

Michael Hampton
quelle
7

Das Hauptproblem ist, dass es ~/.ssh/authorized_keyssich nicht um ein Verzeichnis handeln sollte. Es ist eine Textdatei, die die öffentlichen Schlüssel enthält, die eine Zeile nach der anderen angehängt werden.

Da Sie nur einen Schlüssel haben, verschieben Sie die ~/.ssh/authorized_keys/id_rsa.pubDatei einfach an einen temporären Speicherort, löschen Sie das ~/.ssh/authorized_keysVerzeichnis und verschieben Sie die Datei mit dem öffentlichen Schlüssel zurück, indem Sie sie in umbenennen ~/.ssh/authorized_keys. Sie sollten jetzt in der Lage sein, eine Verbindung herzustellen, ohne ein Anmeldekennwort zu verwenden.

Philippe Gauthier
quelle