centos7的ftp如何限制后(4)允许WEB管理员上传和下载文件,但是禁止上传后缀名为.doc .docx .xlsx的文件。
时间: 2024-04-17 22:25:09 浏览: 38
你可以通过以下步骤来限制CentOS 7上的FTP,允许Web管理员上传和下载文件,但禁止上传后缀名为.doc、.docx和.xlsx的文件:
1. 首先,安装vsftpd(Very Secure FTP Daemon)软件包。运行以下命令:
```
sudo yum install vsftpd
```
2. 安装完成后,编辑vsftpd的配置文件。运行以下命令打开配置文件:
```
sudo vi /etc/vsftpd/vsftpd.conf
```
3. 在配置文件中找到并确保以下行的值如下:
```
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_min_port=xxxx
pasv_max_port=xxxx
```
请注意,`pasv_min_port`和`pasv_max_port`是用于被动模式的端口范围。确保这些端口范围不与其他服务冲突,并替换为适当的值。
4. 在配置文件的末尾添加以下内容(如果已存在,请更新):
```
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
```
5. 创建一个用户列表文件。运行以下命令创建并编辑该文件:
```
sudo vi /etc/vsftpd/user_list
```
6. 在用户列表文件中添加允许上传和下载的Web管理员用户名,每行一个用户名。保存并关闭文件。
7. 创建一个目录,用于存储FTP用户的文件。运行以下命令:
```
sudo mkdir /home/ftp
```
8. 设置该目录的权限,以便FTP用户可以在其中上传和下载文件。运行以下命令:
```
sudo chmod 777 /home/ftp
```
9. 为禁止上传指定后缀名的文件,我们需要使用`vsftpd.conf`文件中的`chroot_local_user`选项结合`local_umask`选项。打开vsftpd配置文件:
```
sudo vi /etc/vsftpd/vsftpd.conf
```
10. 找到`local_umask`行,并将其更改为以下值:
```
local_umask=022
```
11. 重启vsftpd服务以使更改生效:
```
sudo systemctl restart vsftpd
```
现在,你的CentOS 7上的FTP服务器应该已经配置完成,允许Web管理员上传和下载文件,但禁止上传后缀名为.doc、.docx和.xlsx的文件。