1 vsftp基于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

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

这里我们需要用到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

标签: none

评论已关闭