CentOS7下FTP的安装与配置


1、安装vsftpd

[root@localhost modules]# yum install -y vsftpd

 2、编辑ftp配置文件

[root@localhost modules]# vi /etc/vsftpd/vsftpd.conf

做如下修改:

anonymous_enable=NO  
#关闭匿名登录
  
chroot_local_user=YES  
#用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
#通过搭配能实现以下几种效果:  
#①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。  
#②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。  
#③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。  
#④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。  
  
chroot_list_enable=YES  
chroot_list_file=/etc/vsftpd/chroot_list  

allow_writeable_chroot=YES  
#加上这行解决了无法登陆的问题  

3、设置开机启动ftp

[root@localhost modules]# chkconfig vsftpd on

4、启动/重新启动ftp服务

[root@localhost modules]# systemctl start vsftpd.service
[root@localhost modules]# systemctl restart vsftpd.service

5、防火墙配置

方法1:

[root@localhost modules]# vim /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT 
#增加本行

方法2:关闭防火墙

[root@localhost modules]# systemctl stop firewalld.service      #停止  
[root@localhost modules]# systemctl disable firewalld.service  #禁用  

6、建立ftp账号

useradd -d /path(你的ftp文件夹) -s /sbin/nologin ftpname(用户名) 

7、修改密码

passwd ftpname

8、设置账户权限

chown -R ftpname.ftpname /path(你的ftp路径)
chmod 777 /path

9、设置路径运行上传

setsebool -P ftp_home_dir on
setsebool allow_ftpd_full_access on

10、重启vsftp服务

systemctl restart vsftpd.service

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM