Problème de clé ssh/putty - Server refused our key

Hello, pour le droits de la clé privé… oui, évidemment. Tu as raison.

Pour le message que je recois : “Server refused our key” (je le connais par coeur… :smt003).

Quand j’ouvre Putty, je vais dans “Session” et je choisis… ma session (mdr - jusque là, ca va), et avant d’ouvrir ladite session, je selectionne “SSH”, “auth”, et j’indique le chemin vers ma clé. Je décoche “Attempt authentification using pageant”, n’utilisant pas le Pageant en question (mais que je le coche ou non ne change rien à l’erreur que je reçois en retour).

Au niveau des fichiers de log, quand je fais un grep ssh * , je ne vois rien de bien spécial.

PS. :wink: Pour répondre à ta dernière remarque, en fait, ce serveur là est perso. Je travaille dessus via ssh, le serveur étant connecté sur switch à la livebox. De là j’en prends le contrôle dans mon réseau. J’y ai mis un vsftp (qui fonctionne maintenant ahahah - pardon, mais j’avais fait une erreur idiote qui m’a valu quelques déboires et l’ouverture d’un sujet ici… ) et me suis paramétré un accès de façon à pouvoir bosser dessus de l’extérieur (très pratique). Autrement dit, je n’ai pas d’écran, de clavier ou de souris pour ce serveur (sauf en cas de pb… ce qui m’oblige à rapatrier la bête dans mon bureau et, du coup à faire un peu de sport… :smt003 :smt003 ). Tout se passe à distance, en terminal.

Rgs,
Chris

Et ton utilisateur putty est bien le même que celui Linux, et dans lequel (~/.ssh/) tu as mis la clef publique ?
Je ne comprend pas trop ce qui bloque, si tu suis les deux/trois choses à faire. Je l’ai encore refait ce matin sans problème pour regénérer les clefs suite à la mise à jour OpenSSH.

mmm qu’entends-tu par “mon utilisateur putty”? En substance, je me connecte en tant que chrisAubin@mamachine - user présent dans le système de ma linux. Mais mon user sur mon windows, ce doit être “christian”.

Tu veux dire qu’il faut que le user de ma windows doit être le même que celui qui est mentionné dans la conf’ de mon serveur? Autrement dit, si je me loguais, d’abord en tant que christian sur ma machine windows, par exemple, puis, de là, si je me connecte en tant que “christian” sur mon serveur, via putty (et à supposer que j’ai donné l’autorisation au user “christian” de se connecter en ssh), ca fonctionnerait mieux?

Cordialement,
chris

Il est facile de voir ce qui se passe, regarde dans /var/log/auth.log de ton serveur.

mmm intéressant.

Hum… je ne vois rien qui pourrait correspondre à une pb propre à une connexion ssh.

Pour tester, je me suis amusé à tenter une connexion avec une clé tout à fait valable (je l’utilise tous les jours) mais utilisée pour se connecter aux serveurs de ma boite. Evidemment (et heureusement !) la connexion n’était pas possible… Mais ce qui m’intéressait, c’était de voir si cet echec serait reporté dans les logs. Je fais le test à 16:17

J’obtiens (TRES logiquement) :

Using username “chrisAUBIN”.
Server refused our key
chrisAUBIN@thisonador.homeftp.org’s password:

Si je fais un tail sur le fichier auth.log, sur l’heure qui nous intéresse, j’obtiens :
May 19 16:17:01 thisonador CRON[18323]: (pam_unix) session opened for user root by (uid=0)
May 19 16:17:01 thisonador CRON[18323]: (pam_unix) session closed for user root

Et rien d’autre.
Pour tester avec la vraie clé, il faudra attendre ce soir… snif.

En fait je m’aperçois - le hasard - que j’ai fait ma tentative à 17. Hors, d’après les logs, on dirait que j’ai une cron qui tourne toutes les heures à xx heures 17 mm. Perso, je n’ai jamais lancé de cron à cette heure là… du moins que je me souvienne. je vais chercher ce que c’est mais du coup ce que je dis ci-dessus n’est pas vrai.

