Я использую Ubuntu 12.04 LTS. Я сделал несколько небольших обновлений, используя apt. После перезагрузки vsftp перестал принимать соединения, логины пользователей системы. В журнале аутентификации я получаю следующие ошибки
Dec 22 22:03:13 helium vsftpd: PAM unable to dlopen(pam_cracklib.so): /lib/security/pam_cracklib.so: cannot open shared object file: No such file or directory
Dec 22 22:03:13 helium vsftpd: PAM adding faulty module: pam_cracklib.so
Dec 22 22:03:13 helium vsftpd: pam_unix(vsftpd:auth): check pass; user unknown
Dec 22 22:03:13 helium vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=cam rhost=192.168.1.121
Dec 22 22:03:13 helium vsftpd: pam_winbind(vsftpd:auth): getting password (0x00000388)
Dec 22 22:03:13 helium vsftpd: pam_winbind(vsftpd:auth): pam_get_item returned a password
Я закомментировал pam_cracklib.so из common-password, а затем ошибки в следующей библиотеке
Dec 22 22:08:57 helium vsftpd: PAM unable to dlopen(pam_shells.so): /lib/security/pam_shells.so: cannot open shared object file: No such file or directory
Dec 22 22:08:57 helium vsftpd: PAM adding faulty module: pam_shells.so
Dec 22 22:08:57 helium vsftpd: pam_unix(vsftpd:auth): check pass; user unknown
Dec 22 22:08:57 helium vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=cam rhost=192.168.1.120
Dec 22 22:08:57 helium vsftpd: pam_winbind(vsftpd:auth): getting password (0x00000388)
Dec 22 22:08:57 helium vsftpd: pam_winbind(vsftpd:auth): pam_get_item returned a password
Dec 22 22:09:00 helium vsftpd: PAM unable to dlopen(pam_shells.so): /lib/security/pam_shells.so: cannot open shared object file: No such file or directory
Затем я заметил, что этого каталога больше не существует / lib / security / Кажется, теперь он находится в / lib / x86_64-linux-gnu / security
Итак, я сделал символическую ссылку между ними, но затем я получаю эти ошибки
Dec 22 22:11:33 helium vsftpd: PAM unable to dlopen(pam_shells.so): /lib/security/pam_shells.so: failed to map segment from shared object: Cannot allocate memory
Dec 22 22:11:33 helium vsftpd: PAM adding faulty module: pam_shells.so
Dec 22 22:11:33 helium vsftpd: pam_unix(vsftpd:auth): check pass; user unknown
Dec 22 22:11:33 helium vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=cam rhost=192.168.1.120
Dec 22 22:11:33 helium vsftpd: pam_winbind(vsftpd:auth): getting password (0x00000388)
Dec 22 22:11:33 helium vsftpd: pam_winbind(vsftpd:auth): pam_get_item returned a password
Я сейчас бегу
Package: vsftpd
Status: install ok installed
Priority: extra
Section: net
Installed-Size: 334
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Architecture: amd64
Version: 2.3.5-1ubuntu2
Я выполнил чистку и переустановил, но все равно получаю те же ошибки.
Моя vsftp conf очень проста. Разрешить локальных пользователей и пользователей chroot.
У кого-нибудь есть идеи?
Я последовал за этот thread и использовал этот пакет deb для исправления моего экземпляра. С тех пор у меня работает. Одна вещь, которую мне нужно было сделать, - это исключить vsftpd из apt, чтобы он не возвращал его мне, пока не будет исправлена официальная.
Была точно такая же проблема. Просто скачали последнюю версию vsftpd отсюда: https://security.appspot.com/downloads/vsftpd-3.0.2.tar.gz, извлек и скомпилировал его. Затем я заменил двоичный файл в / usr / sbin новым созданным. Работает сейчас. Не уверен, что это мешает дальнейшим автоматическим обновлениям Ubuntu, но, по крайней мере, он снова работает.
Кстати, мне нужно было apt-get make, gcc и libssl-dev и изменить строку SSL в builddefs.h на: #define VSF_BUILD_SSL. Однако SSL не тестировал.