CentOS Linux Vps安装配置FTP步骤

说白了,在CentOS VPS上装FTP(用vsftpd)就这几步,但坑不少。

先说最重要的,装完之后必须改权限。
比如用户abc家目录是/var/www/,直接给所有者7 7 7 权限?大错特错!去年我们跑那个项目,就因为这个被客户骂死。
得用chown -R abc:ftpgroup /var/www/把属主改成abc,再用chmod 7 5 5 /var/www/给权限——所有者读写执行,组和其他只读执行。
想让人家能上传?chmod g+w /var/www/临时给组写权限,但记得用完就改回来。
我一开始也以为chroot就完事了,后来发现不对,还得加allow_writeable_chroot=YES(注意:这个参数要vsftpd 3 .0.2 以上版本才支持)。

另外一点,防火墙千万不能忘。
直接firewall-cmd --zone=public --add-port=2 1 /tcp --permanent开放端口,不然连不上。
但说实话挺坑的,有时候firewall-cmd没生效,得重启整个服务firewall-cmd --reload。
等等,还有个事,SELinux可能捣乱,比如直接访问目录报错,临时用setenforce 0看看是不是它干的,但别长期这么干。

最后提醒个坑:默认用户家目录是/home/abc,如果直接复制/var/www/过来,用户进FTP还是能看到所有文件——这叫"雪崩效应",前面一个小延迟把后面全拖垮了。
正确做法是创建用户时指定根目录为/var/www/,用useradd abc -g ftpgroup -d /var/www/ -m,这样用户一登录就被锁在当前目录里。

建议用强密码,别用1 2 3 如果传输敏感文件,不如直接上SFTP,安全多了。
想省事?试试宝塔面板,一键装FTP,但底层原理还是得懂。

Linux系统搭建本地FTP后,无法登录怎么解决?

直接改命令:getsebool-a|grepftp,找到ftp_home_dir_>off,改off为on,执行setsebool-Pftp_home_dir=1 重启服务器,本地账户登录搞定。

如何用FileZilla在Linux上进行FTP操作

Linux装FileZilla就这些。

更新包用sudo apt-get update。
装软件用sudo apt-get install filezilla。

启动程序用filezilla命令。

SFTP默认端口2 2 ,别改。

填IP和用户名密码就行。

连不上先ping服务器IP。
防火墙关了2 2 端口。

用户名密码对不对。
目录权限也要有。

错了看日志,提示啥改啥。