温馨提示×

centos ftpserver怎样测试连通

小樊
50
2026-09-11 23:06:10
栏目: 智能运维

在 CentOS 上测试 FTP / FTPS 服务器连通性,可以从网络层、服务层、登录层逐步排查。下面按常见场景说明。


一、先确认 FTP 服务是否运行

1. 查看服务状态(vsftpd 为例)

systemctl status vsftpd

如果没启动:

systemctl start vsftpd
systemctl enable vsftpd

二、测试网络连通(基础)

2. 测试端口是否通(默认 21)

telnet ftp_server_ip 21

nc -vz ftp_server_ip 21

✅ 看到 220Connected 说明端口通
❌ 不通:检查防火墙 / 安全组


三、防火墙 / SELinux 检查

3. 防火墙放行 FTP

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

4. SELinux(常见坑)

getsebool -a | grep ftp

确保:

setsebool -P ftpd_full_access on

四、FTP 登录测试(明文 FTP)

5. 使用 ftp 命令

ftp ftp_server_ip

输入用户名 / 密码

✅ 能 ls 说明正常


五、FTPS(SSL/TLS)测试

6. 使用 lftp(推荐)

lftp
lftp :~> set ftp:ssl-force true
lftp :~> set ssl:verify-certificate no
lftp :~> connect ftps://ftp_server_ip

或一行:

lftp ftps://user:password@ftp_server_ip

7. 使用 curl 测试 FTPS

curl -k ftps://ftp_server_ip/ --user user:password

六、被动模式(PASV)问题(最常见)

FTP 被动模式需要额外端口(如 30000–31000)

vsftpd 配置示例

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

防火墙放行:

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

测试:

ftp ftp_server_ip
ftp> passive
ftp> ls

七、快速连通自检清单 ✅

  • [ ] 21 端口能通
  • [ ] vsftpd 已启动
  • [ ] 防火墙放行 FTP
  • [ ] SELinux 不拦截
  • [ ] 主动 / 被动模式正常
  • [ ] 能登录并 ls

如果你能告诉我:

  • 用的是 vsftpd / proftpd
  • FTP 还是 FTPS
  • 报错信息

我可以直接帮你定位问题。

0