VSFTPD 530 Inicio de sesión incorrecto

12

Estoy tratando de configurar un servidor vsftpd en CentOS 5.3 x64. No puedo obtener ningún inicio de sesión de usuario local para trabajar. Aquí está mi vsftpd.conf:

local_enable=YES
write_enable=YES
pam_service_name=vsftpd
connect_from_port_20=YES
listen=YES
pam_service_name=vsftpd
xferlog_std_format=NO
log_ftp_protocol=YES
chroot_local_user=YES

Aquí está la salida de vsftp.log:

Mon Sep 13 23:34:44 2010 [pid 19243] CONNECT: Client "10.0.1.138"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP response: Client "10.0.1.138", "220 (vsFTPd 2.0.5)"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP command: Client "10.0.1.138", "USER dwelch"
Mon Sep 13 23:34:44 2010 [pid 19243] [dwelch] FTP response: Client "10.0.1.138", "331 Please specify the password."
Mon Sep 13 23:34:44 2010 [pid 19243] [dwelch] FTP command: Client "10.0.1.138", "PASS <password>"
Mon Sep 13 23:34:44 2010 [pid 19242] [dwelch] FAIL LOGIN: Client "10.0.1.138"
Mon Sep 13 23:34:45 2010 [pid 19243] [dwelch] FTP response: Client "10.0.1.138", "530 Login incorrect."

Y la salida del registro seguro:

Sep 13 17:40:50 intra vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=dwelch rhost=10.0.1.138  user=dwelch

Parece que pam no está autenticando al usuario. Aquí está mi archivo /etc/pam.d/vsftp:

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth       required     pam_shells.so
auth       include      system-auth
account    include      system-auth
session    include      system-auth
session    required     pam_loginuid.so

¿Alguien puede ver lo que me falta? Gracias.

dw.emplod
fuente
Me enfrenté al mismo problema, eliminé e instalé vsftpd nuevamente y funcionó bien. Sí, no es una buena solución, pero funcionó.
usef_ksa
Es curioso que estés publicando esto se encontró exactamente con el mismo problema esta semana. Por frustración, creo que también reinstalamos vsftpd y funcionó. RPM roto?
Kyle Smith

Respuestas:

17
 vi /etc/pam.d/vsftp  

comentario #auth requerido pam_shells.so

y entonces

servicio vsftpd reiniciar
pam_shells.so significa que solo los usuarios con acceso a shells deberían estar permitidos, por eso es necesario comentarlos.

themihai
fuente
Alguien sugirió usar el módulo pam_nologin . Puede ser una alternativa.
robsch
2

En mi caso, resolví el mismo problema con lo siguiente:

vi /etc/pam.d/vsftpd

línea de comentario #auth incluye system-auth

entonces

servicio vsftpd reiniciar

ferbarron
fuente
1
La respuesta puede ser correcta, pero sería más útil si incluyera alguna explicación de por qué esta línea debería comentarse.
Jenny D
0

Esta no es una respuesta adecuada, sino una estrategia que descubrí que me sirve bien:

Comience a comentar las líneas en su /etc/pam.d/vsftparchivo y vea si (y cuándo) le permite iniciar sesión. PAM está diseñado intencionalmente para informar solo el éxito o el fracaso, no la razón.

Chen Levy
fuente
0

¿solo tiene un servidor ftp en su sistema? Tuve problemas similares, y luego bajo y he aquí que examiné más a fondo el problema y había dos servidores ftp instalados que estaban en conflicto. Desinstalé uno y se solucionó el problema.

Si hiciste el 'yum install vsftpd' no deberías tener que meterte con los archivos pam (algunas cosas generalmente están mal cuando comienzas a jugar con PAM).

Si no es así, ejecute chkconfig --list | grep ftp y vea qué aparece (vea si vsftpd aparece allí; de lo contrario, puede haber algún problema con la instalación).

Y mi sugerencia final sería ejecutar una actualización yum.

Marm0t
fuente
vsftpd es un servidor FTP, no un servidor SFTP. Son protocolos diferentes.
hellomynameisjoel
0

¿El usuario tiene un shell válido? Creo que tiene que estar en la lista / etc / shells. ¿El usuario definitivamente no es el archivo / etc / vsftpd / ftpusers?

Asegúrese de que definitivamente está editando /etc/vsftpd/vsftpd.conf, eso me mordió en CentOS que estaba editando /etc/vsftpd.conf.

vsftpd puede ser un poco complicado y no es excelente para informar errores. Quédate con eso porque me estaba arrancando el pelo con un problema muy similar, siempre es una solución simple.

hellomynameisjoel
fuente
-3

vi / etc / passwd / bin / bash para su usuario

Mella
fuente