安裝html
yum -y install vsftpd
設置開機啓動linux
systemctl enable vsftpd
啓動ftp服務web
systemctl start vsftpd.service
useradd -g root -d /home/wwwroot/asite -s /sbin/nologin ftpuser
注:表示新增一個ftpuser(用戶名),且指定上傳目錄在/home/wwwroot/asite下shell
若是後期想變動此用戶的上傳目錄到(/run/media/root/xxx/wwwroot/xxx.org),請使用下面的命令:安全
usermod -d /run/media/root/xxx/wwwroot/xxx.org ftpuser
設置用戶密碼服務器
passwd ftpuser
設置權限tcp
chown -R ftpuser:root /home/wwwroot/asite
配置selinux 容許ftp訪問home和外網訪問阿里雲
setsebool -P allow_ftpd_full_access on setsebool -P ftp_home_dir on
修改vsftp配置文件
路徑:/etc/vsftpd/vsftpd.conf
code
若是要禁用匿名用戶登陸FTP; 把anonymous_enable 項設置爲NO: anonymous_enable=NO
htm
設置local_enable爲YES容許本地用戶登陸: local_enable=YES
把write_enable setting設置爲YES容許本地用戶建立文件夾等操做: write_enable=YES
我使用的是阿里雲香港主機不須要配置,但必需在web控制檯添加安全規則, 添加默認21端口
防火牆用可能用到如下命令:
# 查看狀態 systemctl status firewalld
# 開啓防火牆 systemctl start firewalld
# 關閉防火牆 systemctl stop firewalld
# 查看已開放的端口 firewall-cmd --zone=public --list-ports
# 增長端口, 默認添加21的端口 firewall-cmd --permanent --zone=public --add-port=21/tcp
# 移除端口 firewall-cmd --zone=public --remove-port=42392/tcp --permanent
# 重載防火牆 firewall-cmd --reload
鏈接成功,但讀取目錄列表失敗
使用ftp鏈接成功,但目錄列表顯示不了,可能存在如下方面:
添加安全組端口(阿里雲,騰訊雲),包括21
添加安全組端口,vsftpd配置的端口地址段如:
# /etc/vsftpd/vsftpd.conf pasv_max_port=6666 pasv_min_port=5555
服務器發回了不可路由的地址。使用服務器地址代替
更改Filezilla設置,將傳輸設置中的傳輸模式更改成主動
。
參考文獻:
https://www.yuque.com/docs/sh... (Guoye的語雀)
https://www.cnblogs.com/sheng...
https://www.aliyun.com/jiaoch...