搭建FTP站点
简介
vsftpd(very secure FTP daemon)是Linux下的一款小巧轻快、安全易用的FTP服务器软件。本教程介绍如何在HCE 2.0上安装并配置vsftpd。
准备工作
- 准备一台ECS实例,并分配公网IP或者弹性公网IP(EIP)。
- 安全组的入方向规则已放行21端口。
操作步骤
- 安装vsftpd软件并启动。
- 执行如下命令安装vsftpd。
dnf install vsftpd
- 执行如下命令启动vsftpd服务。
systemctl start vsftpd
- 执行如下命令查看服务状态。
systemctl status vsftpd
如果显示active (running)则表示启动成功,类似效果如下图。
如果需要将vsftpd设置为开机自启动,则需要再执行如下命令。
systemctl enable vsftpd
- 执行如下命令安装vsftpd。
- 为FTP服务添加用户。
- 执行如下命令为FTP服务创建一个用户。
adduser ftp
- 执行如下命令为ftp用户设置密码。
passwd ftp
- 执行如下命令为FTP服务创建一个用户。
- 配置vsftpd服务。
- 执行如下命令为FTP服务创建目录和文件(可根据个人需要修改目录)。
mkdir -p /data/ftp/ touch /data/ftp/test.txt
- 执行如下命令将上述目录的拥有者设置为新用户。
chown -R ftp:ftp /data/ftp/
- 打开“/etc/vsftpd/vsftpd.conf”文件,找到如下参数进行配置。
# 监听IPv4 sockets。 listen=YES # 根据需要选择是否配置监听IPv6 listen_ipv6=YES # 在配置文件的末尾添加下列参数: # 设置本地用户登录后所在目录。 local_root=/data/ftp/hce #全部用户被限制在主目录。 chroot_local_user=YES #开启被动模式。 pasv_enable=YES pasv_address=<FTP服务器公网IP地址> chroot_list_enable=NO # 是否允许用户访问其他目录 # 如果chroot_list_enable配置为YES,则需要配置该选项;该配置为一个文件,包含哪些用户可以访问其他目录 # chroot_list_file=/etc/vsftpd/chroot_list # 设置被动模式下,可使用的端口范围,建议把端口范围设置在一段比较高的范围内,有助于提高访问FTP服务器的安全性。 # 可使用的端口范围的最小值 pasv_min_port=<port number> # 可使用的端口范围的最大值。 pasv_max_port=<port number>
除上述提及的参数,其他参数保持默认值即可。
无论是否配置chroot_list_enable,都需要创建“/etc/vsftpd/chroot_list”文件。
- 执行如下命令重启vsftpd服务。
systemctl restart vsftpd
- 执行如下命令为FTP服务创建目录和文件(可根据个人需要修改目录)。
- 验证。
- 执行如下命令查看vsftpd服务所使用的端口。
netstat -natp | grep vsftpd
默认情况下所使用的端口是21。
- 在安全组界面,入方向放开21端口和上述配置的5000~5010端口。
- 在windows文件管理器中输入ftp://<FTP服务器公网IP>:21访问FTP服务,输入密码后效果如下图。
- 执行如下命令查看vsftpd服务所使用的端口。