云服务器
产品概述
购买指南
快速入门
操作指南
技术教程
Linux如何安装配置Redis
Linux如何搭建LNMP环境
Linux如何查看端口监听情况
Linux实例如何配置中文支持
云服务器常用端口作用
如何在CentOS中安装Docker
如何在Linux中使用正则表达式
如何安装宝塔Linux面板
如何安装配置Nginx
如何搭建Discuz!论坛
如何搭建WordPress站点
Linux如何搭建FTP服务
Traceroute网络诊断工具详解
iperf 网络性能测试工具原理详解
iperf 命令使用详解
Linux中pstack命令使用指南
Linux系统中重启命令有哪些?
DDoS攻击应该如何防御?
云服务器
Linux如何搭建FTP服务

Linux如何搭建FTP服务

非凡云为大家分享linux如何搭建FTP服务,示例为CentOS7

1.登录云服务器


2.安装vsftpd

yum install -y vsftpd


3.设置vsftpd开机自启动

systemctl enable vsftpd


4.启动FTP服务

systemctl start vsftpd


5.确认FTP服务是否启动

netstat -antup | grep ftp

显示结果如下,则说明 FTP 服务已成功启动。

此时,vsftpd 已默认开启匿名访问模式,无需通过用户名和密码即可登录 FTP 服务器。使用此方式登录 FTP 服务器的用户没有修改或上传文件的权限。


6.为FTP服务创建一个Linux用户,以ftpuser为例

useradd ftpuser


7.设置ftpuser的密码

passwd ftpuser


8.创建FTP服务使用的文件目录,以 /var/ftp/test 为例

mkdir /var/ftp/test


9.修改目录权限

chown -R ftpuser:ftpuser /var/ftp/test


10.打开vsftpd.conf文件

vim /etc/vsftpd/vsftpd.conf


11.按 i 切换至编辑模式,根据实际需求选择 FTP 模式,修改配置文件 vsftpd.conf

FTP 可通过主动模式和被动模式与客户端机器进行连接并传输数据。由于大多数客户端机器的防火墙设置及无法获取真实 IP 等原因,建议您选择被动模式搭建 FTP 服务。如下修改以设置被动模式为例。

修改以下配置参数,设置匿名用户和本地用户的登录权限,设置指定例外用户列表文件的路径,并开启监听 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


在行首添加 #,注释 listen_ipv6=YES 配置参数,关闭监听 IPv6 sockets

#listen_ipv6=YES


添加以下配置参数,开启被动模式,设置本地用户登录后所在目录,以及云服务器建立数据传输可使用的端口范围值。

local_root=/var/ftp/test

allow_writeable_chroot=YES

#pasv_enable=YES 被动模式,pasv_enable=NO 主动模式

pasv_enable=YES

#请修改为您的云服务器公网IP

pasv_address=xxx.xx.xxx.xx

pasv_min_port=40000

pasv_max_port=45000


12.按 Esc 后输入 :wq 保存后退出


13.创建并编辑 chroot_list 文件

vim /etc/vsftpd/chroot_list


14.按 i 进入编辑模式,输入用户名,一个用户名占据一行,设置完成后按 Esc 并输入 :wq 保存后退出

设置的用户将会被锁定在主目录,您若没有设置例外用户的需求,可跳过此步骤,输入 :q 退出文件


15.重启 FTP 服务

systemctl restart vsftpd


16.设置云服务器安全组

被动模式:放通端口21,及配置文件 /etc/vsftpd/vsftpd.conf 中设置的 pasv_min_port 到 pasv_max_port 之间的所有端口,以放通端口40000 - 45000为例


17.打开客户端,在路径栏中访问ftp服务器地址,在弹出的登录身份窗口中输入配置vsftpd中已设置的用户名及密码


18.登录成功后即可上传/下载文件