在Centos 7上配置FTP服务器可以通过以下步骤完成:
一、安装FTP服务器软件
1、安装VSFTPD:

使用yum
命令安装vsftpd
服务,执行以下命令:
- sudo yum install y vsftpd
启动并设置开机自启:
- sudo systemctl start vsftpd
- sudo systemctl enable vsftpd
2、安装FTP客户端(可选):
虽然服务器端已经自带了客户端,但为了方便测试,可以安装:
- sudo yum install y ftp
二、配置VSFTPD服务
1、配置文件路径:
主配置文件位于/etc/vsftpd/vsftpd.conf
。

2、编辑配置文件:
打开配置文件进行编辑:
- sudo vi /etc/vsftpd/vsftpd.conf
修改以下关键配置项:
关闭匿名访问:
- anonymous_enable=NO
启用本地用户访问:
- local_enable=YES
- chroot_local_user=YES
启用数据连接的被动模式:

- pasv_enable=YES
- pasv_min_port=50000
- pasv_max_port=51000
允许上传和下载:
- write_enable=YES
- ascii_upload_enable=YES
- ascii_download_enable=YES
其他推荐配置:
- async_abor_enable=YES
- ftpd_banner=Welcome to blah FTP service.
3、添加自定义配置(可选):
在文件末尾添加以下内容以优化性能和安全性:
- use_localtime=YES
- listen_port=21
- idle_session_timeout=300
- guest_enable=YES
- guest_username=vsftpd
- user_config_dir=/etc/vsftpd/vconf
- data_connection_timeout=1
- virtual_use_local_privs=YES
- pasv_min_port=40000
- pasv_max_port=40010
- accept_timeout=5
- connect_timeout=1
- allow_writeable_chroot=YES
三、创建用户和目录
1、创建FTP用户:
使用useradd
命令创建新用户,并设置合适的权限:
- sudo useradd d /home/ftpuser s /sbin/nologin ftpuser
- sudo passwd ftpuser # 设置密码
2、创建FTP目录并设置权限:
创建用户主目录和上传目录:
- sudo mkdir p /home/ftpuser/upload
- sudo chown R ftpuser:ftpuser /home/ftpuser
- sudo chmod R 755 /home/ftpuser
四、配置SELinux和防火墙
1、配置SELinux:
编辑/etc/selinux/config
文件,将SELINUX
设置为disabled
:
- SELINUX=disabled
重启系统或执行以下命令使更改立即生效:
- sudo setenforce 0
2、配置防火墙:
开放FTP服务所需的端口(21端口和被动模式下的数据端口范围):
- sudo firewallcmd zone=public addservice=ftp permanent
- sudo firewallcmd zone=public addport=4000040010/tcp permanent
- sudo firewallcmd reload
五、测试FTP服务器
1、连接到FTP服务器:
使用FTP客户端工具(如ftp
命令)连接到服务器:
- ftp localhost
输入用户名和密码进行登录测试。
2、检查上传和下载功能:
尝试上传和下载文件以确保FTP服务器正常工作。
通过以上步骤,您可以在CentOS 7上成功配置一个基本的FTP服务器,如果需要更高级的配置,如虚拟用户、权限控制等,可以进一步编辑vsftpd.conf
文件或参考相关文档进行配置。