GNU/Linux >> Tutoriales Linux >  >> Linux

¿Vsftpd falla en la autenticación de Pam?

Al mover una configuración vsftpd probada y verdadera a un nuevo servidor con Fedora 16, me encontré con un problema. Todo parece ir como debería, pero la autenticación del usuario falla. No puedo encontrar ninguna entrada en ningún registro que indique lo que sucedió.

Aquí está el archivo de configuración completo:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=0
data_connection_timeout=0
nopriv_user=ftpsecure
connect_from_port_20=YES
listen=YES
chroot_local_user=YES
chroot_list_enable=NO
ls_recurse_enable=YES
listen_ipv6=NO

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

FTP me desafía por un nombre de usuario y contraseña, los proporciono, Inicio de sesión incorrecto. He verificado que este usuario puede iniciar sesión desde ssh. Algo está mal con pam_service .

Anónimo (si se cambia a permitido) parece funcionar bien.

SELinux está deshabilitado.

Ftpsecure parece estar bien configurado... ¡Estoy completamente perdido!

Aquí están los archivos de registro que examiné sin éxito:

/var/log/messages
/var/log/xferlog      #empty
/var/log/vsftpd.log   #empty
/var/log/secure

Encontré algo en /var/log/audit/audit.log :

type=USER_AUTH msg=audit(1335632253.332:18486): user pid=19528 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:authentication acct="kate" exe="/usr/sbin/vsftpd" hostname=ip68-5-219-23.oc.oc.cox.net addr=68.5.219.23 terminal=ftp res=failed'

Tal vez debería mirar /var/log/wtf-is-wrong.help 🙂

Más información:

/etc/pam.d/vsftpd se ve así:

#%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      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth

Respuesta aceptada:

Uf. Resolví el problema. Equivale a una configuración pero dentro de /etc/pam.d/vsftpd

Debido a que las sesiones ssh tuvieron éxito mientras que las sesiones ftp fallaron, fui a

/etc/pam.d/vsftpd, eliminó todo lo que estaba allí y en su lugar colocó el contenido de ./sshd para que coincida con las reglas de forma precisa. ¡Todo funcionó!

Por método de eliminación, descubrí que la línea ofensiva era:

    auth       required     pam_shells.so

Eliminarlo me permite continuar.

Resulta que "pam_shells es un módulo PAM que solo permite el acceso al sistema si el shell del usuario aparece en /etc/shells". Miré allí y efectivamente, sin bash, sin nada. En mi opinión, este es un error en la configuración de vsftpd, ya que en ninguna parte de la documentación aparece editando /etc/shells. Por lo tanto, la instalación y las instrucciones predeterminadas no funcionan como se indica.

Buscaré dónde puedo enviar el error ahora.


Linux
  1. Obligar a los usuarios de pam a usar solo FTPS y bloquear SFTP/SSH

  2. ¿Buscar el archivo de registro de Firefox?

  3. archivos de registro de Linux

  4. Servicio de sistema operativo Linux 'syslog'

  5. Autenticación PAM para una aplicación heredada

Anatomía de un archivo de configuración de módulos de autenticación conectables (PAM) de Linux

Una introducción a los módulos de autenticación conectables (PAM) en Linux

Cómo mejorar la seguridad de los usuarios de Linux con la configuración del módulo de autenticación conectable

Instalación Grafana Loki

Autenticación PAM

chsh:la autenticación PAM falló