HCRM博客

如何在CentOS上配置vsftpd服务?

在CentOS操作系统上配置vsftpd(Very Secure FTP DAEmon)是一项常见的任务,用于搭建安全的文件传输服务,以下是详细的配置步骤和相关注意事项:

一、安装vsftpd

1、检查是否已经安装

如何在CentOS上配置vsftpd服务?-图1
(图片来源网络,侵权删除)
   rpm qa | grep vsftpd

如果未安装,则执行以下命令进行安装:

   yum install y vsftpd

2、设置开机启动

   systemctl enable vsftpd

3、启动服务

   systemctl start vsftpd

4、查看服务状态

   systemctl status vsftpd

二、配置防火墙

由于CentOS 7及以后版本默认使用firewalld,需要开放FTP端口:

firewallcmd permanent addport=21/tcp
firewallcmd permanent addservice=ftp
firewallcmd reload

三、创建FTP用户并设置权限

1、创建用户目录

如何在CentOS上配置vsftpd服务?-图2
(图片来源网络,侵权删除)
   mkdir p /home/ftproot/ftptest

2、创建用户并指定目录

   useradd d /home/ftproot/ftptest g ftp s /sbin/nologin ftptest

3、设置用户密码

   passwd ftptest

4、设置目录权限

   chown R ftptest:ftptest /home/ftproot/ftptest
   chmod R 755 /home/ftproot/ftptest

四、配置vsftpd

1、编辑配置文件

   vi /etc/vsftpd/vsftpd.conf

2、修改关键配置项

   anonymous_enable=NO
   local_enable=YES
   write_enable=YES
   chroot_local_user=YES
   allow_writeable_chroot=YES

3、重启服务

如何在CentOS上配置vsftpd服务?-图3
(图片来源网络,侵权删除)
   systemctl restart vsftpd

五、SELinux配置

CentOS 7默认关闭了FTP的SELinux策略,需要手动开启:

setsebool P allow_ftpd_full_access on
setsebool P ftp_home_dir on

六、被动模式配置(可选)

为了提高安全性,可以配置vsftpd使用被动模式:

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30010

然后在防火墙中开放相应端口:

firewallcmd permanent addrichrule='rule family="ipv4" source address="0.0.0.0/0" port port="3000030010" protocol="tcp" accept'
firewallcmd reload

七、常见问题排查

1、FTP用户无法登录

确保用户被添加到/etc/vsftpd/user_list文件中。

确保用户未被列在/etc/vsftpd/ftpusers文件中。

确保PAM配置正确,必要时注释掉或删除auth required pam_Shells.so行。

2、检查日志

   journalctl u vsftpd f

通过以上步骤,您可以在CentOS系统上成功安装并配置一个安全的vsftpd服务器,如果在实际操作过程中遇到任何问题,可以参考上述FAQ部分进行排查解决。

分享:
扫描分享到社交APP
上一篇
下一篇