CentOS下FileZilla连接问题排查与解决
一、先选对协议与端口
二、SFTP连接失败排查(端口22)
ip addr,确保网卡(如 ens33)已获取 IP;虚拟机需确认网络模式(桥接/NAT)与主机网络正常。yum install -y openssh-serversystemctl start sshd && systemctl enable sshdsystemctl status sshdfirewall-cmd --zone=public --add-port=22/tcp --permanent && firewall-cmd --reloadsshd 状态与 IP。三、FTP连接失败排查(端口21)
yum -y install vsftpdsystemctl start vsftpd && systemctl enable vsftpdsystemctl status vsftpdnetstat -an | grep ':21'(应看到 0.0.0.0:21 LISTEN)firewall-cmd --zone=public --add-port=21/tcp --permanent && firewall-cmd --reload/etc/vsftpd/ftpusers 与 /etc/vsftpd/user_list,若 root 被禁用,按需注释对应行后重启 vsftpd:systemctl restart vsftpd/etc/pam.d/vsftpd,将 auth required pam_shells.so 注释或替换为 auth required pam_nologin.so,再重启 vsftpd。此问题常见于使用 /sbin/nologin 等 shell 的 FTP 用户。四、虚拟机与网络连通性专项
/etc/sysconfig/network-scripts/ifcfg-ens33),必要时重启网络或系统:systemctl restart network 或 reboot。ping <CentOS_IP>;若仅 FileZilla 失败而其他访问正常,优先复查 防火墙与 虚拟网络模式。五、快速定位命令清单
systemctl status sshd、ss -tnlp | grep :22systemctl status vsftpd、netstat -an | grep ':21'firewall-cmd --zone=public --add-port=22/tcp --permanent && firewall-cmd --reloadsystemctl stop firewalld/var/log/secure,核对 /etc/vsftpd/ftpusers、/etc/vsftpd/user_list 与 /etc/pam.d/vsftpdip addrping <CentOS_IP>