碰了几次壁,我整理一下分析自己在阿里云上成功安装FTP的教程。
1、使用root用户进入云服务器。
2、rpm -qa|grep vsftpd 查看是否安装了ftp,一般阿里云服务器你以前没安装过,应该是没有安装过。 (没有装过不会有任何显示)
3、若是已经安装过的话使用:rpm -e vsftpd 进行卸载。 (没有装过会有显示not found)
4、然后安装 vsftpd : yum -y install vsftpd
5、systemctl start vsftpd.service 启动
6、添加ftp目录添加账号并设置密码 useradd -d /ftp -s /sbin/nologin ftpuser (ftpuser是自定义用户名)
7、设置密码:passwd ftpuser
8、去vsftpd配置 vi /etc/vsftpd/vsftpd.conf。
9、阿里云的默认是可以匿名访问的,想要不匿名访问就将anonymous_enable=YES 改为 anonymous_enable=NO,进行修改按Insert或i键就能修改
10、
anonymous_enable=NO # 不允许匿名访问,禁用匿名登录
chroot_local_user=YES # 启用限定用户在其主目录下
use_localtime=YES # 使用本地时(自行添加)
chroot_list_enable=YES
local_enable=YES # 允许使用本地帐户进行FTP用户登录验证
allow_writeable_chroot=YES # 如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
xferlog_enable=YES # 启用上传和下载的日志功能,默认开启。
local_umask=022 # 设置本地用户默认文件掩码022
# FTP上本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022
保存修改,按ESC键,输入:wq
11、ftp默认只有读操作,所以我们给ftp权限就只有读chmod a-w /var/ftp 这样是避免出错我就是出现了这个错(500 OOPS: vsftpd: refusing to run with writable root inside chroot()) 然后在ftp下面建一个文件夹然后赋予这个文件夹所有权限就OK了
12、启动ftp:systemctl start vsftpd.service
13、重启:systemctl restart vsftpd.service
14、阿里云的话还需要到阿里云服务器安全组里面开放21端口
【卸载部分】(如果没有成功的话): rpm -e vsftpd
userdel -r newuser