当前位置: > Linux教程 > 系统运维 >

Linux下启用tcp_wrappers防火墙

时间:2016-01-02 17:15来源:linux.it.net.cn 作者:IT
Linux本身有两层防火墙,通过IP实行过滤机制的iptables是第一道防护,如果通过了iptables的防护,那么下一层防护就是tcp_wrappers了。tcp_wrappers的配置比较简单,

主要是通过/etc/hosts.allow和/etc/hosts.deny两个文件来完成。这里以centos 6.5为例讲一下配置过程:


1.  首先我们先来检查系统中是否安装了tcp_wrappers 

5.JPG

如果有上述截图中的输出就表示已经安装了,如果没有的话可以用yum的方式安装。



2.  tcp_wrappers规则设定的格式:
 
service:host (s)  [:action]
 
主要参数含义如下:
l  service:系统中的服务名称,因为tcp_wrappers配置的简单性必然自身会带有一些局限性:只有应用了libwrapped库文件的服务才 能使用tcp_wrappers防火墙,例如:sshd, portmap, sendmail, xinetd, vsftpd, tcpd等都是可以使用的。
l  host(s):主机名或者IP地址,可以有多个,例如 10.0.0.0,www.itnetcn.com。
l  action:在符合前述条件后采取的动作,一般常用的关键字有:
     ALL:所有服务或者所有IP,主机名。
     ALL EXCEPT:从所有服务或者IP中去除指定的。
例如:
 
ALL:ALL EXCEPT 10.0.0.1
   表示除了10.0.0.1这个IP,其他的机器都可以执行(或者禁止执行)所有服务(取决于这条规则放在哪个文件中),一般系统会首先去匹配/etc/hosts.allow(如果没有请手动新建一个)中的规则,如果不匹配则去执行/etc/hosts.deny中的规则,如果依然不匹配,则是默认允许访问主机的。因此,在设定好/etc/hosts.allow文件的访问规则之后,只需设置hosts.deny文件的规则为所有都不能访问的状态即可,例如:

sshd:ALL
l  在了解上述规则后我们就可以配置一个简单的tcp_wrappers防火墙应用了,例如只允许10.0.0.1访问该台主机.
1.       vim /etc/hosts.allow
2.       写入sshd: 10.0.0.1
3.       Vim /etc/hosts.deny
4.       写入sshd:ALL


 6.JPG


7.JPG

设置好之后再用ssh访问这台机器,就会访问失败了(除了设定的10.0.0.1这个IP)

8.JPG
 
(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容