Si je refais la même chose 5 mm plus tard : je n’ai rien d’indiqué dans les logs! Donc ce que j’ai indiqué plus haut est bien le résultat d’un Cron qui n’a rien à voir avec ma connexion. Du reste, c’est “root” qui semble se connecter. C’est zarbe : j’ai interdis à root de pouvoir se connecter en ssh. Aurais-je mal compris quelque chose?

Je vais revérifier tout à l’heure, sans doute vers les 20h00, avec la clé que j’ai créé. Ce sera plus probant…

En tout cas, dans les logs actuels, je n’ai pas de mention “failed” hormis en “su” (j’avais loupé mon code). C’est vraiment space : j’ai fait des tentatives de connexions avec la clé privée, hier. Et elles n’apparaissent nulle part dans auth.log. Les connexions qui apparaissent dans le auth.log sont toutes celles qui ont été faite par mot de passe.

Thx,
Chris

Voilà ce que donnent des logs:

[quote]May 12 03:59:14 cerbere sshd[11218]: Illegal user thisuserdoesnotexists from 213.186.56.83
May 12 03:59:15 cerbere PAM_unix[11221]: authentication failure; (uid=0) -> unknown for ssh service
May 12 03:59:16 cerbere sshd[11218]: error: PAM: Authentication service cannot retrieve authentication info. for illegal user thisuserdoesnotexists from ns2584.ovh.net
May 12 03:59:16 cerbere sshd[11218]: Failed keyboard-interactive/pam for illegal user thisuserdoesnotexists from 213.186.56.83 port 59876 ssh2
May 12 03:59:40 cerbere sshd[11222]: Illegal user a’marie from 85.119.157.6
May 12 03:59:40 cerbere PAM_unix[11225]: authentication failure; (uid=0) -> unknown for ssh service
May 12 03:59:42 cerbere sshd[11222]: error: PAM: Authentication service cannot retrieve authentication info. for illegal user a’marie from factory-server.de
May 12 03:59:42 cerbere sshd[11222]: Failed keyboard-interactive/pam for illegal user a’marie from 85.119.157.6 port 34172 ssh2
May 12 04:00:20 cerbere sshd[11547]: Illegal user a’marie from 200.62.177.91
May 12 04:00:21 cerbere PAM_unix[11617]: authentication failure; (uid=0) -> unknown for ssh service
May 12 04:00:23 cerbere sshd[11547]: error: PAM: Authentication service cannot retrieve authentication info. for illegal user a’marie from mail.moldes.com.pe
May 12 04:00:23 cerbere sshd[11547]: Failed keyboard-interactive/pam for illegal user a’marie from 200.62.177.91 port 44892 ssh2
May 12 04:00:51 cerbere sshd[12563]: Illegal user aadi from 81.206.76.117
[…]
May 19 13:39:06 cerbere PAM_unix[29946]: (ssh) session opened for user francois by (uid=0)
May 19 13:50:00 cerbere sshd[30741]: Accepted publickey for francois from 192.168.1.245 port 41546 ssh2
May 19 13:50:00 cerbere PAM_unix[30743]: (ssh) session opened for user francois by (uid=0)
May 19 14:21:05 cerbere PAM_unix[29946]: (ssh) session closed for user francois
May 19 15:03:47 cerbere PAM_unix[30743]: (ssh) session closed for user francois
May 19 17:22:23 cerbere sshd[11127]: Accepted publickey for francois from 192.168.1.245 port 56129 ssh2
May 19 17:22:23 cerbere PAM_unix[11129]: (ssh) session opened for user francois by (uid=0)
[/quote]
Dans le dernier cas, j’ai modifié la clef, si la clef n’est pas accepté, il se rabat sur le mot de passe et donc l’authentification n’échoue pas encore, ça n’est qu’après, lorsque le mot de passe est faux que ça apparait dans les logs.

Ok, je me suis logué. Automatiquement, j’ai le message comme quoi le serveur refuse la clé. Il me propose donc le mot de passe (normal… du moins tant que ssh est paramétré pour ça, bien sûr). Je balance des mots de passe bidon, à plusieurs reprises et je regarde les logs.

J’ai ceci :

