Debian 上 FTP 服务(ftpserver)报错的原因非常多,需要先看具体报错信息才能准确判断。下面我按常见场景 + 典型报错 + 原因 + 解决方法给你梳理一下,你可以对照自己的情况:
systemctl status vsftpd
报错类似:
Failed to start vsftpdJob for vsftpd.service failed配置文件语法错误
vsftpd /etc/vsftpd.conf
会直接告诉你哪一行有问题
端口被占用(21 端口)
ss -tlnp | grep :21
✅ 解决:
/etc/vsftpd.conf530 Login incorrect500 OOPS: cannot change directorylocal_enable=NO
✅ 改为:
local_enable=YES
编辑:
/etc/pam.d/vsftpd
注释掉:
auth required pam_shells.so
用户无法进入家目录
chmod 755 /home/username
LIST 卡住未配置被动端口范围 / 防火墙没开
/etc/vsftpd.conf:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
防火墙:
ufw allow 30000:31000/tcp
云服务器还要开安全组
500 OOPS: vsftpd: refusing to run with writable root inside chroot()
用户根目录可写 + chroot
chmod a-w /home/user
allow_writeable_chroot=YES
Debian 默认 没有 SELinux,所以基本不用管
Debian 常见 FTP 服务:
vsftpd(最常见)proftpdpure-ftpd请确认:
dpkg -l | grep ftp
请把具体报错信息贴出来,比如:
journalctl -xe/var/log/vsftpd.log我可以直接帮你定位到哪一行配置有问题。