CentOS 云服务器搭建 FTP 服务是怎么回事呢?CentOS 云服务器相信大家都很熟悉,但是搭建 FTP 服务是怎么回事呢?下面就让小编带大家一起了解吧。
CentOS 云服务器搭建 FTP 服务,其实就是搭建 FTP 服务了。那么CentOS 云服务器为什么会搭建 FTP 服务,相信大家都很好奇是怎么回事。大家可能会感到很惊讶,CentOS 云服务器怎么会搭建 FTP 服务呢?但事实就是这样,小编也感到非常惊讶。那么这就是关于CentOS 云服务器搭建 FTP 服务的事情了,大家有没有觉得很神奇呢?
看了今天的内容,大家有什么想法呢?欢迎在评论区告诉小编一起讨论哦。
{{< toc >}}
一、安装 vsftpd
执行以下命令,安装 vsftpd
yum install -y vsftpd
启动 FTP 服务,并设置 vsftpd 开机自启动
systemctl start vsftpd
systemctl enable vsftpd
确认服务是否启动
netstat -antup | grep ftp
显示结果如下,则说明 FTP 服务已成功启动。

此时,vsftpd 已默认开启匿名访问模式,无需通过用户名和密码即可登录 FTP 服务器。使用此方式登录 FTP 服务器的用户没有修改或上传文件的权限。
二、配置 vsftpd
为 FTP 服务创建一个 Linux 用户,本文以 ftpuser 为例
并设置 ftpuser 用户的密码,输入密码后请按 Enter 确认设置,密码默认不显示,本文以 tf7295TFY 为例
useradd ftpuser
passwd ftpuser
创建 FTP 服务使用的文件目录,本文以 /var/ftp/test 为例,并修改目录权限
mkdir /var/ftp/test
chown -R ftpuser:ftpuser /var/ftp/test
然后编辑 vsftpd.conf 文件
vim /etc/vsftpd/vsftpd.conf
FTP 可通过主动模式和被动模式与客户端机器进行连接并传输数据。由于大多数客户端机器的防火墙设置及无法获取真实 IP 等原因,这里仅配置被动模式。
- 修改以下配置参数,设置匿名用户和本地用户的登录权限,设置指定例外用户列表文件的路径,并开启监听 IPv4 sockets
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
- 关闭监听 IPv6 sockets
# listen_ipv6=YES
- 添加以下配置参数,开启被动模式,设置本地用户登录后所在目录,以及云服务器建立数据传输可使用的端口范围值。
local_root=/var/ftp/test
allow_writeable_chroot=YES
pasv_enable=YES
pasv_address=xxx.xx.xxx.xx #请修改为您的 Linux 云服务器公网 IP
pasv_min_port=40000
pasv_max_port=45000
最后创建并编辑 chroot_list 文件,输入用户名,一个用户名占据一行,本文输入 ftpuser
vim /etc/vsftpd/chroot_list
重启 FTP 服务
systemctl restart vsftpd
三、设置安全组
- 被动模式:放通端口 21,及上文 修改配置文件 中设置的
pasv_min_port到pasv_max_port之间的所有端口,本文放通端口为40000 - 45000
四、验证 FTP 服务
您可通过 FTP 客户端软件、浏览器或文件资源管理器等工具验证 FTP 服务,本文以客户端的文件资源管理器为例。
- 打开客户端的 IE 浏览器,选择工具 > Internet 选项 > 高级,根据您选择的 FTP 模式进行修改:
本文使用的是被动模式:勾选“使用被动 FTP”。
- 打开客户端的计算机,在路径栏中访问以下地址。如下图所示:
ftp://云服务器公网IP:21

- 在弹出的“登录身份”窗口中输入 配置 vsftpd 中已设置的用户名及密码。
本文使用的用户名为 ftpuser,密码为 tf7295TFY。
- 成功登录后,即可上传及下载文件。