vsftpd开启、管理、创建虚拟用户

您所在的位置:网站首页 vsftpd加密 vsftpd开启、管理、创建虚拟用户

vsftpd开启、管理、创建虚拟用户

2023-12-16 03:04| 来源: 网络整理| 查看: 265

vsftpd开启、管理、脚本创建虚拟用户

vsftpd服务是Linux系统中非常安全和推崇的FTP服务器程序。这次主要讲解如何开启、管理用户等一些列vsftpd常用操作。

一、vsftpd的配置文件

一般情况下ftp的配置文件在**/etc/vsftpd/vsftpd.conf中,其中还有一个用户列表也在/etc/vsftpd**之中。图1.1 配置文件默认情况下有以下几个功能是开启的。图1.2 正常情况下安装好vsftpd后正常开启,关闭防火墙就可以正常使用ftp功能了,并且默认为匿名用户登陆。图1.3 图1.1 在这里插入图片描述 图1.2 在这里插入图片描述 图1.3 在这里插入图片描述

二、vsftpd下载使用

服务开启后我们应该怎么从站点中下载文件呢?那么首先我要在站点中放一些文件进去。图2.1**/var/ftp为vsftpd服务的站点路径。创一个名为test.txt**的文件。用一台win10作为客户机去接收ftp文件。图2.2 图2.1在这里插入图片描述 图2.2 在这里插入图片描述 在这里插入图片描述

三、vsftpd上传

在使用了下载之后就需要有上传的操作,上一步操作时在匿名用户模式下操作的,这次是在已有用户的模式下上传文件的。图3.1 图3.1 在这里插入图片描述 在这里插入图片描述

四、vsftp用户管理

刚才上一步中,lisi将文件上传到服务端上,但是这存在一个非常严重的安全隐患。图4.1lisi用户可以随意进出系统目录。那我们该如何限制lisi用户呢?进入vsftpd.conf配置文件查找chroot_local_user=YES这段文字并且开启这项功能就可以限制lisi用户的行动了。图4.2 图4.1 在这里插入图片描述 图4.2 在这里插入图片描述 在这里插入图片描述 我们也可以管理user_list来管理用户的登录。图4.3 图4.3 在这里插入图片描述 在这里插入图片描述

五、vsftpd虚拟用户创建

有时我们需要使用虚拟用户登录vsftpd服务,而不需要使用系统内存在的用户登陆。这样也可以增加ftp的安全性能。

在**/etc/vsftpd**路径下创建vuser文件。这一步是为了存放虚拟用户的用户名和密码。也是为了下一步做准备。将用户名和密码输入到vsuser中去,其中奇数行为用户名,偶数行为密码。为了不让其他用户能够看见其中的密码,于是将权限设置为600.创建vuser用户在shell上无法登陆,并且开启pam认证功能。在**/etc/pam.d**中创建vsftpd.vu文件用于开启pam。修改vsftpd.conf主配置文件。echo “guest_enable=YES” >> /etc/vsftpd/vsftpd.conf echo “guest_username=vuser” >> /etc/vsftpd/vsftpd.conf echo "allow_writeable_chroot=YES 这里我用脚本进行自动化创建。 #!/bin/bash #关闭防火墙 systemctl stop firewalld setenforce 0 #判断是否安装了vsftpd服务 while true do rpm -q vsftpd &> /dev/null if [ $? -eq 0 ];then echo "已安装了vsftpd服务" break else echo "正在安装vsftpd" yum install vsftpd -y &> /dev/null rpm -q vsftpd &> /dev/null if [ $? -eq 0 ];then echo "安装成功" break else echo "安装失败" read -p "是否再次安装?(y/n)" a if [ $a = "y" ];then continue else echo "退出脚本" exit 1 fi fi fi done #创建虚拟用户 touch /etc/vsftpd/vuser while true do read -p "请输入一个用户名:" yhm echo "$yhm" >> /etc/vsftpd/vuser read -p "请输入密码:" mima echo "$mima" >> /etc/vsftpd/vuser read -p "还要再添加虚拟用户吗?(y/n)" xz if [ $xz = "y" ];then continue else echo "用户添加完毕。" break fi done #将vuser转换成数据库文件 db_load -T -t hash -f /etc/vsftpd/vuser /etc/vsftpd/vuser.db #修改vuser的权限为600 chmod 600 /etc/vsftpd/vuser* #创建vuser用户shell无法登陆 useradd -d /opt/vuser -s /sbin/nologin vuser #编辑pam认证 touch /etc/pam.d/vsftpd.vu echo "auth required pam_userdb.so db=/etc/vsftpd/vuser" > /etc/pam.d/vsftpd.vu echo "account required pam_userdb.so db=/etc/vsftpd/vuser" >> /etc/pam.d/vsftpd.vu #修改主配置文件 sed -i '/pam_service_name/s/vsftpd/vsftpd.vu/' /etc/vsftpd/vsftpd.conf echo "guest_enable=YES" >> /etc/vsftpd/vsftpd.conf echo "guest_username=vuser" >> /etc/vsftpd/vsftpd.conf echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf #修改权限 sed -i '/anon_upload_enable/s/#/ /' /etc/vsftpd/vsftpd.conf sed -i '/anon_mkdir_write_enable/s/#/ /' /etc/vsftpd/vsftpd.conf #开启vsftpd服务 echo "开启vsftpd服务" systemctl restart vsftpd 总结

vsftp服务在修改配置文件时要注意开启的权限和用户列表是否开启。在添加虚拟用户时需要注意将vuser文件的权限设置成600。这里有亲自测试的结果。 在这里插入图片描述 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3