我有一个AWS EC2实例运行我托管Wordpress的Ubuntu 12.04 Web服务器。要让Wordpress更新,它要求我提供FTP凭据。我根据这篇文章设置了FTP:http://stephen-white.blogspot.co.uk/2012/05/how-to-set-up-wordpress-on-amazon-ec2_31.html
但我创建的FTP用户(ftpuser)无法登录.WP只会出现非常模糊的错误,但我尝试在OSX终端中使用FTP,这会导致“登录不正确”,但密码肯定是正确的。我可以使用普通的用户名和密码进行FTP。
这是我的vsftpd.conf文件的内容(我删除了所有注释掉的行):
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pasv_enable=YES
pasv_min_port=14000
pasv_max_port=14050
port_enable=YES
pasv_address=54.241.13.224
pasv_addr_resolve=NO
这是服务器端口的nmap:
PORT STATE SERVICE
20/tcp closed ftp-data
21/tcp open ftp
22/tcp open ssh
80/tcp open http
443/tcp closed https
14000/tcp closed unknown
/ var / www(我安装了Wordpress)文件夹归ftpuser所有,这是文件/ etc / passwd中ftpuser的条目:
ftpuser:x:1001:1001::/var/www:/sbin/nologin
我只是一个业余服务器管理员,所以还没有完全了解我在做什么。任何人都知道为什么会这样,需要做些什么?
答案 0 :(得分:0)
如果您在AWS EC2上收到以下错误消息“登录不正确”:
331请指定密码。
密码:
530登录不正确。
ftp:登录失败
使用Shell登录时出现问题。为了解决这个问题,博客文章中的以下内容之后还缺少一个步骤:
添加一个FTP用户,只允许访问WordPress文件,并提供额外的安全性>确保用户无法打开shell:
useradd ftpuser -d / var / www / html -s / sbin / nologin
添加以下内容:
将/ usr / sbin / nologin添加到/ etc / shells文件的最后一行:
$ vi / etc / shells
/ usr / sbin目录/ nologin的
尝试使用FTP客户端重新登录。这就是我在实例上的工作方式。