1 使用SSH登录ECS
系统 | 版本
CentOS | 7.7
直接申请免费体验,使用时间为一个小时。
在申请后,打开cmd使用 ssh root@<ECS IP>
进行连接。
2 在ECS上安装vsftpd
1.使用以下命令安装vsftpd yum install -y vsftpd
安装成功后会显示如下结果
Loaded plugins: fastestmirror
Determining fastest mirrors
base | 3.6 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/7): base/7/x86_64/group_gz | 153 kB 00:00:00
(2/7): epel/x86_64/group_gz | 95 kB 00:00:00
(3/7): epel/x86_64/updateinfo | 1.0 MB 00:00:00
(4/7): extras/7/x86_64/primary_db | 206 kB 00:00:00
(5/7): base/7/x86_64/primary_db | 6.1 MB 00:00:00 (6/7): updates/7/x86_64/primary_db | 4.5 MB 00:00:00
(7/7): epel/x86_64/primary_db | 6.9 MB 00:00:00
Resolving Dependencies--> Running transaction check---> Package vsftpd.x86_64 0:3.0.2-27.el7 will be installed--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================
Package Arch Version Repository Size
========================================================================================================================
Installing:
vsftpd x86_64 3.0.2-27.el7 base 172 k
Transaction Summary
========================================================================================================================
Install 1 Package
Total download size: 172 k
Installed size: 353 k
Downloading packages:
vsftpd-3.0.2-27.el7.x86_64.rpm | 172 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
Installing : vsftpd-3.0.2-27.el7.x86_64 1/1
Verifying : vsftpd-3.0.2-27.el7.x86_64 1/1
Installed:
vsftpd.x86_64 0:3.0.2-27.el7
Complete!
1.设置vsftpd开机自启动 systemctl enable vsftpd.service
2.启动FTP服务 systemctl start vsftpd.service
3.查看FTP使用的网络端口 netstat -antup | grep ftp
如下结果表明FTP正在监听21端口
3 配置vsftpd
1.使用编辑器编辑 /etc/vsftpd/vsftpd.conf
,删除 #anon_upload_enable=YES
前的#,开启匿名上传权限。
2.按ESC键退出编辑模式,输入 :wq
保存并退出vim。更改 /var/ftp/pub
目录的权限,为FTP用户添加写权限。 chmod o+w /var/ftp/pub/
1.重启FTP服务。 systemctl restart vsftpd.service
本地用户模式
1.为FTP服务创建一个Linux用户。 adduser ftptest
2.为用户设置密码,这里我设置为123456。 passwd ftptest
3.创建一个供FTP服务使用的文件目录。 mkdir /var/ftp/test
4.更改 /var/ftp/test
目录的拥有者为ftptest。 chown -R ftptest:ftptest /var/ftp/test
5.修改 vsftpd.conf
配置文件。
1.配置FTP为主动模式请执行如下命令:
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录
2.配置FTP为被动模式请执行如下命令:
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录
1.在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。vim /etc/vsftpd/chroot_list
2.重启FTP服务。systemctl restart vsftpd.service
4 使用浏览器进行登录
5 总结
学习如何使用CentOS系统搭建FTP服务
1.使用yum命令安装vsftpd
2.使用systemctl命令启用vsftpd
3.修改/etc/vsftpd/vsftpd.conf调整用户模式
4.使用adduser创建本地用户,mkdir创建新文件夹
5.使用systemctl restart vsftpd.service命令重启vsftpd使修改后的配置生效
6.使用浏览器进行登录