CentOS7部署vsftp(FTP)服务

vsftp安装 创建用户 并限定用户在自己的目录 1、查看是否已经安装了vsftpd vsftpd -version 2、安装vsftpd(CentOS7) yum install -y vsftpd 3、新建FTP目录 创建的FTP目录如下: /data/KodServer/data/User/tomas/home 4、创建新用户 ftpname为你为该ftp创建的用户名,/data/KodServer/data/User/tomas/home 为登录进去后的位置 useradd -d /data/KodServer/data/User/tomas/home -s /bin/bash ftpname 5、为新建的用户设置密码 passwd ftpname 【备注:用cat etc/passwd可以查看当前系统用户】 6、设置主目录(更改登录时看到的目录,看个人需要更改,如果第4步已设置好,此步可忽略) usermod -d /data/KodServer/data/User/tomas/home ftpname 7、添加用户组(这步可忽略) groupadd ftpgroup 8、防火墙添加FTP服务 firewall-cmd --permanent --zone=public --add-service=ftp firewall-cmd --reload 解决办法: ①、查看ftp的Selinux状态:sestatus -b | grep ftp ②、在结果中可以看到: ftp_home_dir off ③、将状态改为on:setsebool -P ftp_home_dir on ④、重启vsftp服务:systemctl restart vsftpd.service setsebool -P ftpd_full_access on systemctl restart firewalld.service 9、配置只能访问自身目录(/data/KodServer/data/User/tomas/home),不能访问其他路径 修改/etc/vsftpd.conf cd /etc/vsftpd/ vi vsftpd.conf #去掉前面的注释 chroot_local_user=YES ascii_upload_enable=YES ascii_download_enable=YES #文件末尾添加 allow_writeable_chroot=YES 保存,重启vsftpd 设置开机启动: systemctl enable vsftpd.service 启动vsftpd服务 systemctl start vsftpd.service 禁止ftp用户通过22端口登录ftp服务器: 由于需要限制ftp用户在自己的目录,在21端口下没有问题,但当ftp用户用sftp登录时,还是可以访问上级目录,于是禁止ftp用户ssh登录,切断22端口的通信。 首先,执行如下命令,找到nologin的shell: vi /etc/shells 可以看到禁止登录的shell文件为/usr/sbin/nologin,然后执行如下命令: usermod -s /usr/sbin/nologin tomas 如果要恢复tomas的ssh登录,执行如下命令: usermod -s /bin/bash tomas

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券