[Sshd] Bouhhh, j'y arriverai jamais [RESOLU]

Bouhhh, j'y arriverai jamais [RESOLU] [Sshd] - Linux et OS Alternatifs

Marsh Posté le 05-10-2002 à 17:23:09    

Salut
 
Ca fait déjà plusieurs fois que j'essaye d'installer un serveur sshd  sur une machine linux, et j'y suis jamais arrivé.
J'installe tous normalement, à partir des sources, je lance le démon, etc...Et quand je veux me connecter, je n'y arrive jamais, j'ai toujours un "Access denied".
 
Help me please.
Ma config :
 
Slakware 7.0
OpenSSH 3.1p1 (derniere version que j'ai installé)
OpenSSL 0.9.6d
 
Compilation :
./configure
make
make install
 
Après, j'ai bidouillé des trucs bizarres pour les clés, et y'a de grande chance que ca viennent de là.
 
J'ai essayé de travailler avec des How-To et cie...et j'ai pas réussit. Alors, y'a-t-il des ames charitables pour m'aider ?  :(  
 
Lelfe


Message édité par lelfe le 06-10-2002 à 00:43:50
Reply

Marsh Posté le 05-10-2002 à 17:23:09   

Reply

Marsh Posté le 05-10-2002 à 18:26:19    


  Salut
 
 C'est un peu vague, comme description d'erreur...
 
 Quelques points à vérifier :
1) quand le démon SShd est lancé, qu'est-ce qui apparait dans les logs ? (/var/log/{messages,syslog,debug}, je crois)
 
2) Que donnent :
    $>  ps -fe | grep "ssh"
    $>  netstat -nap --inet |grep "ssh"
 
3) Les clefs ont-elle été générées correctement avant le lancement du démon SSHd ? (par exemple avec ce script, en supposant que "/etc/ssh" est le répertoire de configuration et que "ssh-keygen" est dans le $PATH)
---------><------------
#!/bin/sh
  # Create host keys if needed.
  # Clef pour SSH 1
  if [ ! -r /etc/ssh/ssh_host_key ]; then
    ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N ''
  fi
  # Clef SSH 2 DSA
  if [ ! -f /etc/ssh/ssh_host_dsa_key ]; then
    ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N ''
  fi
  # Clef SSH 2 RSA
  if [ ! -f /etc/ssh/ssh_host_rsa_key ]; then
    ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
  fi
---------><------------
 
4) Dans le fichier sshd_config, sur quel port (et quelle(s) adresse(s) IP) écoute le démon ? (par défaut : port=22 et adresse IP=0.0.0.0 -toutes IP présentes-)
 
5) Toujours dans sshd_config, le root n'a peut-être pas le droit de se logguer directement (directive "PermitRootLogin no" )
 
5-bis) Un utilisateur sans mot de passe ne peut pas se logguer (directive "PermitEmptyPasswords no" )
 
6) Quel client ssh est utilisé ? (PuTTY ou un autre sous Windows, ssh sous un Unix -utiliser "ssh -v ip_hote" pour avoir plus d'infos-)
 
7) c'est juste une remarque: les versions utilisées datent un peu et posent certains problèmes de sécurité (ce n'est pas génant pour des tests sur un réseau interne non connecté à l'extérieur, mais il est néanmoins préférable de passer à OpenSSL 0.9.6g -ou au moins la 0.9.6e- et OpenSSH 3.4p1.)
 
Voila, si ça peut aider...
 
--  
Jérôme

Reply

Marsh Posté le 05-10-2002 à 22:49:41    


 
1) dans /var/log/messages :
Failed password for lelfe from 172.20.1.11 port 1109
(rien dans les autres)
 
2)
--Process:
root     25343     1  0 17:04 ?        00:00:02 /usr/local/sbin/sshd
--Socket :
tcp     0     0 0.0.0.0:22       0.0.0.0:*       LISTEN    5343/sshd
 
3) Faut recréer les clés à chaque fois ? Elles ont été crées lors de  l'install, et je les ai recrées après. Je pense que le problème doit venir de la.
 