Multipass:/var/log# tail auth.log
May 19 20:17:01 thisonador CRON[18917]: (pam_unix) session closed for user root
May 19 20:57:28 thisonador sshd[19020]: Accepted password for chrisAUBIN from 192.168.1.11 port 2500 ssh2
May 19 20:57:28 thisonador sshd[19022]: (pam_unix) session opened for user chrisAUBIN by (uid=0)
May 19 20:57:44 thisonador su[19026]: Successful su for root by chrisAUBIN
May 19 20:57:44 thisonador su[19026]: + pts/0 chrisAUBIN:root
May 19 20:57:44 thisonador su[19026]: (pam_unix) session opened for user root by (uid=1015)
May 19 20:58:36 thisonador sshd[19016]: fatal: Timeout before authentication for 192.168.1.11
May 19 20:58:50 thisonador sshd[19033]: (pam_unix) authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.1.11 user=chrisAUBIN
May 19 20:58:52 thisonador sshd[19033]: Failed password for chrisAUBIN_AfpA2008%1974B1974 from 192.168.1.11 port 2501 ssh2
May 19 20:59:03 thisonador last message repeated 2 times

Je n’ai pas le même genre de message… notamment au sujet de PAM… mmmm… C’est bizarre. J’ai peut-être loupé une config’? Je ne connaissais pas PAM avant de commencer à étudier SSH.

Rgs,
Chris

C’est quoi ce blabla dans le login user ? _AfpA2008%1974B1974 ?
J’ai regardé mes logs putty, l’user n’est pas transformé de la sorte. A priori ton “user” véhiculé lors de la connexion n’est pas bon.
Vérifie ton paramétrage putty au niveau du login de connexion. (pas de putty sous la main pour vérifier où c’est là…)

Nan nan, tkt… Le blabla auquel tu fais allusion est la moitié du login complet que j’utilise pour me loguer en ssh. Au départ, j’utilisais un autre login, à savoir mon prénom, pour me loguer en ssh. Mon prénom tout simple. Le prb était toutefois le même, aussi vraiment je ne crois pas que le problème se situe là.
Je l’ai ensuite changé quand je me suis ouvert une entrée sur l’extérieur. Bon… en fait, ça ne sert à rien et je le changerai pour le rendre un peu plus buvable.

Mais je pense le faire quand j’aurais capté ou est le pb, ici (histoire de ne pas mélanger toutes les manoeuvres à la fois).

Pour explication, je l’ai raccourci ici, dans les messages que je laisse sur le forum, pour vous pour des raisons de lisibilité. J’ai oublié un bout, apparemment. Je ne crois pas qu’il y ait un rapport avec le problème (à priori, en tout cas).

Pour résumer, quand je me logue j’utilise donc chrisAubin_AfpA2008%1974B1974@mamachine. Le home du user est bien à l’endroit tel que je te l’ai dit : /chrisAubin. Son .ssh s’y touve. Il n’y a pas d’erreur quand je fais un pwck ou un grpck (des commandes qui me semblent assez peu utilisées, bizarement. Elles sont drôlement pratiques, pourtant). Tout me semble nickel de ce côté là.

Du reste, techniquement je ne crois pas qu’il y ait obligation de faire en sorte que le répertoire de connexion soit spécialement un répertoire du même nom que celui de l’utilisateur. Toto n’est pas obligé de pointer son nez dans le répertoire toto, n’est ce pas? Il peut entrer dans le système par le répertoire titi…

Avant que tu ne me poses la question, je te le confirme par anticipation, le user en question est bien propriétaire du répertoire /chrisAUBIN. Donc, là aussi, pas de pb. Ce n’est peut-être pas très courant comme configuration, je te l’accorde totalement, mais “ce n’est pas sale”… ( :smt003 :smt003 )

Donc pour des raisons de lisibilité, pour vous, tu peux continuer de considérer que le login est chrisAUBIN.

Dsl… Je voulais éviter cette confusion, justement.

Thx,
Chris

Dans ce cas pourquoi il y a un login successful juste avant avec chrisAUBIN seul???
As tu essayé d’une machine linux avec un bon vieux ssh avant de le faire avec putty?

