在 Linux 系统上搭建 FTP(File Transfer Protocol,文件传输协议)服务器,常用的 FTP 服务器软件有 vsftpd(Very Secure FTP Daemon),以下以 CentOS 7 和 Ubuntu 20.04 系统为例,详细介绍搭建步骤。
1. 安装 vsftpd
打开终端,使用以下命令安装 vsftpd:
yum install vsftpd -y
2. 启动并设置开机自启
安装完成后,启动 vsftpd 服务,并设置为开机自启:
systemctl start vsftpd
systemctl enable vsftpd
3. 配置防火墙
为了让外部网络能够访问 FTP 服务,需要开放 FTP 相关端口。FTP 使用 20 和 21 端口,同时在被动模式下还需要开放一定范围的端口。
# 开放20和21端口
firewall-cmd --permanent --add-port=20/tcp
firewall-cmd --permanent --add-port=21/tcp
# 开放被动模式端口范围(假设为50000 - 50010)
firewall-cmd --permanent --add-port=50000-50010/tcp
# 重新加载防火墙规则
firewall-cmd --reload
4. 配置 vsftpd
编辑 vsftpd 的配置文件/etc/vsftpd/vsftpd.conf:
vi /etc/vsftpd/vsftpd.conf
以下是一些常用的配置参数示例:
# 允许匿名登录
anonymous_enable=YES
# 允许本地用户登录
local_enable=YES
# 允许上传文件
write_enable=YES
# 本地用户的文件创建掩码
local_umask=022
# 启用被动模式
pasv_enable=YES
# 被动模式的端口范围
pasv_min_port=50000
pasv_max_port=50010
修改完成后保存并退出,然后重启 vsftpd 服务:
systemctl restart vsftpd
5. 创建 FTP 用户
可以创建一个专门的 FTP 用户,并为其指定家目录:
# 创建用户
useradd -d /home/ftpuser -s /sbin/nologin ftpuser
# 设置用户密码
passwd ftpuser
# 修改家目录权限
chmod 755 /home/ftpuser
Ubuntu 20.04 系统搭建 FTP 服务器
1. 安装 vsftpd
打开终端,使用以下命令安装 vsftpd:
apt-get update
apt-get install vsftpd -y
2. 启动并设置开机自启
安装完成后,启动 vsftpd 服务,并设置为开机自启:
systemctl start vsftpd
systemctl enable vsftpd
3. 配置防火墙
开放 FTP 相关端口:
# 开放20和21端口
ufw allow 20/tcp
ufw allow 21/tcp
# 开放被动模式端口范围(假设为50000 - 50010)
ufw allow 50000:50010/tcp
# 启用防火墙
ufw enable
4. 配置 vsftpd
编辑 vsftpd 的配置文件/etc/vsftpd.conf:
vi /etc/vsftpd.conf
配置参数与 CentOS 7 中的类似,修改完成后保存并退出,然后重启 vsftpd 服务:
systemctl restart vsftpd
5. 创建 FTP 用户
# 创建用户
adduser --disabled-password --gecos "" ftpuser
# 设置用户密码
passwd ftpuser
# 创建用户家目录
mkdir /home/ftpuser
chown ftpuser:ftpuser /home/ftpuser
chmod 755 /home/ftpuser
测试 FTP 连接
可以使用 FTP 客户端工具(如 FileZilla)来测试 FTP 连接。在客户端中输入服务器的 IP 地址、端口号(默认为 21)、用户名和密码,然后尝试连接和上传下载文件。

1942

被折叠的 条评论
为什么被折叠?



