网络系统管理技能大赛|debian-vsftpd

Ftp(vsftpd)

使用ftp服务上传网页代码。

使用vsftpd服务;

ftp的上传文件根目录即为web服务器的网站根目录;

ftp登录的用户为ftpuser;

通过ftp上传的文件用户为webuser, 文件权限为644,目录权限为755。

安装vsftpd软件包

1
root@Server01:~# apt install -y vsftpd db5.3-util ftp

创建用户

1
2
3
root@Server01:~# useradd webuser
root@Server01:~# mkdir /home/webuser -p
root@Server01:~# chmod 777 /home/webuser/

创建ftpuser虚拟用户

1
2
3
4
root@Server01:~# cd /etc/
root@Server01:/etc# vim vuser #虚拟用户存放位置
ftpuser #虚拟用户
Chinaskills20 #虚拟用户密码
1
root@Server01:/etc# db5.3_load -T -t hash -f vuser vuser.db
1
2
3
4
vim /etc/pam.d/vsftpd.vu

auth required pam_userdb.so db=/etc/vuser
account required pam_userdb.so db=/etc/vuser

编辑vsftpd主配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
root@Server01:~# cp -a /etc/vsftpd.conf /etc/vsftpd.conf_bak #备份好一份
root@Server01:~# grep -v "#" /etc/vsftpd.conf > demo #过滤有用文件到1内
root@Server01:~# cat demo > /etc/vsftpd.conf #将有用的文件重定向到主配置文件内
root@Server01:~# vim /etc/vsftpd.conf ##编写主配置文件

guest_enable=YES ##开启虚拟用户模式
guest_username=webuser ##登录的本机用户
allow_writeable_chroot=YES
write_enable=YES ##允许写入
anon_umask=022 ##创建权限为755
anon_upload_enable=YES ##允许用户上传文件
anon_mkdir_write_enable=YES ##允许用户创建目录
anon_other_write_enable=YES ##允许用户写入
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd.vu ##一定要更改为vsftp.vu
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO

重启服务

1
systemctl restart vsftpd
1
2
3
4
ftp 127.0.0.1
使用ftpuser登录

然后mkdir 一个目录

3519808348

可以看到所有者和权限跟题目一样

上传文件的话权限也一样

3204784127