Forum Linux.debian/ubuntu SSH et connection automatique

Posté par  .
Étiquettes :
0
20
août
2008
Bonjour,

État des lieux
- Soit deux serveur basé sur Debian Etch dont un installé et hébergé par OVH.
- Soit, exactement la même configuration (/etc/ssh/sshd_config et /etc/ssh/ssh_config) des services SSH sur les deux machines.
- Soit, la réalisation de la même manipulation sur les deux machines visant à créer des clefs RSA pour un utilisateur et à les transmettre à son équivalent sur la machine distante (uniquement la clef publique cela va de soit):

Depuis Poste1:

$ cd ~/.ssh
$ ssh-keygen -t rsa #(sans passphrase)

Depuis Poste2:

$ scp poste1:/home/user/.ssh/id_rsa.pub ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys

Bilan:
- depuis le serveur hébergé par mes soins, il est possible au dit utilisateur de se connecter sans entrer de mot de passe vers le serveur hébergé par OVH.
- depuis le serveur hébergé par OVH, une tentative de connexion sur l'autre serveur nécessite le mot de passe de l'utilisateur...

Question
Quel peut être le paramètre que j'omets lors de ma recherche pour trouver l'origine du problème et le résoudre?
  • # refaire

    Posté par  . Évalué à 3.

    refaire la meme manip dans l'autre sens

    tu as copié la cle publique du poste1 sur poste2
    donc tu peux te connecter dans le sens poste1 -> poste2

    si tu veux te connecter depuis poste2 vers poste1 sans mot de passe
    il suffit de prendre la cle publique de poste2 et de la copier sur poste1
    • [^] # Re: refaire

      Posté par  . Évalué à 2.

      C'est fait ;-)

      Je n'ai posté qu'une fois la manip mais je l'ai réalisée en double (une fois dans chaque sens...)
      • [^] # Re: refaire

        Posté par  . Évalué à 3.

        as tu regardé les droits du répertoire ssh (chez moi c'est 600 ou -rwx------)

        Il ne faut pas décorner les boeufs avant d'avoir semé le vent

        • [^] # Re: refaire

          Posté par  (site web personnel, Mastodon) . Évalué à 2.

          Et les droits de authorized_keys (0600) n'dans?

          La gelée de coings est une chose à ne pas avaler de travers.

        • [^] # Re: refaire

          Posté par  . Évalué à 2.

          600 des deux coté sur le dossier ~/.ssh et le authorized_keys...
          • [^] # Re: refaire

            Posté par  (site web personnel, Mastodon) . Évalué à 2.

            0600 sur le dossier?? Tu veux dire 0700?!

            La gelée de coings est une chose à ne pas avaler de travers.

            • [^] # Re: refaire

              Posté par  . Évalué à 2.

              non 0700. Il n'y a rien à rendre exécutable dans le répertoire ~/.ssh
  • # Copy-id

    Posté par  (site web personnel) . Évalué à 4.

    Revérifie que tuas bien copié les clés dans le bon sens (un espace est vite oublié dans un commande qui la mettrait en local.

    D'autre part, authorized_keys peut contenir plusieurs clés, cp n'est pas une bonne idée. Il y a beaucoup plus simple pour les 2 manip :

    poste1$ ssh-keygen -t rsa
    poste1$ ssh-copy-id poste2


    Après il te reste les logs du serveur ssh pour analyser (et l'option -v de ssh).
    • [^] # Re: Copy-id

      Posté par  . Évalué à 2.

      pampryl@abraracourcix:~/.ssh$ ssh -v pampryl@obelix
      OpenSSH_4.3p2 Debian-9etch2, OpenSSL 0.9.8c 05 Sep 2006
      debug1: Reading configuration data /etc/ssh/ssh_config
      debug1: Applying options for *
      debug1: Connecting to obelix [10.0.0.252] port 22.
      debug1: Connection established.
      debug1: identity file /home/pampryl/.ssh/identity type -1
      debug1: identity file /home/pampryl/.ssh/id_rsa type 1
      debug1: identity file /home/pampryl/.ssh/id_dsa type -1
      debug1: Remote protocol version 2.0, remote software version OpenSSH_4.7p1 Debian-8
      debug1: match: OpenSSH_4.7p1 Debian-8 pat OpenSSH*
      debug1: Enabling compatibility mode for protocol 2.0
      debug1: Local version string SSH-2.0-OpenSSH_4.3p2 Debian-9etch2
      debug1: Miscellaneous failure
      No credentials cache found

      debug1: Miscellaneous failure
      No credentials cache found

      debug1: SSH2_MSG_KEXINIT sent
      debug1: SSH2_MSG_KEXINIT received
      debug1: kex: server->client aes128-cbc hmac-md5 none
      debug1: kex: client->server aes128-cbc hmac-md5 none
      debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
      debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
      debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
      debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
      debug1: Host 'obelix' is known and matches the RSA host key.
      debug1: Found key in /home/pampryl/.ssh/known_hosts:3
      debug1: ssh_rsa_verify: signature correct
      debug1: SSH2_MSG_NEWKEYS sent
      debug1: expecting SSH2_MSG_NEWKEYS
      debug1: SSH2_MSG_NEWKEYS received
      debug1: SSH2_MSG_SERVICE_REQUEST sent
      debug1: SSH2_MSG_SERVICE_ACCEPT received
      debug1: Authentications that can continue: publickey,password
      debug1: Next authentication method: publickey
      debug1: Trying private key: /home/pampryl/.ssh/identity
      debug1: Offering public key: /home/pampryl/.ssh/id_rsa
      debug1: Authentications that can continue: publickey,password
      debug1: Trying private key: /home/pampryl/.ssh/id_dsa
      debug1: Next authentication method: password
      • [^] # Re: Copy-id

        Posté par  (site web personnel, Mastodon) . Évalué à 2.

        Tu vas avoir un procès des Éditions Albert-René avec de tels noms d'hôte!

        Sinon, essaie avec -vvv afn de voir debug2 et debug3

        La gelée de coings est une chose à ne pas avaler de travers.

        • [^] # Re: Copy-id

          Posté par  . Évalué à 2.

          pour comparaison:

          dans le sens qui ne marche pas:

          debug1: Authentications that can continue: publickey,password
          debug1: Next authentication method: publickey
          debug1: Trying private key: /home/pampryl/.ssh/identity
          debug1: Offering public key: /home/pampryl/.ssh/id_rsa
          debug2: we sent a publickey packet, wait for reply
          debug1: Authentications that can continue: publickey,password
          debug1: Trying private key: /home/pampryl/.ssh/id_dsa
          debug2: we did not send a packet, disable method
          debug1: Next authentication method: password


          dans le sens qui marche:

          debug1: Authentications that can continue: publickey,password
          debug1: Next authentication method: publickey
          debug1: Trying private key: /home/pampryl/.ssh/identity
          debug1: Offering public key: /home/pampryl/.ssh/id_rsa
          debug2: we sent a publickey packet, wait for reply
          debug1: Server accepts key: pkalg ssh-rsa blen 277
          debug2: input_userauth_pk_ok: fp e8:b3:29:63:d8:ca:45:b9:32:97:40:a0:fe:a6:25:1d
          debug1: read PEM private key done: type RSA
          debug1: Authentication succeeded (publickey).
      • [^] # Re: Copy-id

        Posté par  . Évalué à 2.

        debug1: Offering public key: /home/pampryl/.ssh/id_rsa
        debug1: Authentications that can continue: publickey,password
        debug1: Trying private key: /home/pampryl/.ssh/id_dsa
        debug1: Next authentication method: password


        La clé rsa n'a pas l'air de passer, en effet.
        L'emplacement et le nom de la clé sont bons ?
        • [^] # Re: Copy-id

          Posté par  . Évalué à 2.

          sur la cible

          pampryl@obelix:~$ ls -la /home/pampryl/.ssh/
          total 24
          drwxr-x--- 2 pampryl pampryl 4096 aoû 20 14:40 .
          drwxrwxr-x 58 pampryl pampryl 4096 aoû 20 14:46 ..
          -rw-rw-r-- 1 pampryl pampryl 819 aoû 20 14:28 authorized_keys
          -rw------- 1 pampryl pampryl 1675 aoû 20 14:40 id_rsa
          -rw-rw-r-- 1 pampryl pampryl 396 aoû 20 11:10 id_rsa.pub
          -rw------- 1 pampryl pampryl 2406 aoû 19 19:20 known_hosts

          sur le pc qui initie la connexion:

          pampryl@abraracourcix:~/.ssh$ ls -la /home/pampryl/.ssh/
          total 24
          drwxr-x--- 2 pampryl pampryl 4096 2008-08-20 11:23 .
          drwxr-xr-x 11 pampryl pampryl 4096 2008-08-20 14:38 ..
          -rw-r--r-- 1 pampryl pampryl 418 2008-08-20 11:23 authorized_keys
          -rw------- 1 pampryl pampryl 1675 2008-08-20 11:23 id_rsa
          -rw-r--r-- 1 pampryl pampryl 416 2008-08-20 11:23 id_rsa.pub
          -rw-r-xr-- 1 pampryl pampryl 1768 2008-07-18 19:17 known_hosts
          • [^] # Re: Copy-id

            Posté par  . Évalué à 2.

            euh -rw-rw-r-- 1 pampryl pampryl 819 aoû 20 14:28 authorized_keys
            je sais bien que ton groupe n'a qu'un utilisateur, mais ssh lui ne le sais pas et n'importe qui du groupe a pu rajouter ce qu'il veut donc ssh dit non
            dans le répertoire .ssh tout doit être en -rw------- il me semble

            Il ne faut pas décorner les boeufs avant d'avoir semé le vent

      • [^] # Re: Copy-id

        Posté par  (site web personnel) . Évalué à 2.


        debug1: Authentications that can continue: publickey,password
        debug1: Next authentication method: publickey
        debug1: Trying private key: /home/pampryl/.ssh/identity
        debug1: Offering public key: /home/pampryl/.ssh/id_rsa
        debug1: Authentications that can continue: publickey,password
        debug1: Trying private key: /home/pampryl/.ssh/id_dsa
        debug1: Next authentication method: password


        Clairement il y a eu une erreur lors de la copie de ta clé publique sur le serveur distant.
        • [^] # Re: Copy-id

          Posté par  . Évalué à 2.

          J'ai fait la manipulation 2, 3 fois... Essayé avec la commande ssh-copy-id, nettoyer le tout recommencer depuis la génération de la clef... rien n'y fait...
          • [^] # Re: Copy-id

            Posté par  (site web personnel) . Évalué à 3.

            La réponse doit être dans les logs du serveur, peut-être que tu as interdit l'authentification par clé genre avec une directive "PubkeyAuthentication no"
            • [^] # Re: Copy-id

              Posté par  . Évalué à 2.


              RSAAuthentication yes
              PubkeyAuthentication yes
              • [^] # Re: Copy-id

                Posté par  . Évalué à 4.

                En effet, un petit tail sur auth.log m'a donné la solution (à laquelle je n'aurais jamais pensé):

                Aug 20 16:44:30 obelix sshd[1502]: Authentication refused: bad ownership or modes for directory /home/pampryl


                Et en effet, le groupe a un droit d'écriture sur le dossier de la home...

                chmod g-w /home/pampryl/


                Et ça marche...
  • # Vert boze

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    Là où ça coince, essaie ssh -vvv user@host, tu verras plein d'info de debug.

    La gelée de coings est une chose à ne pas avaler de travers.

    • [^] # Re: Vert boze

      Posté par  . Évalué à 1.

      Il existe aussi la commande ssh-copy-id qui est bien pratique et qui évite de taper les autres commandes.
    • [^] # Re: Vert boze

      Posté par  . Évalué à 2.

      en effet, je n'y pensais pas, mais c'est bien pratique ce debug.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.