J'ai un problème pour chrooté une connexion sftp sur un redhat., le ssh chrooté fonctionne mais quand je lance la commande #sftp -v test@ip_srv_redhat , je n'ai pas l'invite : sftp>, c'est figé , sans retour de messages d'erreur, le user test est bien authentifié, voici les dernières lignes d'affichage:
debug1: ssh-userauth2 successfull: method password
debug1: fd 6 setting O_NONBLOCK
debug1: fd 7 IS O_NONBLOCK
debug1: channel 0: new [client-session]
debug1: send channel open 0
debug1: Entering interactive session.
debug1: client_init id 0 arg 0
debug1: Sending subsystem: sftp
debug1: channel 0: open confirm rwindow 0 rmax 32768
rem : installation avec openssh v 1.69
Quequ'un a t il une idée du problème ?
# sftp-server ?
Posté par Olivier (site web personnel) . Évalué à 1.
J'ai eu un problème de ce genre avec mon propre serveur sftp.
Dans le /etc/ssh/sshd_config, tu as une ligne qui indique quelle est le path pour le programme de "sftp-server". Cela doit ressembler à cela :
Subsystem sftp /usr/lib/openssh/sftp-server
- Vérifie que ce fichier est bien présent dans le chroot lui-même (${CHROOT}/usr/lib/openssh/sftp-server)
- Vérifie que dans ton chroot, tu ais toutes les librairies nécessaires au programme "sftp-server". Utilise la commande "ldd" pour cela :
# ldd /usr/lib/openssh/sftp-server
linux-gate.so.1 => (0xffffe000)
libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0xb7f44000)
libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7e0a000)
libutil.so.1 => /lib/tls/i686/cmov/libutil.so.1 (0xb7e06000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7df2000)
libnsl.so.1 => /lib/tls/i686/cmov/libnsl.so.1 (0xb7ddc000)
libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb7dae000)
libselinux.so.1 => /lib/libselinux.so.1 (0xb7d99000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7d7d000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7d01000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7cdc000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb7cd7000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7cd4000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7b9f000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7b9b000)
libsepol.so.1 => /lib/libsepol.so.1 (0xb7b5e000)
/lib/ld-linux.so.2 (0xb7f65000)
Remarque : Il faut aussi lancer la commande "ldd" sur chacune des librairies utilisées (exemple : "ldd /lib/ld-linux.so.2")
Autre astuce : utilise "strace" pour regarder quelles fichiers sont recherchés par "sftp-server" lors de son lancement. C'est long et fastidieux, mais cela marche :
- repère le PID du process sshd ( -> PID_SSHD)
- lance en temps que root : stace -t -f -e open /tmp/strace_sshd.txt -p PID_SSHD
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.