我正在尝试在Amazon Cloud Server上设置FTP,但没有运气。我在网上搜索,没有具体步骤如何做到这一点。
我找到了要运行的命令:
$ yum install vsftpd
$ ec2-authorize default -p 20-21
$ ec2-authorize default -p 1024-1048
$ vi /etc/vsftpd/vsftpd.conf
#<em>---Add following lines at the end of file---</em>
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=<Public IP of your instance>
$ /etc/init.d/vsftpd restart
但我不知道在哪里写。
也许值得一提的是clone45的回答:
Fixing Write Permissions for Chrooted FTP Users in vsftpd
Ubuntu 12.04 Precise附带的vsftpd版本默认情况下不允许chrooted本地用户写入。默认情况下,你会在/etc/vsftpd.conf中有这个:
chroot_local_user=YES write_enable=YES
为了允许本地用户编写,您需要添加以下参数:
allow_writeable_chroot=YES
注意:写入权限的问题可能会显示为以下FileZilla错误:
Error: GnuTLS error -15: An unexpected TLS packet was received.
Error: Could not connect to server
参考文献: Fixing Write Permissions for Chrooted FTP Users in vsftpd VSFTPd stopped working after update
万一你得到530密码不正确
需要再做一步
在文件/ etc / shells中
添加以下行
/斌/假
FileZilla是使用Amazon Cloud进行设置的优秀FTP工具。
您只需要执行这些步骤一次,之后它会将内容上传到相同的IP地址和相同的站点。
如果您有一个允许20-21和1024-1048范围的iptables防火墙,请不要忘记更新。
从/ etc / sysconfig / iptables执行此操作
添加这样的行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20:21 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1024:1048 -j ACCEPT
并使用以下命令重新启动iptables:
sudo service iptables restart
我简化了clone45步骤:
像他提到的那样打开端口
sudo su
sudo yum install vsftpd
echo -n "Public IP of your instance: " && read publicip
echo -e "anonymous_enable=NO\npasv_enable=YES\npasv_min_port=1024\npasv_max_port=1048\npasv_address=$publicip\nchroot_local_user=YES" >> /etc/vsftpd/vsftpd.conf
sudo /etc/init.d/vsftpd restart
我一直遵循clone45的答案直到最后。一篇好文章!由于我需要FTP访问来安装我的wordpress网站之一的插件,我将主目录更改为/ var / www / mysitename。然后我继续将我的ftp用户添加到apache(或www)组,如下所示:
sudo usermod -a -G apache myftpuser
在此之后,我仍然在WP的插件安装页面上看到了这个错误:“无法找到WordPress内容目录(wp-content)”。在wp.org问答环节中搜索并找到了这个解决方案:https://wordpress.org/support/topic/unable-to-locate-wordpress-content-directory-wp-content并将以下内容添加到wp-config.php的末尾:
if(is_admin()) {
add_filter('filesystem_method', create_function('$a', 'return "direct";' ));
define( 'FS_CHMOD_DIR', 0751 );
}
在此之后我的WP插件成功安装。