文章目录
一、环境搭建
环境 | ip |
---|---|
客户端(system2) | 192.168.56.129 |
服务端(system1) | 192.168.56.128 |
二、配置匿名用户ftp
1.关闭防火墙和selinux
[root@system1 ]# systemctl stop firewalld.service
[root@system1 ]# setenforce 0
[root@system2 ]# systemctl stop firewalld.service
[root@system2 ]# setenforce 0
2.在服务端安装服务以及配置服务
[root@system1 ]# yum -y install vsftpd
[root@system1 ]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service'
[root@system12 ]# systemctl start vsftpd
[root@system1 ]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES \\允许启动匿名用户
anon_upload_enable=YES \\允许启动上传
anon_mkdir_write_enable=YES \\允许创建读取
[root@system1 ]# chmod 777 /var/ftp/
[root@system1 ]# systemctl restart vsftpd.service
[root@system1 ]# yum -y install lftp
[root@system2 ]# lftp -u ftp 192.168.56.128
口令:
lftp ftp@192.168.56.128:~> ls
drwxr-xr-x 2 0 0 6 Oct 30 19:45 pub
lftp ftp@192.168.56.128:/> cd /pub
lftp ftp@192.168.56.128:/pub> ls
lftp ftp@192.168.56.128:/pub> ls
-rw-r--r-- 1 0 0 0 Feb 18 10:00 aaa
drwxr-xr-x 2 0 0 6 Feb 18 10:00 abc
lftp ftp@192.168.56.128:/pub> mkdir def
mkdir 成功, 建立 `def'
lftp ftp@192.168.56.128:/pub> ls
-rw-r--r-- 1 0 0 0 Feb 18 10:00 aaa
drwxr-xr-x 2 0 0 6 Feb 18 10:00 abc
drwx------ 2 14 50 6 Feb 18 10:07 def
lftp ftp@192.168.56.128:/pub> rm -f aaa
rm 成功, 删除 `aaa'
lftp ftp@192.168.56.128:/pub> ls
drwxr-xr-x 2 0 0 6 Feb 18 10:00 abc
drwx------ 2 14 50 6 Feb 18 10:07 def
验证
三、配置虚拟用户
1建立虚拟FTP用户数据库文件
[root@system1 ~]# yum -y install db4*
[root@system1 ~]# echo 'tom' >> /etc/vsftpd/vu.list
[root@system1 ~]# echo '123' >> /etc/vsftpd/vu.list
[root@system1 ~]# echo 'jerry' >> /etc/vsftpd/vu.list
[root@system1 ~]# echo '456' >> /etc/vsftpd/vu.list
[root@system1 ~]# cat /etc/vsftpd/
ftpusers vsftpd.conf vu.list
user_list vsftpd_conf_migrate.sh
[root@system1 ~]# cat /etc/vsftpd/vu.list
tom
123
jerry
456
[root@system1 ~]# db_load -T -t hash -f /etc/vsftpd/user_list /etc/vsftpd/vu.db
[root@system1 ~]# cd /etc/vsftpd/
[root@system1 vsftpd]# ls
ftpusers user.db user_list vsftpd.conf vsftpd_conf_migrate.sh
[root@system1 vsftpd]# vim vu.db
[root@system1 vsftpd]# chmod 600 /etc/vsftpd/user*
[root@system1 vsftpd]# ll
总用量 32
-rw-------. 1 root root 125 10月 31 03:45 ftpusers
-rw-------. 1 root root 12288 2月 18 18:24 vu.db
-rw-------. 1 root root 361 10月 31 03:45 user_list
-rw-------. 1 root root 5142 2月 18 17:57 vsftpd.conf
-rwxr--r--. 1 root root 338 10月 31 03:45 vsftpd_conf_migrate.sh
2、创建FTP根目录及虚拟用户映射的系统用户
[root@system1 ~]# useradd -d /var/ftproot -s /sbin/nologin vftp
[root@system1 ~]# chmod 755 /var/ftproot/
[root@system1 ~]# ll -d /var/ftproot/
drwxr-xr-x. 2 vftp vftp 62 2月 18 19:18 /var/ftproot/
3、添加支持配置
[root@system1 ~]# cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
[root@system1 ~]# vim /etc/pam.d/vsftpd
[root@system1 ~]# echo 'guest_enable=YES' >> /etc/vsftpd/vsftpd.conf
[root@system1 ~]# echo 'guest_username=vftp' >> /etc/vsftpd/vsftpd.conf
[root@system1 ~]# echo 'user_config_dir=/etc/vsftpd/vusers_dir' >> /etc/vsftpd/vsftpd.conf
[root@system1 ~]# echo 'allow_writeable_chroot=YES' >> /etc/vsftpd/vsftpd.conf
[root@system1 ~]# mkdir /etc/vsftpd/vusers_dir
[root@system1 ~]# ll /etc/vsftpd/
总用量 36
-rw-------. 1 root root 125 10月 31 03:45 ftpusers
-rw-------. 1 root root 361 10月 31 03:45 user_list
-rw-------. 1 root root 5219 2月 18 19:21 vsftpd.conf
-rwxr--r--. 1 root root 338 10月 31 03:45 vsftpd_conf_migrate.sh
-rw-------. 1 root root 12288 2月 18 19:18 vu.db
-rw-------. 1 root root 18 2月 18 19:17 vu.list
drwxr-xr-x. 2 root root 6 2月 18 19:21 vusers_dir
[root@system1 ~]# echo 'anon_upload_enable=YES' >> /etc/vsftpd/vusers_dir/tom
[root@system1 ~]# echo 'anon_mkdir_write_enable=YES' >> /etc/vsftpd/vusers_dir/tom
[root@system1 ~]# touch /etc/vsftpd/vusers_dir/jerry
[root@system1 ~]# systemctl start vsftpd
[root@system1 ~]# ss -antlp
验证
四配置系统用户
[root@system1 ~]# useradd 123456
[root@system1 ~]# passwd 123456
验证