TCP_Wrappers

Posted shenxm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP_Wrappers相关的知识,希望对你有一定的参考价值。

TCP_Wrappers 介绍

    作者:Wieste Venema ,IBM ,Google
    
    工作在第四层(传输层)的TCP 协议
    
    对有状态连接的特定服务进行安全检测并实现访问控制
    
    以库文件形式实现
    
    某进程是否接受libwrap的控制取决于发起此进程的程序在编译时是否针对libwrap 进行编译的
    
    判断服务程序是否能够由tcp_wrapper进行访问控制的方法:
        ldd /PATH/TO/PROGRAM|grep libwrap.so
        strings PATH/TO/PROGRAM|grep libwrap.so

TCP_Wrappers 的配置

    配置文件:/etc/hosts.allow, /etc/hosts.deny
    
    帮助参考:man 5 hosts_access ,man 5 hosts_options
    
    检查顺序:hosts.allow ,hosts.deny,( 默认 允许)
        注意:一旦前面规则匹配,直接生效,将不再继续
    
    基本语法:
        [email protected]: client_list [ :options :option… ]
    
    [email protected] 格式
        单个应用程序的二进制文件名,而非服务名 , 例如vsftpd
        以逗号或空格分隔的应用程序文件名列表 ,如:sshd,vsftpd
        ALL 表示所有接受tcp_wrapper 控制的服务程序
        主机有多个IP ,可用@hostIP 来实现控制
        如:[email protected]
    
    客户端Client_list 格式
        以逗号或空格分隔的客户端列表
        基于IP地址:192.168.10.1  192.168.1.
        基于主机名:www.magedu.com .magedu.com 较少用
        基于网络/掩码:192.168.0.0/255.255.255.0
        基于net/prefixlen: 192.168.1.0/24 (CentOS7)
        基于网络组(NIS域):@mynetwork
        内置ACL :ALL ,LOCAL ,KNOWN ,UNKNOWN, PARANOID
    
    EXCEPT(除了)用法 :
        示例: vsftpd: 172.16. EXCEPT 172.16.100.0/24 EXCEPT  172.16.100.1
        
    示例
        只允许192.168.1.0/24 的主机访问sshd
            /etc/hosts.allow
                sshd: 192.168.1.
            /etc/hosts.deny
                sshd :ALL
        只允许192.168.1.0/24 的主机访问telnet 和vsftpd服务
            /etc/hosts.allow
                vsftpd,in.telnetd: 192.168.1.
            /etc/host.deny
                vsftpd,in.telnetd: ALL

TCP_Wrappers 的使用

    [:options] 选项:
    帮助:man 5 hosts_options
        deny:主要用在/etc/hosts.allow 定义“拒绝”规则
            如:vsftpd: 172.16. :deny
        allow:主要用在/etc/hosts.deny 定义 “允许” 规则
            如:vsftpd:172.16. :allow
        spawn:启动一个外部程序完成执行的操作
        twist:实际动作是拒绝访问, 使用指定的操作替换当前服务, 标准I/O 和ERROR 发送到客户端, 默认至/dev/null
    
    测试工具:
        tcpdmatch [-d] daemon[@host] client
         -d  测试当前目录下的hosts.allow 和hosts.deny

以上是关于TCP_Wrappers的主要内容,如果未能解决你的问题,请参考以下文章

TCP_Wrappers

TCP_Wrappers访问控制

第十六章 tcp_wrappers

linux的安全--Selinux,tcp_wrappers,iptables使用

su ,sudo,TCP_Wrappers的相关命令用法及PAM认证机构

linux系统管理之服务管理,ipv6,tcp_wrappers