LINUX.ORG.RU
ФорумAdmin

vsftpd + pam_passwd


0

1

Настраиваю сабжевый фтп-сервер. Хочу создавать виртуальных пользователей и авторизовать их через pam_passwd.so . Делаю сначала так:

root@serverout:/etc/vsftpd# htpasswd -c ./passwd user1
New password: 
Re-type new password: 
Adding password for user user1

В /etc/vsftpd.conf пишу

pam_service_name=vsftpd
guest_enable=YES
guest_username=ftp
user_sub_token=$USER
local_root=/var/ftp/users/$USER
hide_ids=YES

а в /etc/pam.d/vsftpd

auth    required        /lib/security/pam_pwdfile.so    pwdfile /etc/vsftpd/passwd
account required        /lib/security/pam_permit.so

Но тем не менее

user@serverout:/var/ftp/users$ ftp
ftp> o localhost
Connected to serverout.
220 Welcome to FTP service
Name (localhost:user): user1
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> 

Что я мог забыть? Заранее спасибо.

★★★

А что в auth.log (или куда там auth.* логгируется)?

nnz ★★★★
()

Юзер может не логиниться по целой куче причин. Проверьте например, чтобы его шелл (даже если это /bin/false) был указан в /etc/shells. Либо же отключите проверку шеллов через /etc/pam.d/vsftpd (просто закомментить «auth required pam_shells.so»).

frozen_twilight ★★
()

Все заработало после закомментирования в /etc/pam.d/vsftpd следующих строчек:

# Standard pam includes
#@include common-account
@include common-session
#@include common-auth
#auth	required	pam_shells.so

Физический смысл этого действия до сих пор не ясен, тем более что у юзера шелл таки есть.

ovk48 ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.