SSH de PuTTy à Debian «Les clés autorisées ne sont pas un fichier normal» Erreur

9

Je ne peux pas me connecter depuis mon ordinateur Windows 7 utilisant PuTTy à un serveur Debian Squeeze nouvellement configuré en utilisant l'authentification par clé SSH RSA.

J'obtiens cette erreur lors de l'exécution de SSH en mode débogage: User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file


Ce que j'ai fait jusqu'à présent:

  1. ssh-keygen -t rsa
  2. Définissez la phrase secrète.
  3. Copié le fichier id_rsa.pub dans ~/.ssh/authorized_keys
  4. Copié l'id_rsa dans un fichier texte sur ma machine Windows 7
  5. Importé la clé dans puttygen.exeet converti en un .ppkfichier de clé privée.
  6. Chargé ce fichier de clé privée dans pageant.exeet vérifié que les méthodes Connexion-> SSH-> Auth Authetication avaient coché «Tentative d'authentification à l'aide de Pageant».
  7. Chargé le profil.

Sur la base de la FAQ d'OpenSSH.org , j'ai modifié les autorisations comme suit:

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

J'ai commencé le mode débogage sur ssh, et j'ai obtenu ce qui suit:

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

Je ne sais plus quoi vérifier. Je n'ai pas configuré SELinux ou quoi que ce soit. Toutes les idées seraient très appréciées.

mardi
la source

Réponses:

15

Le problème est:

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

Il semble que vous ayez créé un répertoire nommé authorized_keyset y ayez placé tous vos fichiers de clés. C'est pourquoi ça ne marche pas. authorized_keysest censé être un fichier normal, et vous pouvez y mettre toutes vos clés ~/.ssh.

Michael Hampton
la source
7

Le principal problème est qu'il ~/.ssh/authorized_keysne doit pas s'agir d'un répertoire. Il s'agit d'un fichier texte qui contient les clés publiques ajoutées une ligne après l'autre.

Comme vous n'avez qu'une seule clé, déplacez simplement le ~/.ssh/authorized_keys/id_rsa.pubfichier vers un emplacement temporaire, supprimez le ~/.ssh/authorized_keysrépertoire, puis reculez le fichier de clé publique en le renommant ~/.ssh/authorized_keys. Vous devriez maintenant pouvoir vous connecter sans utiliser de mot de passe de connexion.

Philippe Gauthier
la source