TP服务进程(Very Secure FTP daemon,Vsftpd),Vsftpd在Unix/Linux发行版中最主流的FTP服务器程序,优点小巧轻快,安全易用、稳定高效、满足企业跨部门、多用户的使用(1000用户)等。非常安全。如何配置vsftpd服务器和测试FTP连接
软件包:vsftpd
FTP端口:21(建立连接); 22 (传输数据)
2、vsftpd 服务器配置
FTP Server(服务端)实验环境:关闭防火墙、selinux、2台机器
默认共享目录位置:/var/ftp
注意:共享目录权限
① vsftpd 服务器配置
(1)基本配置+文件夹、文件
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
yum install -y vsftpd (安装vsftpd)
systemctl start vsftpd (启动)
systemctl enable vsftpd (开机启动)
ss -ntpl (查看21端口是否开启)
ps aux | grep vsftpd (查看进程情况)
mkdir -p /var/ftp/upload (创建自己的共享目录)
touch /var/ftp/upload/test.txt (创建文件到共享目录)
(2)基本权限+编辑配置文件
cd /var/ftp/
chown -R ftp.ftp * (修改属主、组权限,不然不能修改和访问)
vim /etc/vsftpd/vsftpd.conf (编辑配置文件)
创建chroot_list文件
1. 创建文件:
使用`touch`命令创建`chroot_list`文件。
```bash
sudo touch /etc/vsftpd/chroot_list
```
2. 编辑文件:
使用`vim`或其他文本编辑器打开`chroot_list`文件。
```bash
sudo vim /etc/vsftpd/chroot_list
```
3. 添加例外用户:
在`vim`编辑器中,按`i`进入插入模式,然后输入要添加到例外列表的用户名。每个用户名占一行。
```
ftptest
```
如果您没有例外用户,则无需输入任何内容,但文件仍然需要创建。
4. 保存并退出:
在`vim`编辑器中,按`Esc`退出插入模式,然后输入`:wq`保存并退出。
重启vsftpd服务
在修改了配置文件或创建了必要的文件后,需要重启vsftpd服务以应用更改。
```bash
sudo systemctl restart vsftpd.service
```
配置安全组
确保您的安全组规则允许FTP流量通过。通常,这意味着您需要打开TCP端口21(FTP标准端口)以及您为被动模式设置的端口范围。
1. 登录ECS控制台:
使用您的云服务提供商的控制台登录到您的ECS实例。
2. 配置安全组:
找到您的ECS实例的安全组设置,并添加入站规则以允许FTP流量。
- **协议类型**:TCP
- **端口范围**:21(标准FTP端口)以及您为被动模式设置的端口范围(例如:20-21)
- **授权对象**:根据您的需要选择IP地址或IP地址段。如果您希望允许所有IP地址访问,则可以使用`0.0.0.0/0`,但请注意这可能会带来安全风险。
客户端测试
最后,使用FTP客户端软件或浏览器测试您的FTP服务器。
1. 打开FTP客户端:
在您的本地计算机上打开FTP客户端软件。
2. 输入服务器地址和端口:
输入您的FTP服务器的公网IP地址和端口号(通常是21)。
3. 输入用户名和密码:
输入您在vsftpd配置中设置的本地用户名和密码。
4. 连接并测试:
尝试连接到服务器,并检查是否可以上传、下载和删除文件。
如果在连接时遇到错误,请检查您的防火墙设置、安全组规则、vsftpd配置文件以及用户名和密码是否正确。
### 常见问题及解决方法
**连接失败:连接超时**:
检查您的服务器是否正在运行vsftpd服务。
检查防火墙和安全组规则是否允许FTP流量通过。
确认您的公网IP地址和端口号输入正确。
**登录失败:认证失败**:
确认您输入的用户名和密码正确无误。
检查`vsftpd.conf`配置文件中的用户认证设置。
**文件操作失败:权限问题**:
确认您的FTP用户有权限访问和操作指定的目录和文件。
检查`vsftpd.conf`配置文件中关于权限和目录设置的条目。
请确保在进行任何更改时都小心谨慎,并始终保留配置文件的备份,以便在需要时能够恢复到之前的状态。