基于ECS搭建FTP服务
创建资源
创建资源
- 在页面左侧,单击 云产品资源 下拉菜单,查看本次实验资源。
- 单击 免费开通 创建所需资源。
远程连接ECS服务器
- 打开系统自带的终端工具。
Windows:CMD或Powershell。
MAC:Terminal。
Windows用户请检查系统中是否安装有ssh工具。检查方法:
- 在终端中输入命令ssh -V。
- 出现如下结果说明已安装。
- 否则请下载安装OpenSSH。
- 在终端中输入连接命令 ssh [username]@[ipaddress]。将其中的 username 和 ipaddress 替换为云产品资源提供的ECS服务器的 用户和 弹性IP。
- 按照页面提示依次往下操作 , 其中登录密码为资源提供的ECS服务器的登录密码。
- 登录成功后会显示如下信息。
安装vsftpd
- 运行以下命令安装vsftpd。
yum install -y vsftpd
- 运行以下命令设置FTP服务开机自启动。
systemctl enable vsftpd.service
- 启动FTP服务。
systemctl start vsftpd.service
- 运行以下命令查看FTP服务监听的端口。
netstat -antup | grep ftp
配置vsftpd
vsftpd(very secure FTP daemon)是一款在Linux发行版中最受推崇的FTP服务器。vsftpd支持匿名访问和本地用户模式两种访问方式。匿名访问方式任何用户都可以访问搭建的FTP服务;本地用户模式只支持添加的本地用户访问搭建的FTP服务
==匿名用户模式和本地用户模式只可同时配置一种==
- 修改配置文件vsftpd.conf。
vim /etc/vsftpd/vsftpd.conf
- 按ESC键退出编辑模式,输入:wq 保存并退出vim。更改/var/ftp/pub目录的权限,为FTP用户添加写权限。
chmod o+w /var/ftp/pub/
- 重启FTP服务。
systemctl restart vsftpd.service
- 为FTP服务创建一个Linux用户。
adduser ftptest
- 为用户设置密码。
passwd ftptest
- 创建一个供FTP服务使用的文件目录。
mkdir /var/ftp/test
- 更改/var/ftp/test目录的拥有者为ftptest
chown -R ftptest:ftptest /var/ftp/test
- 修改vsftpd.conf配置文件
- 在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。`#使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。
- /etc/vsftpd/chroot_list`
- 重启FTP服务。 `#使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。
- /etc/vsftpd/chroot_list`
客户端测试
FTP客户端、Windows命令行工具或浏览器均可用来测试FTP服务器。(此步骤仅适用于本地用户,匿名模式无需进行测试操作)
说明:使用浏览器访问FTP服务器出错时,建议您清除浏览器缓存后再尝试。