4) Les paramètres sont tous les paramètres standard. Je n'en ai redéfini aucuns. J'ai essayé de le faire, mais ca n'avait rien changé au problème.
 
5) Je fais toujours mes tests avec des logins non-root. Je connais le problème.
 
6) J'ai essayé avec Putty et ssh sous linux, le problème est le même. C'est pour ca que je pense que le problème vient du serveur.
OpenSSH_3.1p1, SSH protocols 1.5/2.0, OpenSSL 0x0090603f
 
7) Je sais, dès que j'ai trouvé le problème, je pense que je ferai une maj...
 
J'espère que ca vous aidera à trouver d'ou vient le problème.
Mais j'avais déjà fait ces vérifs et j'avais pas été plus avancé.
Je pense que le problème doit venir des clés, car je n'y comprends rien au systems, et je ne sais pas trop ce que je dois y faire.
 
Lelfe

Reply

Marsh Posté le 05-10-2002 à 23:28:50    

Voila le lancement de Sshd, recompilé, avec la nouvelle version.
En mode débuggage maximum, avec un tests de connexion via un client Putty sous Win.
 
Est-ce que les messages sur les clés sont corrects ?
 
 

Citation :


debug1: sshd version OpenSSH_3.4p1
debug1: private host key: #0 type 0 RSA1
debug3: Not a RSA1 key file /etc/ssh/ssh_host_rsa_key.
debug1: read PEM private key done: type RSA
debug1: private host key: #1 type 1 RSA
debug3: Not a RSA1 key file /etc/ssh/ssh_host_dsa_key.
debug1: read PEM private key done: type DSA
debug1: private host key: #2 type 2 DSA
socket: Address family not supported by protocol
debug1: Bind to port 22 on 0.0.0.0.
Server listening on 0.0.0.0 port 22.
Generating 768 bit RSA key.
RSA key generation complete.

debug1: Server will not fork when running in debugging mode.
Connection from 172.20.1.11 port 1300
debug1: Client protocol version 1.5; client software version PuTTY-Release-0.52
debug1: no match: PuTTY-Release-0.52
debug1: Local version string SSH-1.99-OpenSSH_3.4p1
debug2: Network child is on pid 4286
debug3: preauth child monitor started
debug3: mm_request_receive entering
debug3: privsep user:group 70:70
debug1: Sent 768 bit server key and 1024 bit host key.
debug1: Encryption type: blowfish
debug3: mm_request_send entering: type 28
debug3: mm_request_receive_expect entering: type 29
debug3: monitor_read: checking request 28
debug3: mm_request_send entering: type 29
debug3: mm_request_receive entering
debug3: mm_ssh1_session_id entering
debug3: mm_request_send entering: type 30
debug1: Received session key; encryption turned on.
debug2: monitor_read: 28 used once, disabling now
debug3: mm_request_receive entering
debug3: monitor_read: checking request 30
debug3: mm_answer_sessid entering
debug2: monitor_read: 30 used once, disabling now
debug3: mm_request_receive entering
debug1: Installing crc compensation attack detector.
debug3: mm_getpwnamallow entering
debug3: mm_request_send entering: type 6
debug3: mm_getpwnamallow: waiting for MONITOR_ANS_PWNAM
debug3: mm_request_receive_expect entering: type 7
debug3: mm_request_receive entering
debug3: monitor_read: checking request 6
debug3: mm_answer_pwnamallow
debug3: allowed_user: today 11965 sp_expire -1 sp_lstchg 11814 sp_max 99999
debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 1
debug3: mm_request_send entering: type 7
debug1: Attempting authentication for lelfe.
debug3: mm_auth_password entering
debug3: mm_request_send entering: type 10
debug3: mm_auth_password: waiting for MONITOR_ANS_AUTHPASSWORD
debug3: mm_request_receive_expect entering: type 11
debug3: mm_request_receive entering
debug2: monitor_read: 6 used once, disabling now
debug3: mm_request_receive entering
debug3: monitor_read: checking request 10
debug3: mm_answer_authpassword: sending result 0
debug3: mm_request_send entering: type 11
Failed none for lelfe from 172.20.1.11 port 1300
debug3: mm_request_receive entering
debug3: mm_auth_password: user not authenticated
debug3: mm_auth_password entering
debug3: mm_request_send entering: type 10
debug3: mm_auth_password: waiting for MONITOR_ANS_AUTHPASSWORD
debug3: mm_request_receive_expect entering: type 11
debug3: mm_request_receive entering
debug3: monitor_read: checking request 10
debug3: mm_answer_authpassword: sending result 0
debug3: mm_request_send entering: type 11
Failed password for lelfe from 172.20.1.11 port 1300
debug3: mm_request_receive entering
debug3: mm_auth_password: user not authenticated
Failed password for lelfe from 172.20.1.11 port 1300