Oui même remarque que fran.b, on ne peut pas continuer à vouloir t’aider en “considérant” que ton login est bon si ce n’est pas le cas.
Je doute fort que tu aies plusieurs logins commençant par chrisAUBIN, ayant plusieurs home différents avec des couples de clefs bien là où il le faut.
Vérifie dans Putty la section “connection + data + auto-login username” pour qu’il y ait bien chrisAUBIN.

Ach!

Comme je disais, pour éviter que vous ayez des lignes de type chrisAUBINfblablablabla, j’ai enlevé le blablabla des messages que vous voyez. Pour une question de confort.

Ok, je vous propose un truc, car je vois que c’est destabilisant:

Je vais me créer un user “normal”. Avec un répertoire dans /home tout classique, et tous les droits qui vont bien et un accès ssh. Je refais la manoeuvre ssh-keygen and cie. Et je vous montre exactement, pas à pas, le résultat, y compris au niveau des logs.

Ce sera bien plus clair pour tout le monde :slightly_smiling:

Désolé, vraiment je ne voulais pas vous embrouiller…

Thx,
Christian

Un gag fréquent, comment as tu déposé ta clef dans le fichier authorized_keys, elle doit être sur une seule ligne et souvent un copier/coller insère des retours chariots non désirés. Ce genre de gag m’a fait perdre une heure il y a peu…

Opppsss ! Je sélectionne et je colle… je devrais faire “cat >>…” tu as raison, si ça se trouve, le problème vient de là!

Je viens de me recréer un utilisateur au propre. Je vais me recréer les clés.

Thx,
Chris

Bien!!!

Alors voilà :

Je me suis créé un nouveau login : Christian_Ssh%
Son répertoire de connexion : /home/Christian_Ssh%

Ses droitsz sur son répertoire de connexion : drwxr-xr-x 2 Christian_Ssh% Christian_Ssh% 4096 2008-05-20 09:59 Christian_Ssh%

Ses droits sur le répertoire .ssh, situé dans /home/Christian_Ssh%

drwx------ 2 Christian_Ssh% Christian_Ssh% 4096 2008-05-20 10:19 .ssh

Ses droits sur le fichier authorized_keys :
-rw------- 1 Christian_Ssh% Christian_Ssh% 0 2008-05-20 10:19 authorized_keys

Le .ssh est en 700, authorized_keys est en 600.

Multipass:/home/Christian_Ssh%# ssh-keygen -t rsa -b 1024
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /home/Christian_Ssh%/.ssh/id_rsa
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/Christian_Ssh%/.ssh/id_rsa.
Your public key has been saved in /home/Christian_Ssh%/.ssh/id_rsa.pub.
The key fingerprint is:
79:11:8f:8a:8a:62:46:24:0c:d2:cf:05:83:fd:0e:4b root@Multipass

Multipass:/home/Christian_Ssh%/.ssh# cat id_rsa.pub >> authorized_keys
(copie vérifiée : exécutée).

J’effectue la conversion.
J’importe la clé, je l’ouvre après avoir entré la passphrase et j’enregistre en .ppk sous le nom de

mykey.SSH-2 RSA est coché dans Putty.

Je teste :
session avec mon user, ai bien sûr ajouté dans auth/ssh l’emplacement du fichier et décoché “Attempt authentification using Pageant”.
Résultat :

Using username “Christian_Ssh%”.
Server refused our key
Christian_Ssh%@thisonador.homeftp.org’s password:

Je reteste avec une clé dont “key comment” est vide.
Le résultat est le même.

Dans mon .ssh, j’ai toujours mon authorized_keys et mes deux fichiers générés (id_rsa et id_rsa.pub). A priori, ca ne pose pas d’interférence, pour ainsi dire.

Le .ssh et le fichier authorized_keys ne sont pas créé en même temps que le user (je le dis au cas où). Je crois donc les créer à la mano, avant d’y poser les bons droits.

Aucune incohérence apparente si l’on effetue :
Multipass:/home/Christian_Ssh%/.ssh# pwck
Multipass:/home/Christian_Ssh%/.ssh# grpck
Multipass:/home/Christian_Ssh%/.ssh#

Je suppose qu’en faisant le “cat”, je ne devrais pas avoir le problème des retour chariot intempestif.

Ce que j’ai en log :

