vsftpd服务器结合mysql实现虚拟用户登录

1、安装所需软件yum -y install vsftpd mysql-server mysql-devel pam_mysql,注意的是pam_mysql在epel源中。

2、登录mysql服务器创建一个vsftpd库,库中有users表,表中插入的name字段有tom和jerry。然后新建一个数据库登录用户vsftpd并授权select权限。

3、在/etc/pam.d/目录下单独创建vsftpd.mysql文件,内容如下。注意的是user=“数据库的登录用户名”,passwd=“数据库的登录用户密码”,host=“数据库所在的主机IP”,db=“数据库中的库名”,table=“库中的表名”,usercolumn=“表中的虚弥用户名字段”,passwdcolumn=“表中的虚弥用户登录密码字段”,crypt值为2表明在插入数据时候密码通过password(  )函数进行加密、值为0是表明密码没有加密的方式。

4、创建虚拟用户映射的本地用户。

5、修改vsftpd配置文件/etc/vsftpd/vsftpd.conf如下:

anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES

guest_enable=YES         启动虚弥用户模式
guest_username=virtual     映射到本地的用户名(用在数据库中定义的用户登录vsftpd服务器时候,会映射到此用户)    
 

6、重启vsftpd服务后使用虚拟用户tom登录成功。

7、为tom和jerry这两个虚拟账户分别配置各自的配置文件,在/etc/vsftpd/vsftpd.conf配置文件中定义虚拟用户配置文件的路径如下。并在此路径下分别创建以用户名命名的用户配置文件,各自用户的配置文件的内容如下。


8、重启服务后,进行测试。使用tom登录后能够上传文件,而jerry登录后不能上传文件。


vsftpd.conf配置文件说明:

anonymous_enable=YES            允许匿名用户登录

anon_upload_enable=YES         允许匿名用户上传文件

anon_mkdir_write_enable=YES     允许匿名用户创建文件

anon_other_write_enable=YES     允许匿名用户删除文件

local_enable=YES       允许本地用户登录

write_enable=YES      允许本地用户有写权限

chroot_local_user=YES    锁定所有用户在其家目录


chroot_list_enable=YES

chroot_list_file=/PATH/TO/FILE         锁定特定的用户在其家目录


/etc/vsftpd/ftpusers        此文件里的用户被禁止登录(通过pam自身的方式进行限制)


userlist_enable=YES

userlist_deny=YES | NO

/etc/vsftpd/user_list                如果userlist_deny 为YES,则此文件里的用户被禁止登录(默认是禁止)





  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值