tcp_wrappers是linux中一个安全机制,在某些条件下,一定程度上限制某种服务的访问权限,达到了保护系统的目的。接下来我们来简单介绍一下tcp-wrapers
《一》:首先检查某种服务是否受tcp_wrappers 管理
ldd `which sshd` grep | libwrap
如果有这个链接,说面某个服务接受tcp_wrappers管理
《二》:与tcp_wrappers相关的文件有
/etc/hosts.allow
/etc/hosts.deny
《三》:工作原理
(1):当有请求从远程到达本机的时候
首先检查/etc/hosts.allow 如果在其中能够匹配的到,那么就默认允许访问
跳过 /etc/hosts.deny这个文件
(2):当在/etc/hosts.allow中没有匹配到的时候,就匹配/etc/hosts.deny 文件
如果能在/etc/hosts/deny中匹配的到
那么就拒绝这个访问
(3):如果在这两个文件中,都没有匹配到
那么,默认是允许访问的
《四》:这两个文件格式
服务列表 :地址列表 :选项
A. 服务列表格式:如果有多个服务,那么就用逗号隔开
B. 地址列表格式:
(1):标准IP地址:例如:192.168.0.254,192.168.0.56如果多于一个用,隔开
(2):主机名称:例如:
.example.con匹配整个域
(3):利用掩码:192.168.0.0/255.255.255.0指定整个网段
(4):网络名称:例如 @mynetwork
C. 选项:
主要有allow 和 deny 这两个选项
D. 其它的特定格式
ALL :指代所有主机
LOCAL :指代本地主机
KNOWN :能够解析的
UNKNOWN :不能解析的
PARANOID :
《五》:扩展选项:
spawn : 执行某个命令
vsftpd : spawn echo “login attempt from %c”to %s” | mail –s warning root
twist : 中断命令的执行:
vsftpd : twist echo “login attempt from %c to %s ” | mail –s waring root
《六》:一个例子
在/etc/hosts.allow文件中指定下面的内容
vsftpd: 192.168.0.
in.telnetd, protmap: 192.168.0.8
在/etc/hosts.deny中指定一下文件
ALL: .cracker.org EXCEPT trusted.cracker.org
vsftpd,protmap: ALL
sshd: 192.168.0. EXCEPT 192.168.0.4