温馨提示×

linux ftpserver如何开启

小樊
45
2026-09-14 09:21:18
栏目: 智能运维

在 Linux 上“开启 FTP 服务器”通常包含 安装 FTP 服务端软件 → 配置 → 启动服务 → 开放防火墙/端口 几个步骤。下面以最常见的两种 FTP 服务为例说明。


一、使用 vsftpd(最常用,推荐)

1. 安装 vsftpd

# Debian / Ubuntu
sudo apt update
sudo apt install vsftpd

# CentOS / RHEL / Rocky
sudo yum install vsftpd
# 或
sudo dnf install vsftpd

2. 启动并设置开机自启

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

3. 检查服务状态

sudo systemctl status vsftpd

4. 基本配置(可选但推荐)

编辑配置文件:

sudo vim /etc/vsftpd.conf

常见配置示例:

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES

修改后重启:

sudo systemctl restart vsftpd

5. 防火墙放行 FTP

# 放行 21 端口
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --reload

# 若使用主动模式还需 20 端口
sudo firewall-cmd --permanent --add-port=20/tcp

二、使用 ProFTPD(可选)

安装

# Ubuntu / Debian
sudo apt install proftpd

# CentOS
sudo yum install proftpd

启动

sudo systemctl start proftpd
sudo systemctl enable proftpd

三、被动模式(PASV)端口开放(重要)

如果客户端连得上但不能列目录,通常是被动模式未配置:

/etc/vsftpd.conf 中:

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

防火墙放行:

sudo firewall-cmd --permanent --add-port=30000-31000/tcp
sudo firewall-cmd --reload

四、创建 FTP 用户(示例)

sudo useradd -m ftpuser
sudo passwd ftpuser

五、测试连接

ftp localhost
# 或
ftp your_server_ip

六、常见问题排查

  • ✅ 服务未启动:systemctl status vsftpd
  • ✅ 防火墙未放行端口
  • ✅ SELinux 限制(CentOS):
sudo setsebool -P ftpd_full_access on

如果你能告诉我:

  • 使用的 Linux 发行版
  • 是否需要 匿名访问
  • 是否用于 公网 / 内网

我可以给你一份更精确的配置方案。

0