配置FTP服务,要求不允许匿名用户站点访问,配置本地用户webgl,该用户对var/webhome目录具有所用权限,var/webhome目录为web服务的主目录,webgl账户可以上传、下载web站点资源,同时创建虚拟用户ftp2,仅对var/webhome有读权限
时间: 2024-03-24 12:41:33 浏览: 59
配置允许匿名用户上传的FTP服务器
好的,下面是具体的配置步骤:
1. 安装 vsftpd
使用以下命令安装 vsftpd:
```
sudo yum install vsftpd
```
2. 配置 vsftpd
编辑 /etc/vsftpd/vsftpd.conf 文件并进行以下更改:
```
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
tcp_wrappers=YES
```
这里设置了不允许匿名用户访问,启用了本地用户登录和写入权限,设置了本地用户的默认掩码为022,启用了日志记录,设置了用户列表等。
3. 添加用户
创建一个名为 webgl 的用户并设置密码:
```
sudo adduser webgl
sudo passwd webgl
```
创建虚拟用户 ftp2,添加用户的同时创建用户家目录:
```
sudo useradd -d /var/webhome -s /sbin/nologin ftp2
sudo passwd ftp2
```
4. 配置权限
给 webgl 用户赋予 var/webhome 目录的所有权限:
```
sudo chown -R webgl:webgl /var/webhome
sudo chmod -R 755 /var/webhome
```
给 ftp2 用户赋予 var/webhome 目录的只读权限:
```
sudo chown -R ftp2:ftp2 /var/webhome
sudo chmod -R 555 /var/webhome
```
5. 配置用户列表
打开 /etc/vsftpd/user_list 文件并添加以下内容:
```
webgl
ftp2
```
这个文件列出了允许登录的用户名列表。
6. 启动 vsftpd
启动 vsftpd 服务:
```
sudo systemctl start vsftpd
```
现在,webgl 用户可以上传和下载 var/webhome 目录下的文件,而 ftp2 用户只能读取 var/webhome 目录下的文件。
阅读全文