☰
银河麒麟系统解决FTP无法连接问题
2026/9/29 1:59:47 网站建设 项目流程

在安装好ftp,vsftpd之后,终端运行ftp x.x.x.x(ip),输入用户名和密码后,再ls出现refused等字眼,则问题核心在于FTP的权限配置和被动模式设置。

解决550 Permission denied(权限不足)

这通常是因为启用了chroot_local_user=YES,但FTP用户的家目录又允许写入,触发了 vsftpd 的安全机制。

  1. 方法一(推荐):给家目录去除写权限,创建子目录用于上传

    sudo chmod a-w /home/ronghe # 去除家目录的写权限 sudo mkdir -p /home/ronghe/upload # 创建一个专门用于上传的子目录 sudo chown ronghe:ronghe /home/ronghe/upload # 确保FTP用户对该子目录有所有权
  2. 完成后,使用ftp登录后,cd upload即可上传文件。

  3. 方法二:在配置中允许chroot目录可写(较便捷,但安全性略低)
    编辑/etc/vsftpd/vsftpd.conf,添加或修改参数:

    allow_writeable_chroot=YES

    保存后执行sudo systemctl restart vsftpd重启服务即可。

🔧 解决Passive mode refused(被动模式被拒绝)

这通常是因为配置文件里pasv_enable被设为了NO,或者被动模式需要的端口没在防火墙放行。

  1. 修改 vsftpd 配置
    编辑/etc/vsftpd/vsftpd.conf:

    pasv_enable=YES pasv_min_port=60000 pasv_max_port=61000

    保存后重启服务:sudo systemctl restart vsftpd。

  2. 在防火墙放行端口
    如果系统开了防火墙(firewalld),需要放行这些端口:

    sudo firewall-cmd --permanent --add-port=60000-61000/tcp sudo firewall-cmd --reload
  3. 如果用的是 iptables 或 ufw,也请对应放行60000-61000/tcp端口。

配置修改完成后,记得用sudo systemctl restart vsftpd重启服务让设置生效。

就个人使用情况而言,pluma/etc/vsftpd/vsftpd.conf,修改pasv_enable=YES即可成功解决。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询