在CentOS 7服务器上搭建FTP服务器,可以使用vsftpd(Very Secure FTP Daemon)。以下是详细的步骤:
安装vsftpd
1. 更新系统:
sudo yum update -y
2. 安装vsftpd:
sudo yum install vsftpd -y
3. 启动并启用vsftpd:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
配置vsftpd
1. 备份默认配置文件:
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
2. 编辑配置文件:
sudo nano /etc/vsftpd/vsftpd.conf
修改以下配置或添加配置项:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
3. 创建FTP用户列表文件(可选):如果希望限制某些用户访问FTP,可以使用用户列表文件。
创建/etc/vsftpd/user_list文件并添加允许的用户:
sudo nano /etc/vsftpd/user_list
4. 添加用户:
ftpuser
设置SELinux规则(如果启用SELinux):
sudo setsebool -P ftpd_full_access 1
sudo setsebool -P allow_ftpd_full_access 1
5. 配置防火墙:允许FTP端口(21)和被动模式端口(通常是1024-1048):
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=1024-1048/tcp
sudo firewall-cmd --reload
创建FTP用户
1. 添加FTP用户:
sudo adduser ftpuser
sudo passwd ftpuser
2.创建FTP目录并设置权限:
sudo mkdir -p /home/ftpuser/ftp/upload
sudo chown -R ftpuser:ftpuser /home/ftpuser/ftp
sudo chmod 550 /home/ftpuser/ftp
sudo chmod 750 /home/ftpuser/ftp/upload
启动vsftpd服务
1. 重新启动vsftpd服务:
sudo systemctl restart vsftpd
2. 检查vsftpd服务状态:
sudo systemctl status vsftpd
测试FTP连接
1. 使用FTP客户端连接:可以使用FTP客户端(如FileZilla)连接到你的服务器,测试是否能正常访问和上传/下载文件。
2. 使用命令行FTP客户端:
ftp localhost
输入用户名ftpuser和对应的密码,测试连接和文件操作。
通过以上步骤,你应该能够在CentOS 7服务器上成功搭建和配置一个安全的FTP服务器。