2019独角兽企业重金招聘Python工程师标准>>>
1.安装 vsftpd
yum -y install vsftpd
安装前可检查是否已安装 vsftpd : rpm -qa|grep vsftpd
默认配置文件在 /etc/vsftpd/vsftpd.conf
2.配置 ftpuser
2.1创建 /product/ftpfile
cd /
sudo mkdir product
cd product/
sudo mkdir ftpfile
2.2添加用户
sudo useradd ftpuser -d /product/ftpfile -s /sbin/nologin
如果文件夹已存在,则修改ftpfile权限 (ftpuser.ftpuser 用户组.用户名)
sudo chown -R ftpuser.ftpuser ./ftpfile/
2.3重设ftpuser的密码
sudo passwd ftpuser
2.4.配置到 用户组
切换目录 cd /etc/vsftpd/
编辑文件 sudo vim chroot_list 写入新增用户 ftpuser
删除用户:sudo userdel -r ftpuser
3.修改安全策略
sudo vim /etc/selinux/config
检查节点 SELINUX=disabled 然后保存退出。
打开 ftp_home
sudo setsebool -P ftp_home_dir 1
(相当于:执行如下命令getsebool -a | grep ftp,找到 ftp_home_dir –> off 这一行,需要把后面的off
改为on,用下面这条命令改setsebool -P ftp_home_dir=1。)
4.配置 vsftpd.conf
备份: sudo mv vsftpd.conf vsftpd.conf.bak
sudo vim /etc/vsftpd/vsftpd.conf
5.设置防火墙
sudo vim /etc/sysconfig/iptables
添加到防火墙:
-A INPUT -p TCP --dport 61001:62000 -j ACCEPT
-A OUTPUT -p TCP --sport 61001:62000 -j ACCEPT
-A INPUT -p TCP --dport 20 -j ACCEPT
-A OUTPUT -p TCP --sport 20 -j ACCEPT
-A INPUT -p TCP --dport 21 -j ACCEPT
-A OUTPUT -P TCP --sport 21 -j ACCEPT
重启防火墙 sudo service iptables restart
6.重启
sudo service vsftpd restart (/etc/init.d/vsftpd restart)
执行结果里, Shutting down vsftpd 可能会失败,不过没关系,只要 Starting vsftpd for vsftpd 成功即可。
7.验证
7.1 通过浏览器
输入ftp服务器地址,输入用户名/密码 ,登陆成功。
7.2 通过ftp客户端软件
例如: cuteftp filezilla viperftp flashftp leapftp
连接ftp服务器,进行文件上传,下载验证。
8.常用命令
启动 sudo service vsftpd start
关闭 sudo service vsftpd stop
重启 sudo service vsftpd restart9.
PS: 上传下载文件夹要有足够权限,否则报 503 错误。
错误原因可能是,创建的子文件夹,没有赋予 ftpuser 权限。
虽然可以简单粗暴设置相关文件夹权限为 777,但是不安全。(sudo chmod -R 777 /product/ftpfile/img/)
只要在创建好文件夹后,把整个 ftpfile 文件夹再赋予 ftpuser 一次权限就可以了。
cd product/ftpfile/
sudo mkdir img
cd ../
sudo chown -R ftpuser.ftpuser ./ftpfile/