温馨提示×

CentOS下FileZilla连接问题解决

小樊
42
2025-11-23 17:22:05
栏目: 智能运维

CentOS下FileZilla连接问题排查与解决

一、先选对协议与端口

  • 推荐优先使用 SFTP(基于SSH):协议选 SFTP,端口 22,通常更稳定、穿透性更好。若使用 FTP,需额外部署并开放相关端口与服务。
  • 快速对比:
    • SFTP:协议 SFTP|端口 22|依赖 sshd|配置简单、安全性高
    • FTP:协议 FTP|端口 21(控制)+ 数据端口|依赖 vsftpd|需防火墙放行、配置更复杂
  • 在 FileZilla 站点管理器中按上述协议与端口填写,主机填写 CentOS 的 IP,用户名/密码为系统账户凭据。

二、SFTP连接失败排查(端口22)

  • 确认网络与网卡
    • 在 CentOS 执行:ip addr,确保网卡(如 ens33)已获取 IP;虚拟机需确认网络模式(桥接/NAT)与主机网络正常。
  • 检查并启动 SSH 服务
    • 安装:yum install -y openssh-server
    • 启动/开机自启:systemctl start sshd && systemctl enable sshd
    • 状态:systemctl status sshd
  • 防火墙放行
    • 临时放行:firewall-cmd --zone=public --add-port=22/tcp --permanent && firewall-cmd --reload
  • FileZilla 站点设置
    • 协议:SFTP,主机:CentOS_IP,端口:22,登录类型:正常,输入用户名与密码。
  • 常见现象与处理
    • “Connection refused”:多为 sshd 未运行IP/端口不对;检查 sshd 状态与 IP。
    • “Network error: Connection timed out”:多为 防火墙/网络不通;核对防火墙放行与虚拟机网络模式。

三、FTP连接失败排查(端口21)

  • 安装并启动 vsftpd
    • 安装:yum -y install vsftpd
    • 启动/开机自启:systemctl start vsftpd && systemctl enable vsftpd
    • 状态:systemctl status vsftpd
    • 端口监听:netstat -an | grep ':21'(应看到 0.0.0.0:21 LISTEN
  • 防火墙放行
    • firewall-cmd --zone=public --add-port=21/tcp --permanent && firewall-cmd --reload
  • 登录被拒(530 Login incorrect)
    • 检查 /etc/vsftpd/ftpusers/etc/vsftpd/user_list,若 root 被禁用,按需注释对应行后重启 vsftpd:systemctl restart vsftpd
  • 认证模块冲突(530 且日志指向 PAM)
    • 编辑 /etc/pam.d/vsftpd,将 auth required pam_shells.so 注释或替换为 auth required pam_nologin.so,再重启 vsftpd。此问题常见于使用 /sbin/nologin 等 shell 的 FTP 用户。

四、虚拟机与网络连通性专项

  • 虚拟网络设置
    • VMware 菜单“编辑”→“虚拟网络编辑器”选择“还原默认设置”;将 VMnet0 设为 桥接模式并桥接到主机网卡,确保 VMnet1/VMnet8 配置合理。
  • 系统与网络
    • 修正网卡配置(如 /etc/sysconfig/network-scripts/ifcfg-ens33),必要时重启网络或系统:systemctl restart networkreboot
  • 连通性自检
    • 从宿主机 ping <CentOS_IP>;若仅 FileZilla 失败而其他访问正常,优先复查 防火墙虚拟网络模式

五、快速定位命令清单

  • 服务与端口
    • SSH:systemctl status sshdss -tnlp | grep :22
    • FTP:systemctl status vsftpdnetstat -an | grep ':21'
  • 防火墙
    • 放行端口:firewall-cmd --zone=public --add-port=22/tcp --permanent && firewall-cmd --reload
    • 临时关闭(仅测试):systemctl stop firewalld
  • 认证与日志
    • FTP 登录失败:查看 /var/log/secure,核对 /etc/vsftpd/ftpusers/etc/vsftpd/user_list/etc/pam.d/vsftpd
  • 网络
    • 本机地址:ip addr
    • 连通性:ping <CentOS_IP>
  • 提示:生产环境不建议长期关闭防火墙,应按需放行端口并保留最小暴露面。

0