Reply

Marsh Posté le 05-10-2002 à 23:47:02    


 Non, effectivement, ça n'est a priori pas lié aux clefs, puisqu'on peut aller jusqu'à la phase d'authentification, mais je n'avais pas saisi que ça marchait jusque là.
 Dans ce cas, je pense à quelque chose : le "./configure", il était "tout nu" ou il y avait des options ? Si ce n'est pas le cas, il faut essayer avec "--with-md5-passwords". Je crois que ce n'est pas fait par défaut parce que sur certains Unix, les mots de passes ne sont cryptés qu'avec crypt alors que sur la plupart des distributions Linux, on peut utiliser MD5 pour crypter les mots de passe. (faut me reprendre si je me trompe)
 
 Sinon, je ne vois pas, y a pas de raisons que ce soit les modules PAM qui déconnent puisqu'il n'y en a pas sur une Slackware...
 
 Pas mieux...
 
--  
Jérôme

Reply

Marsh Posté le 06-10-2002 à 00:31:15    

CAAAA MAAAARRRRCHEEEE !!!!
 
Merci ! C'était ca !
 
Le petit --with-md5-passwords.
C'est pas activé par défaut (de base, sshd est configuré pour des mots de passes en clair ????)
 
Merci
 
Lelfe

Reply

Marsh Posté le 06-10-2002 à 12:45:40    


 Non, c'était pas en clair ; sous Unix, les mots de passe étaient cryptés par la fonction crypt() qui, si je me rappelle, doit être en gros du DES-56. On ne pouvait pas utiliser de mots de passes de plus de 8 caractères (enfin, si, mais toutes les chaines commençant par les 8 mêmes premiers caractères sont codées de la même manière).
 Avec la Glibc 2, cette fonction est étendue (ça doit aussi exister sur d'autres unix, je ne sais pas) et on peut utiliser un meilleur algorithme, basé sur du MD5 (128 bits), quand la graine commence par '$1$'. Et la longueur du mot de passe est illimitée (je n'en suis pas sur, mais il peut faire au moins 36  caractères)
 Le programme à 2 balles à la fin du message reproduit les chaines représentant les mots de passe cryptés qui sont générées dans /etc/shadow en fonction de la graine (de 2 caractères ou $1$...$)
 Plus d'infos :
  -->  man 3 crypt
 
 
>--------------------------<
/* A compiler avec -lcrypt :
     $>  gcc -o cr -lcrypt cr.c
 
   1) Utilisation de la fonction de base :
     $>  ./cr mot_de_passe 'graine'
   où graine est une chaine de 2 caractères
 
   2) Utilisation "étendue" :
     $>  ./cr mot_de_passe '$1$graine$'
   où graine est une chaine de 1 à 8 caractères (ici, faut pas oublier de mettre les cotes ', pour empêcher la substitution par le shell)
*/
#include <stdio.h>
 
main(int argc, char* argv[])
{
   printf("%s\n",crypt(argv[1],argv[2]));
}
>--------------------------<

Reply

Marsh Posté le 06-10-2002 à 15:42:20    

Ok, je connais crypt() et je connais le cryptage md5.
Mais je ne savais que les configurations étaient faites ainsi.
 
Merci pour tout
 
Lelfe  ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed