本文章向大家介绍CentOS7安装及配置vsftpd (FTP服务器FTP账号创建以及权限设置),主要包括CentOS7安装及配置vsftpd (FTP服务器FTP账号创建以及权限设置)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
yum -y install vsftpd
systemctl enable vsftpd
systemctl start vsftpd
1 firewall-cmd --zone=public --add-port=21/tcp --permanent
2 firewall-cmd --zone=public --add-service=ftp --permanent
3 firewall-cmd --reload
useradd -g root -d /home/wwwroot/asite -s /sbin/nologin ftpuser
注:表示新增一个ftpuser(用户名),且指定上传目录在/home/wwwroot/asite下
如果后期想变更此用户的上传目录到(/run/media/root/xxx/wwwroot/xxx.org),请使用下面的命令:
usermod -d /run/media/root/xxx/wwwroot/xxx.org ftpuser
passwd ftpuser
1 setsebool -P allow_ftpd_full_access on
2 setsebool -P ftp_home_dir on
chown -R ftpuser:root /home/wwwroot/asite
路径:vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES 改为: anonymous_enable=NO
重启 systemctl restart vsftod
启动/停止systemctl start/stop vsftod
状态 systemctl status vsftod
chroot_local_user=NO
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
编辑上面的内容
第一行:chroot_local_user=NO
第二行:chroot_list_enable=YES //限制访问自身目录
第四行:编辑vsftpd.chroot_list。根据第三行说指定的目录,找到chroot_list文件。(因主机不同,文件名也许略有不同)
编辑vsftpd.chroot_list,将受限制的用户添加进去,每个用户名一行
说明:
chroot_local_user=NO#则所有用户不被限定在主目录内,
chroot_list_enable=YES#表示要启用chroot_list_file, 因为chroot_local_user=NO,即全体用户都“不被限定在主目录内”,所以总是作为“例外列表”的chroot_list_file这时列出的是那些“会被限制在主目录下”的用户。
改完配置文件,不要忘记重启vsFTPd服务器
运行命令:systemctl restart vsftod
vi /etc/vsftpd/vsftpd.conf
在原来的基础上加上:
listen_port=21021
pasv_enable=YES
pasv_min_port=1050
pasv_max_port=1060
pasv_promiscuous=YES
如果防火墙开启、并且做了端口限制、请添加这两条规则。
# 状态查看
systemctl status firewalld
firewall-cmd --state
# 端口查看
firewall-cmd --list-all
# 添加21021端口
firewall-cmd --zone=public --permanent --add-port=21021/tcp --permanent
# 重启防火墙
firewall-cmd --reload
参数参考:
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=8080-8085/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
查看防火墙的开放的端口
firewall-cmd --permanent --list-ports
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;