温馨提示×

怎么测试Ubuntu FTPServer

小樊
45
2026-08-28 21:59:17
栏目: 智能运维

测试 Ubuntu 上的 FTPServer(FTP 服务器) 一般分几个层面来做:服务状态 → 本地连接 → 远程连接 → 加密 FTPS(FTP over TLS)→ 权限与防火墙。下面按最常见场景一步步说明。


一、确认 FTP 服务是否已安装并运行

Ubuntu 常用 FTP 服务器有:

  • vsftpd(最常见)
  • proftpd
  • pure-ftpd

1️⃣ 检查是否安装 vsftpd

dpkg -l | grep vsftpd

如未安装:

sudo apt update
sudo apt install vsftpd

2️⃣ 检查服务状态

sudo systemctl status vsftpd

正常应看到:

Active: active (running)

启动 / 重启:

sudo systemctl start vsftpd
sudo systemctl restart vsftpd

二、本地测试 FTP(本机)

1️⃣ 安装 FTP 客户端

sudo apt install ftp

2️⃣ 连接本机

ftp localhost

登录:

  • 用户名:系统用户
  • 密码:该用户密码

✅ 成功示例:

230 Login successful.
ftp>

三、测试 FTPS(推荐,安全 FTP)

如果配置的是 FTPS(FTP over TLS),不能用普通 ftp 命令测试。

方法 1:使用 lftp(强烈推荐)

sudo apt install lftp

测试显式 FTPS(推荐)

lftp -u 用户名,密码 ftps://服务器IP

或指定端口:

lftp -u 用户名,密码 ftps://服务器IP:21

✅ 成功特征:

  • 能列目录
  • 无 TLS 报错

方法 2:使用 curl

curl -k --ftp-ssl ftp://服务器IP/ -u 用户名:密码

-k 用于忽略证书校验(测试用)


四、远程测试(另一台电脑)

1️⃣ 确认防火墙

sudo ufw status

若防火墙开启,放行 FTP:

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw reload

如果是 被动模式 FTPS,还需要放行被动端口范围(如 30000–31000)。


2️⃣ 从另一台机器测试

ftp 服务器IP

或使用:

lftp -u 用户名,密码 ftps://服务器IP

五、检查 FTP 配置是否正确

vsftpd 配置路径

cat /etc/vsftpd.conf

常见关键项:

listen=YES
local_enable=YES
write_enable=YES
chroot_local_user=YES
ssl_enable=YES
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

测试配置是否生效:

sudo systemctl restart vsftpd

六、常见问题排查

❌ 连接被拒绝

  • 服务未启动
  • 防火墙
  • 端口错误

❌ 登录失败

  • 用户被限制登录
  • local_enable=NO
  • 家目录权限问题

❌ FTPS 报错

  • 证书不存在
  • 客户端未启用 TLS
  • 被动端口未放行

七、推荐测试顺序(总结)

本地 → 远程 → FTPS → 权限 → 防火墙


如果你愿意,可以告诉我:

  • 你用的是 vsftpd / proftpd / pure-ftpd
  • 普通 FTP 还是 FTPS
  • 是否开启 chroot / 被动模式

我可以给你针对性的测试命令和配置示例

0