LINUX.ORG.RU
решено ФорумAdmin

vsftpd+Fedora 31: пауза после команды PASS

 ,


0

1

Поднял vsftpd на федоре. Задача состоит в том, чтобы пользователь подключался к серверу и записывал на него информацию. Поскольку список пользователей статичный и от сервера больше ничего не нужно, решил делать пользователей не виртуальными, а реальными. Однако, после подключения к серверу и ввода команды PASS соединение «подвисает» секунд на 20, и только после этого сервер даёт ответ. От того, правильный пароль подан или нет, ситуация не зависит.

Поиск, к сожалению, результатов не дал. Никто не сталкивался с таким поведением?

конфиг:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=066
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=NO
log_ftp_protocol=YES
vsftpd_log_file=/var/log/vsftpd.log

delay_successful_login=1

connect_from_port_20=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen_ipv6=NO

pam_service_name=vsftpd
userlist_enable=YES
#no_log_lock=YES
seccomp_sandbox=NO

pasv_enable=YES
pasv_min_port=21000
pasv_max_port=21010

/etc/pam/vsftpd

#%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

кусок лога с проблемой

Wed Mar 11 17:45:03 2020 [pid 2445] CONNECT: Client "192.168.1.3"
Wed Mar 11 17:45:03 2020 [pid 2445] FTP response: Client "192.168.1.3", "220 Wellcome to xyz."
Wed Mar 11 17:45:03 2020 [pid 2445] FTP command: Client "192.168.1.3", "USER js"
Wed Mar 11 17:45:03 2020 [pid 2445] [js] FTP response: Client "192.168.1.3", "331 Please specify the password."
Wed Mar 11 17:45:03 2020 [pid 2445] [js] FTP command: Client "192.168.1.3", "PASS <password>"
Wed Mar 11 17:45:26 2020 [pid 2444] [js] OK LOGIN: Client "192.168.1.3"
Wed Mar 11 17:45:27 2020 [pid 2457] [js] FTP response: Client "192.168.1.3", "230 Login successful."

«подвисает» секунд на 20

Это похоже на поиск в DNS обратной записи. Попробуйте указать параметр:

reverse_lookup_enable=NO
если его не убрали из новой версии.

Ну и посмотрите /etc/pam/vsftpd/password-auth.

А так, всегда можно strace на vsftpd, чтобы понять что происходит в эти 20 секунд — работа с сетью или просто nanosleep().

mky ★★★★★ ()
Ответ на: комментарий от mky

Это похоже на поиск в DNS обратной записи. Попробуйте указать параметр:

reverse_lookup_enable=NO

Натурально, сработало.

В документации, которую читал, было написано, что этот параметр отключён по умолчанию. Видимо, при обновлении версии это изменили.

Спасибо за помощь

rGoblin ()