我正在运行Ubuntu12.04 LTS。我用apt做了一些小的更新。重新启动后,vsftp停止接受连接,系统用户登录。在auth日志中,我得到以下错误
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,然后在下一个库中出错。
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很简单。允许本地用户和chroot用户。
有人有什么想法吗?
发布于 2014-06-16 20:50:53
我遵循这线程,并使用这个deb包来修复我的实例。从那以后一直为我工作。我必须做的一件事是将vsftpd排除在apt之外,这样它就不会恢复到我身上,直到正式的修复为止。
发布于 2012-12-28 14:24:13
也有同样的问题。刚刚从这里下载了最新的vsftpd:https://security.appspot.com/downloads/vsftpd-3.0.2.tar.gz,提取并编译了它。然后,我用新构建的/usr/sbin替换了二进制文件。现在起作用了。不确定这是否破坏了Ubuntu的任何进一步无人参与的升级,但至少它又起作用了。
顺便说一句,我需要apt-get,gcc和libssl-dev,并将builddefs.h中的SSL行更改为:# VSF_BUILD_SSL。但是没有测试SSL。
https://serverfault.com/questions/460244
复制相似问题