在CentOS上设置FTP服务器时,安全性是一个重要的考虑因素。以下是一个详细的指南,帮助你设置一个安全的FTP服务器:
首先,确保你的系统是最新的,然后安装vsftpd。
sudo yum update -y
sudo yum install vsftpd -y
编辑vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
。在配置文件中,你可以设置一些基本选项,例如:
anonymous_enable=NO
:禁止匿名用户登录。(推荐)local_enable=YES
:允许本地用户登录。write_enable=YES
:允许用户写入文件。chroot_local_user=YES
:将本地用户锁定在他们的主目录中。(推荐)allow_writeable_chroot=NO
:(不推荐)允许chroot目录可写。默认情况下,FTP使用端口21。你可以更改这个端口以增加安全性。
listen_port=2121
创建一个新的系统用户来管理FTP服务器,而不是使用root用户。
sudo useradd ftpuser
sudo passwd ftpuser
然后在配置文件中添加这个用户:
local_root=/home/ftpuser
确保你的防火墙允许FTP流量。
sudo firewall-cmd --permanent --add-service=ftps
sudo firewall-cmd --reload
为了增加安全性,你可以配置vsftpd使用SSL。
sudo yum install openssl -y
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/vsftpd.key -out /etc/pki/tls/certs/vsftpd.crt
编辑vsftpd配置文件,添加以下内容:
ssl_enable=YES
ssl_cert_file=/etc/pki/tls/certs/vsftpd.crt
ssl_key_file=/etc/pki/tls/private/vsftpd.key
重启vsftpd服务:
sudo systemctl restart vsftpd