May 20 11:17:01 thisonador CRON[21445]: (pam_unix) session opened for user root by (uid=0)
May 20 11:17:01 thisonador CRON[21445]: (pam_unix) session closed for user root
May 20 11:22:41 thisonador sshd[21475]: Failed password for Christian_Ssh% from 195.6.147.21 port 15006 ssh2

Ce qui m’inquiète, c’est que j’ai fait quelques tentatives de connexions, à l’instant, avec une clé privée, donc (que j’ai crée à l’instant - cf ci-dessus). Hors, en guise de message d’erreur, je n’ai que la dernière ligne…

:frowning:

Voilà, au moins en tout cas, on part sur de bases clairement saines.
Thx,
Chris

Su tu as une passphrase à ta clef, je ne pense pas que tu puisses te connecter en mode automatique… :unamused: C’est un peu logique non, sinon à quoi servirait la passphrase ?

As-tu essayé sans passphrase ?

mmmmm Je ne suis pas sûr de bien interpréter ta question. Au travail, quand j’ouvre ma connexion ssh, ma clé privée est automatiquement reconnue et, cependant, je dois entrer une passphrase. C’est un mot de passe comme un autre, mais encodé dans les clés.

Cependant, évidemment, je peux tenter le coup.

Je fais l’essai et je te remonte le résultat.

Thx,
Chris

mmmm Créer un jeu de clés sans la passphrase m’est refusé.

Je peux déconnecter l’obligation du mot de passe dans sshd_config, par contre. Mais, ainsi, j’obtiens pour résultat :

Using username “Christian_Ssh%”.
Server refused our key

Je remets ici mon fichier de configuration, pour sshd_config (je vais le revérifier) :
Port 12422
Protocol 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
UsePrivilegeSeparation yes
KeyRegenerationInterval 3600
ServerKeyBits 768
SyslogFacility AUTH
LogLevel INFO
LoginGraceTime 120
StrictModes yes
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
IgnoreRhosts yes
RhostsRSAAuthentication no
HostbasedAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
PasswordAuthentication yes
AllowUsers Christian_Ssh%
X11Forwarding yes
X11DisplayOffset 10
PrintMotd no
PrintLastLog yes
TCPKeepAlive yes
UsePAM yes

J’y ai retiré les indications en anglais (ps. Pour le moment, j’ai remis “PasswordAuthentication yes”

mmm j’ai essayé ta commande, Fran. Le serveur me demande quand même une passphrase.

J’ai donc dû en créer une (sinon, il ne veut pas), et fait le reste de la manoeuvre comme d’hab’ :

Using username “Christian_Ssh%”.
Server refused our key
Christian_Ssh%@thisonador.homeftp.org’s password:

J’ai donc toujours ce résultat… Damn’it!

Et dans les logs,je n’ai tjs rien de spécial :
May 21 13:35:52 thisonador su[25545]: (pam_unix) authentication failure; logname= uid=1017 euid=0 tty=pts/0 ruser=Christian_Ssh% rhost= user=root
May 21 13:35:54 thisonador su[25545]: pam_authenticate: Authentication failure
May 21 13:35:54 thisonador su[25545]: FAILED su for root by Christian_Ssh%
May 21 13:35:54 thisonador su[25545]: - pts/0 Christian_Ssh%:root
May 21 13:36:31 thisonador su[25549]: Successful su for root by Christian_Ssh%
May 21 13:36:31 thisonador su[25549]: + pts/0 Christian_Ssh%:root
May 21 13:36:31 thisonador su[25549]: (pam_unix) session opened for user root by (uid=1017)
May 21 13:52:08 thisonador sshd[25635]: fatal: Timeout before authentication for

Par rapport à ma configuration (ssh), avez-vous des différences? Vraiment, je sèche. Je me dis que ça peut être un pb de compatibilité entre ssh et le format putty mais… je fais la conversion de la clé privée en .ppk, comme indiqué dans tous les tutoriaux. Je vais donc (essayer) de relire les infos que tu m’as logué, fran, au sujet du tutorial sur le forum. Et peut-être refaire une tentative avec puttygen, d’abord en ligne de commmande, puis, si ça ne marche pas, via le client sur Win (c’est encore la faute à Bill portes, ça! LOL).

Thx,
Chris