vsftpd服务之虚拟账号登录

vsftpd提供三种身份登录:实体用户、虚拟用户和匿名用户。

实体用户就是linux系统中已经存在的用户,可以直接登录上linux系统的。既然已经可以登录系统,可以直接用scp走ssh协议传输文件,没必要再通过ftp来获取文件了。

匿名用户就是开放了ftp,只要客户端能通过防火墙,就能访问到ftp服务器上的文件数据。这是极其危险的,所以应该避免。

我们关注的就是虚拟用户的配置和管理,整个过程如下:


创建新文件login.txt,文件内容如下:

kisinfoc          这一行是账号名

123456            这一行是明文存储的密码


文件格式:一行账号名,下一行是对应的密码


执行如下指令,将账号信息转换为数据库文件。

db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/account.db


在/etc/pam.d/目录下,新建一个文件ftp,写入内容如下:

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/account
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/account


注意:最后指向的数据库文件,没有带后缀“db”

 

在/etc/vsftpd目录下,新建一个目录VirtualUser,并在VirtualUser目录下新建一个跟虚拟账号名相同名字的文件,这个是虚拟账号的配置信息。新建一个文件,文件名为kisinfoc,写入内容如下:

local_root=/data/logs   这个指登录后,ftp的根目录
anon_upload_enable=NO   这些是用户的操作权限配置,可以按需要修改
anon_mkdir_write_enable=NO

anon_other_write_enable=NO

 

最后,修改主配置文件/etc/vsftpd/vsftpd.conf,改为如下内容


执行指令service vsftpd restart,重启vsftpd服务,这些配置就已经生效了。

 

如果按照上面步骤配置,最后ftp还是登录不上,就是selinux阻止了。

将selinux改成非强制性的,执行指令:

setenforce 0


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值