实战vsftp针对用户和IP访问控制

实战vsftp针对用户和IP访问控制

本文将介绍如何通过vsftp针对用户和IP访问控制。

vsftp 可以单独对IP段进行访问限制。
也可以结合pam,对用户和IP段进行访问限制。
当然这里的用户,有2种,一种是os上的用户,一种是vsftp建立的虚拟用户。

如果需要虚拟用户访问控制的,可以参考这个博主的帖子,非常详细
https://www.cnblogs.com/yizhipanghu/p/14101219.html

pam_access认证模块介绍
http://bbs.chinaunix.net/thread-472046-1-1.html

1.安装vsftp服务

yum install -y vsftpd 

创建一个测试用户
useradd -m -d /home/test test 

设置密码
echo "test"| passwd --stdin test

启动vsftp
systemctl start vsftpd

2.vsftp基于IP段的访问控制

优点: 配置简单
缺点: 不够灵活,只能对IP段限制

修改/etc/vsftpd/vsftpd.conf 需要有下面这条配置
tcp_wrappers=YES

vsftpd 所有的ip都不可以访问
# echo "vsftpd:all:Deny" >> /etc/hosts.deny

只允许192.168.5.1访问
# echo "vsftpd:192.168.5.1:Allow" >> /etc/hosts.allow
允许策略,可以用*号,也可以写多行
vsftpd:196.168.0.*:allow

重启vsftpd 
# systemctl restart vsftpd 

然后ftp测试即可。

3.vsftp基于OS本地用户和IP段的访问控制

优点: 用户和密码由OS自己维护。

这里我们需要用到pam模块,开始下面的配置
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bk
cat > /etc/pam.d/vsftpd <<EOF
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
account    required     pam_access.so  
EOF

pam_access.so是模块,会调用到配置文件/etc/security/access.conf ,然后我们在access.conf里面配置访问控制信息,按照自己的需求添加下面的信息。
vi /etc/security/access.conf
# test用户所有IP都不让访问,vagrant用户都可以访问
-:test:ALL
+:vagrant:ALL
# test用户只有192.168.5.1 192.168.5.101可以访问,vagrant用户只有192.168.5.1可以访问
-:test:ALL EXCEPT 192.168.5.1 192.168.5.101
-:vagrant:ALL EXCEPT 192.168.5.1

重启vsftpd服务
systemctl restart vsftpd

ftp 192.168.5.101 用不同的用户测试

希望可以帮助到各位,觉得对你有帮助的,可以支持博主!帮忙点赞转发关注!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

攻城狮JasonLong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值