Day 01 基于ECS搭建FTP服务
创建资源
首先进去网页开通免费的ECS服务器
这边比较重要的是==弹性ip==也就是公网ip,然后是用户名、密码
远程连接ECS服务器
打开ssh
使用ssh连接服务器。
windows 也可以使用==CMD==或==Powershell==
在cmd中输入 ==ssh -V==
出现如下结果说明已安装。
连接
在终端中输入以下代码进行连接ECS
ssh 用户名@弹性IP |
出现黄色框的字就是连接成功了
安装vsftpd
vsftpd(very secure FTP daemon)是一款在Linux发行版中最受推崇的FTP服务器。
- 运行以下命令安装vsftpd。
yum install -y vsftpd |
出现==Complete!==就是安装成功了
- 运行以下命令设置FTP服务开机自启动。
systemctl enable vsftpd.service |
- 启动FTP服务。
systemctl start vsftpd.service |
- 运行以下命令查看FTP服务监听的端口。
netstat -antup | grep ftp |
配置vsftpd
vsftpd支持匿名访问和本地用户模式两种访问方式。
匿名访问方式任何用户都可以访问搭建的FTP服务;
本地用户模式只支持添加的本地用户访问搭建的FTP服务。
匿名用户模式
- 修改配置文件vsftpd.conf。
vim /etc/vsftpd/vsftpd.conf |
打开匿名上传权限,写入以下代码
anon_upload_enable=YES |
写好后按ESC键,输入==:wq==加回车就可退出编辑模式。这是Linux的vim编辑器。感兴趣的可以了解一下vim的语法vim
- 更改/var/ftp/pub目录的权限,为FTP用户添加写权限。
chmod o+w /var/ftp/pub/ |
- 重启FTP服务。
systemctl restart vsftpd.service |
本地用户模式
- 为FTP服务创建一个Linux用户。ftptest就是用户名
adduser ftptest |
为用户设置密码。设置ftptest的密码
passwd ftptest |
这边记住输入密码都是不会显示的
- 创建一个供FTP服务使用的文件目录。
mkdir /var/ftp/test |
- 更改/var/ftp/test目录的拥有者为ftptest。
chown -R ftptest:ftptest /var/ftp/test |
修改vsftpd.conf配置文件。
配置FTP为主动模式请执行如下命令:
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 |
配置FTP为被动模式请执行如下命令:
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 |
- 在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单。
#使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。 |
说明: 没有例外用户时,也必须创建chroot_list文件,内容可为空。
- 重启FTP服务。
systemctl restart vsftpd.service |
客户端测试
ftp地址: ftp://弹性ip:21
使用浏览器或者ftp工具进行连接。输入地址、用户名、密码就可以正常访问了。
这里因为没有文件,所以都是空白