VSFTPD 12.04 配置问题

VSFTPD 12.04 配置问题

所以我今天将我的 Ubuntu Server 升级到 12.04 LTS,现在 VSFTPD 无法工作。我认为这与此有关VSFTPd 在更新后停止工作

但是,与该帖子中的提问者不同,我没有收到任何错误消息。当我登录时,我收到

220 (vsFTPd 2.3.5)
331 Please specify the password.
Password: 
530 Login incorrect.
ftp: Login failed

我知道密码是正确的,并且我尝试了多个用户。vsftpd.log 除了显示以下内容外没有显示其他内容:

Tue May  1 15:19:48 2012 [pid 2] CONNECT: Client "192.168.1.133"
Tue May  1 15:19:53 2012 [pid 1] [USERNAME] FAIL LOGIN: Client "192.168.1.133"

Syslog 没有显示任何内容。这是我的 VSFTPD.conf(大部分是默认的):

listen=YES
anonymous_enable=NO
local_enable=YES
check_shell=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

我尝试了上一个问题中提到的命令,但没有成功。

sudo chmod a-w /home/user

谢谢,我感谢您所有的帮助!

答案1

在 vsftpd.conf 中

进行以下更改:pam_service_name=FTP

保存更改并重新启动 ftp 服务器。

答案2

您可能遇到此原因的原因有多种。

防火墙-->>Tcp_wrapper-->>PAM-->>SElinux-->>FTPService-->>文件。

  1. 首先检查 /etc/vsftpd/ftpusers /etc/vsftpd/user_list 中给定的用户是否被阻止

  2. 检查 SElinux 上下文或布尔值是否相同。

  3. 检查 PAM 目录文件。/etc/pam.d/vsftpd

身份验证需要 pam_shells.so

如果用户没有像 /etc/shells 中那样所需的 shell,那么它将给出相同的错误,检查 getent passwd 用户名是否与 /etc/shells 中给定的 shell 匹配。

答案3

首先尝试通过 Firefox 或浏览器登录 FTP,这样您肯定会得到有关无法登录原因的答复。

这只是为了确认它是否是登录凭据本身。

答案4

如果运行 amd64 内核,则需要将以下内容添加到/etc/vsftpd/vsftpd.conf

seccomp_sandbox=NO

相关内容