linux TCP Wrappers

1. TCP Wrapper简介

  (维基百科)TCP Wrapper is a host-based Networking ACL system, used to filter network access to Internet Protocolservers on (Unix-likeoperating systems such as Linux or BSD. It allows host or subnetwork IP addresses,names and/or ident query replies, to be used as tokens on which to filter for access control purposes.

  看看大牛们怎么说这玩意的: TCP wrappers is a classic security tool available on most flavors of Unix including AIX, HP-UX, Linux and Solaris).  Sadly despite being a classic tool it is extremely underutilized and widely misunderstood tool.

  Very few sysadmins know that TCP wrappers represents (for TCP-based protocols only) a lightweight alternative to firewall(which is actually a heavyweight,  obtuse and CPU intensive tool).  Some capabilities of TCP wrappers cannot be emulated using firewall.

  任何用xinetd管理的服务都可以通过/etc/host.allow,/etc/host.deny 来过滤网络访问。当然,在xinetd管理的服务的配置文件中也可以通过only_from,no_access等参数来实现相同的功能。 但是用tcp wrappers 可以更集中的管理。

  如果要使用tcp wrappers 来管理某个服务,则这个服务就必须要支持TCP Wrappers 的函数功能,要用到libwrap.so动态链接库。例如: 查看sshd和httpd能否能用TCP Wrapppers 来管理:

  

  由此可知,sshd 可以用它管理,但是httpd就不行。

