在 CentOS 上“测试 FTP Server”通常分几种情况:服务是否起来、能否本地登录、能否远程访问、是否支持 FTPS(加密)。下面按最常见场景给你一套实用测试方法。
以 vsftpd(CentOS 最常见)为例:
# 查看是否安装
rpm -q vsftpd
# 启动服务
systemctl start vsftpd
# 设置开机自启
systemctl enable vsftpd
# 查看状态
systemctl status vsftpd
✅ 状态应为 active (running)
ftp localhost
或指定端口(默认 21):
ftp 127.0.0.1 21
登录示例:
Name: ftpuser
Password: ******
如果成功,会看到:
230 Login successful.
Remote system type is UNIX.
⚠️ 若提示 530 Login incorrect,检查:
local_enable=NO)yum install -y lftp
lftp ftp://127.0.0.1
或:
lftp
lftp :~> open 127.0.0.1
lftp 127.0.0.1:~> login ftpuser
登录后测试:
put test.txt
get test.txt
ls
ftp centos_ip
或:
lftp ftp://centos_ip
⚠️ 若连不上,检查:
firewall-cmd --list-all
开放 FTP:
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
getsebool -a | grep ftp
开启:
setsebool -P ftpd_full_access on
如果配置了 FTPS(SSL/TLS):
lftp
lftp :~> set ftp:ssl-force true
lftp :~> open ftps://127.0.0.1
或:
curl -k ftp://127.0.0.1 --user ftpuser:password
netstat -tunlp | grep 21
telnet centos_ip 21
journalctl -u vsftpd -f
| 现象 | 原因 |
|---|---|
| 连接拒绝 | 服务未启动 / 防火墙 |
| 能连不能登 | 用户/密码/SELinux |
| 能登不能传 | 目录权限 |
| 被动模式卡住 | PASV 端口未开放 |
如果你能告诉我:
我可以直接帮你定位问题。