linux网络服务[VSFTP安全文件传输协议]——————虚拟用户验证实验、抓取ftp明文数据包、openssl+vsftpd 加密验证原理、以及加密验证过程

本文介绍了如何在Linux环境下通过VSFTP实现虚拟用户验证,确保安全的文件传输。详细步骤包括创建虚拟用户密码文件、配置PAM认证、设置加密验证,并利用openssl和vsftpd进行加密连接,防止明文数据包被截取。通过实验和讲解,展示了从无加密到SSL/TLS加密的全过程。
摘要由CSDN通过智能技术生成

1.虚拟用户验证实验

虚拟用户需要人为创建用户和密码,来代替匿名用户和本地账户。

映射用户(真实)只是为了给虚拟用户一个登录目录。

在这里插入图片描述

1)服务器建立虚拟用户密码文件:

[root@vsftpd-server ~]# vim /etc/vsftpd/vsftpd.user
a1 # 奇数行为用户
123456 # 偶数行为密码
a2
123456
a3
123456

2)用户密码文件转化为数据库:

[root@vsftpd-server ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd.user /etc/vsftpd/vsftpd.db
[root@vsftpd-server ~]# ll /etc/vsftpd/
total 40
-rw-r--r-- 1 root root     4 Aug 21 11:56 chroot_list
-rw------- 1 root root   131 Aug 21 14:29 ftpusers
-rw------- 1 root root   361 Jun 23  2016 user_list
-rw------- 1 root root  5150 Aug 21 14:35 vsftpd.conf
-rwxr--r-- 1 root root   338 Jun 23  2016 vsftpd_conf_migrate.sh
-rw-r--r-- 1 root root 12288 Aug 21 14:58 vsftpd.db # 登录之后用来验证的数据库文件,加密之后会大很多
-rw-r--r-- 1 root root    30 Aug 21 14:55 vsftpd.user

3)修改数据库权限,vsftp的要求:

[root@vsftpd-server ~]# cd /etc/vsftpd/
[root@vsftpd-server vsftpd]# chmod 600 vsftpd.db # 更改权限成功
[root@vsftpd-server vsftpd]# ll vsftpd.db 
-rw------- 1 root root 12288 Aug 21 14:58 vsftpd.db # 

4)创建映射用户,并指定他的用户目录:

[root@vsftpd-server vsftpd]# useradd -d /var/ftproot -s /sbin/nologin virtual
# 用户目录是/var/ftproot,之后的所有虚拟用户的登录目录就是这个目录。

5)建立支持虚拟用户的PAM(登录)认证文件,添加虚拟用户支持:

[root@vsftpd-server vsftpd]# cd /etc/pam.d/
[root@vsftpd-server pam.d]# ls
atd                  gdm-launch-environment  pluto         smartcard-auth            su-l
chfn                 gdm-password            polkit-1      smartcard-auth-ac         system-auth
chsh                 gdm-pin                 postlogin     smtp                      system-auth-ac
config-util          gdm-smartcard           postlogin-ac  smtp.postfix              systemd-user
crond                liveinst                ppp           sshd                      vlock
cups                 login                   remote        su                        vmtoolsd
fingerprint-auth     other                   rhn_register  subscription-manager      vsftpd # 默认登录文件
fingerprint-auth-ac  passwd                  runuser       subscription-manager-gui  xserver
gdm-autologin        password-auth           runuser-l     sudo
gdm-fingerprint      password-auth-ac        setup         sudo-i
[root@vsftpd-server pam.d]# vim vsftpd.pam # 新建一个

auth            required        pam_userdb.so   db=/etc/vsftpd/vsftpd # 调用了数据库文件
account         required        pam_userdb.so   db=/etc/vsftpd/vsftpd

6)修改主配置文件中:

[root@vsftpd-server ~]# vim /etc/vsftpd/vsftpd.conf

pam_service_name=vsftpd.pam # 修改用户登录文件
guest_enable=YES # 允许虚拟用户登录
guest_username=virtual # 映射用户
user_config_dir=/etc/vsftpd/dir # 虚拟用户的配置文件目录

7)建立虚拟用户的配置目录:

[root@vsftpd-server ~]# cd  /etc/vsftpd
[root@vsftpd-server vsftpd]# mkdir dir
[root@vsftpd-server vsftpd]# ls
chroot_list  dir  ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh  vsftpd.db  vsftpd.user

8)取消匿名用户的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值