2. TCP Wrappers配置文件

  To determine if a client machine is allowed to connect to a service, TCP wrappers reference the following two files, which are commonly referred to as hosts access files:

  • /etc/hosts.allow
  • /etc/hosts.deny

  You can use single file and include action (allow or deny as the last field of TCP wrapper configuration file directive (see above). Often this is more transparent approach as you see all directives in a single file.

  这两个文件的判断依据是:host.allow优先,若没有分析到的IP 或网段用hosts.deny来判断。

  2.1 这两个文件格式
    服务列表 :地址列表 :选项
    A. 服务列表格式:如果有多个服务,那么就用逗号隔开
    B. 地址列表格式:
    1. 标准IP地址:如果多于一个用,隔开

      telnetd :192.168.8.2, 192.168.9.22: deny

      telnetd,sshd:192.168.4.10 , 192.168.6.: allow
    2. 主机名称:例如:www.baidu.com, .example.con匹配整个域

      telnetd,sshd:.mydomain.com :allow   (请注意本例中 mydomain.com 之前的点号(“.”)。这是个通配符)
    3. 利用掩码:140.116.34.0/255.255.255.0指定整个网段

      telnet: 140.116.34.0/255.255.255.0 : allow

    4. 文件中的特殊字段:

      ALL :指代所有主机
      LOCAL :指代本地主机
      KNOWN :能够解析的
      UNKNOWN :不能解析的

      ALL:PARANOID, mydomain:allow   5. 写在hosts.allow中的选项默认为是deny,第三列可以不写,同理hosts.deny

  

  

时间: 2024-08-28 14:35:30

linux TCP Wrappers的相关文章

Linux 中 TCP Wrappers 访问控制

TCP Wrappers机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行访问控制.对应的两个策略文件为/etc/hosts.allow和/etc/hosts.deny,分别用来设置允许和拒绝的策略. 两个策略文件的作用相反,但配置记录的格式一样: <服务程序列表>:<客户端地址列表>服务程序列表和客户端地址列表之间以冒号分隔,在每个列表内的多个项之间以逗号分隔. 1.服务程序列表: ALL:代表所有服务. 单个服务程序:如"dhcpd" 多个服务程

使用TCP Wrappers增强SSHD安全性

简介: TCP Wrappers是一个基于主机的ACL系统,他被用来过滤对Linux系统提供的网络服务的访问.他通过libwrap向daemon进程提供过滤功能. TCP Wrappers的工作流程: 1.读取/etc/hosts.allow文件,如果能匹配到策略,则允许:否则进行下一步: 2.读取/etc/hosts.deny 文件,如果能匹配到策略,则拒绝:否则允许. 实例:只允许192.168.0.100/24访问. # cat /etc/hosts.allow sshd:192.168.

TCP Wrappers

Tcp_Wrappers是一个用来分析TCP/IP封包的软件,类似的IP封包软件还有iptables,linux默认都安装了此软件,作为一个安全的系统,Linux本身有两层安全防火墙,通过IP过滤机制的iptables实现第一层防护,iptables防火墙通过直观地监视系统的运行状况,阻挡网络中的一些恶意攻击,保护整个系统正常运行,免遭攻击和破坏.如果通过了第一层防护,那么下一层防护就是tcp_wrappers了,通过Tcp_Wrappers可以实现对系统中提供的某些服务的开放与关闭.允许和禁止

防火墙基础知识--TCP Wrappers和IPtables两种机制

认识防火墙 概念 作用 Linux上防火墙类别 封包过滤机制Netfilter 程序管控机制TCP Wrappers 一般网络布线 使用能力限制 TCP Wrappers程序管控 概念: 简单来说,TCP wrappers就是透过/etc/hosts.allow和/etc/hosts.deny这两个文件来管理,但并非所有软件都可以. 支持的服务 super daemon (xinetd)管理的服务 chkconfig --list 显示内容下的xinetd based services: 支持l

密钥对验证及TCP Wrappers访问控制

一.秘钥对验证 加密认证算法:RSA .DSA两个都可使用 1.在客户机上生成密钥对 在客户机上执行"ssh-keygen  -t  rsa" 生成非对称加密秘钥对 2.将公钥文件上传到服务器 在客户机家目录的.ssh/目录下,将id_rsa.pub公钥文件上传给服务机 3.在服务器上创建秘钥目录并修改上传的秘钥文件名 上传完成后,要在服务机端的家目录下创建一个 .ssh/ 的目录,把id_rsa.pub改名为authorized_keys并剪切到家目录下的.ssh/目录里面.   4

SSH服务与tcp wrappers实验

实验环境: 一台linux(ssh client) 一台linux(ssh server) 实验步骤: 1.配置IP,测试连通性 2.在客户端创建用户yuzly1,登录创建的用户,用公钥生成工具生成公钥,#注意记得输入私钥密语,不设置默认为空 3.查看生成的公钥 4.在服务端创建一个账户,然后登录创建的账户yuzly2,然后在该账户宿主目录下创建.ssh目录(如果是在root账户下创建/home/yuzly2/,ssh目录,需要修改目录所有者以及所属组为yuzly2),并把.ssh所属组的权限中

Linux TCP拥塞控制中undo操作

Linux的TCP实现复杂且繁琐,建议不要直接去看代码,而是花点时间把TCP规范先撸一遍.本文主要描述一下TCP实现中undo操作,然后顺便再吐一下槽(千万不要觉得吐槽有什么不好,很多好东西都是从吐槽开始的,从造纸,蒸汽机,到法兰西第一共和国,再到Linux...). 1.TCP对网络拥塞是基于预测的 TCP属于网络的一部分,这无可厚非,但当一个人说自己精通网络的时候,他更可能的意思是自己精通网络节点的行为而不是端到端的行为.比如,一个Cisco的工程师精通各种路由协议,可以设计出复杂的OSPF

TCP WRAPPERS、denyhosts软件的安装和配置、PAM身份认证模块应用

一.TCP WRAPPERS 1.TCP WRAPPERS的作用是什么? 保护服务器的一些服务,可以限制客户端访问这些服务. TCP WRAPPERS支持那些服务?判断一个服务是否支持TCP WRAPPERS的保护有那些方法? 查看该服务是否加载libwrap,查看该服务是不是基于xinetd服务. ssh ,vsftpd,telnet,http(不支持wrap模块)ipop3 2.检查服务是否支持被TCP WRAPPERS保护 3.防护规则存放在 /etc/hosts.allow /etc/h

Linux tcp被动打开内核源码分析

[我是从2个角度来看,其实所谓2个角度,是发现我分析源码时,分析重复了,写了2个分析报告,所以现在都贴出来.] [如果你是想看看,了解一下内核tcp被动打开时如何实现的话,我觉得还是看看概念就可以了,因为即使看了源码,过一个个礼拜你就忘了,如果是你正在修改协议栈,为不知道流程而发愁,那么希望你能看看源码以及注释,希望你给你帮助.] 概念: tcp被动打开,前提是你listen,这个被动打开的前提.你listen过后,其实创建了一个监听套接字,专门负责监听,不会负责传输数据. 当第一个syn包到达