使用root账号登录centos系统
检查是否已安装vsftp
rpm -qa |grep vsftpd #未输出信息,表示未安装vsftp
通过yum安装vsftp
yum -y install vsftpd
ftp启动、重启、停止、状态查询命令
service vsftpd start #启动ftp service vsftpd stop #停止ftp service vsftpd restart #重启ftp service vsftpd status #查询ftp状态
设置为开机启动(可设置)
chkconfig vsftpd on
设置配置文件
vi /etc/vsftpd/vsftpd.conf
修改如下内容:
anonymous_enable=NO #设置不允许匿名账户登录 chroot_local_user=YES #所有用户限制在主目录中 chroot_list_enable=NO #不启动限制用户名单,直接限制所有用户 userlist_enable=NO #当为YES时只有userlist_file文件中指定的用户才能登录 allow_writeable_chroot=YES #(在文件尾部新增)防止用户有写入权限时报错 local_root=/home/www #(在文件尾部新增)设置用户的根目录
重启ftp
service vsftpd restart
创建ftp用户
创建用户组
groupadd ftpgroups
创建用户
# useradd 添加用户命令 -d /home/www 指定用户根目录 -g ftpgroups 加入用户组 ftptest用户名 useradd -d /home/www -g ftpgroups ftptest
设置用户密码
passwd ftptest # passwd(命令) ftptest(用户名,根据你实际情况写)
设置不允许用于系统登录
usermod -s /sbin/nologin ftptest #ftptest(用户名,根据你实际情况写)
设置文件权限
chmod 755 /home/www
设置目录拥有者
chown -R ftptest:root /home/www #ftptest:ftp用户名 ; /home/www:文件目录
设置防火墙
查看防火墙状态,如果未启动,直接跳过本步骤systemctl status firewalld
开放20、21端口(阿里云服务器还需配置安全组开放防火墙)
firewall-cmd --permanent --zone=public --add-port=20/tcp firewall-cmd --permanent --zone=public --add-port=20/udp firewall-cmd --permanent --zone=public --add-port=21/tcp firewall-cmd --permanent --zone=public --add-port=21/udp firewall-cmd --reload #重新载入
至此ftp服务安装成功,如果出现不能访问或不能写入的情况,就还需要设置SELinux(关闭)
sestatus -v #查看SELinux状态,如果SELinux status参数为enabled即为开启状态 setenforce 0 #临时关闭(不用重启机器)
centos7安装FTP,并配置用户只可访问指定文件夹
最新推荐文章于 2024-01-18 11:22:06 发布