tcpwrappers(防火墙) --过滤TCP包头(/usr/sbin/tcpd)
/etc/hosts.allow 允许
/etc/hosts.deny 拒绝
匹配顺序 tcp包头----<wrappers.so> ------- /etc/hosts.allow ------- /etc/hosts.deny
匹配规则< 规则马上写,触发的时候,立刻生效>
1.先匹配/etc/hosts.allow,如果匹配到相应的规则,则允许匹配到此结束
2.在匹配/etc/hosts.deny,如果匹配到相应的规则,则拒绝匹配到此结束
3.如果2个文件都没有匹配,则允许
过滤依据 包含TCP协议服务 <xinetd/rpcbind|portmap/vsftpd/samba/httpd/sshd/postfix>
ldd /usr/sbin/vsftpd |grep libwrap
ldd /sbin/rpcbind |grep wrap
strings /usr/sbin/smbd |grep access
1.拒绝192.168.0.254 通过sshd远程登录
vim /etc/hosts.deny
#二进制名称: HOST
sshd: 192.168.0.x
ssh 192.168.0.1
ssh_exchange_identification: Connection closed by remote host --- 被tcpwrappers拒绝
设置规则:
1.telnet只有192.168.0.2|192.168.0.254能访问
2.vsftpd192.168.0.0/24都能访问,除192.168.0.254
3.sshd 192.168.0.254,只要有登录则发邮件告知管理员
4.本机能够访问这三个服务.
先拒绝所有,然后在一个个开放
先在/etc/hosts.deny 拒绝所有,然后在/etc/hosts.allow 逐个允许
spawn 触发按钮执行shell终端动作
LOCAL 本地所有的tcp服务
EXCEPT 除了
ALL
vim /etc/hosts.deny
ALL : ALL
vim /etc/hosts.allow
in.telnetd: 192.168.0.254,192.168.0.2 --注意'二进制名称'
vsftpd: 192.168.0.0/255.255.255.0 EXCEPT 192.168.0.254 --注意'子网掩码要写全>称'
或者 vsftpd: 192.168.0. | vsftpd: .example.com
sshd: 192.168.0.254 : spawn echo "%c正在登录%s" | mail -s "%d login" u02@qq.com
ALL: LOCAL