一. 简介

tcp_wrapper:tcp包装器, 工作于库中的.

  • 访问控制 工具/组件 : 传输层 和 接近于应用层;
  • 仅对使用tcp协议且在开发时调用了libwrap相关的服务程序有效.

二. 判断服务是否能够由tcp_wrapper进行访问控制:

  • 动态编译:ldd命 令查看其链接至的库文件即可;

    $ ldd `which sshd` | grep libwrap 
  • 静态编译:strings 命令查看其结果中是否包含

    hosts.allow
    hosts.deny

三. 配置文件

tcp_wrapper通过读取配置文件中的访问控制规则来判断某服务是否可被访问

hosts.allow : 先检查, 匹配放行, 则放行; 没有匹配规则, 则使用 hosts.deny
hosts.deny  : 后检测. 有匹配则拒绝, 没有匹配则, 放行.

注意

  • 默认规则 是放行.
  • 发生修改后立即生效.
  • 白名单:

    hosts.allow 放行 白名单.
    hosts.deny 拒绝所有.

四. 配置文件语法:

daemon_list: client_list [:options]

    daemon_list :
        应用程序的文件名称,而非服务名;
        应用程序的文件列表,使用逗号分隔;
            例如:vsftpd, in.telnetd: 172.16.0.0/255.255.0.0
        ALL: 所有受tcp_wrapper控制的应用程序;

    client_list:
        IP地址 ;
        主机名 ;

        网络地址 :必须使用完整格式掩码,不能使用长度格式的掩码;所以172.16.0.0/16是不合法的;
        简短格式的网络地址 :172.16. 表示172.16.0.0/255.255.0.0

        ALL : 所有客户端地址;

        KNOWN : 所有已知的主机, 即主机名可以被解析的.
        UNKNOWN :主机名不能被解析的
        PARANOID : 正向解析和反向解析不一致的主机.

    特殊的变量 :EXCEPT
        in.telnetd: 172.16. EXCEPT 172.16.100.3

    [:options]
        deny: 用于在hosts.allow文件中实现拒绝访问的规则
        allow:用于在hosts.deny文件中实现允许访问的规则
        spawn: 启动一个额外程序;
            in.telnetd: ALL: spawn /bin/echo `date` login attempt from %c to %s, %d >> /var/log/telnet.log  # man hosts.allow

示例
控制vsftpd仅允许172.16.0.0/255.255.0.0网络中的主机访问,但172.16.100.3除外;对所被被拒绝的访问尝试都记录在/var/log/tcp_wrapper.log日志文件中;

$ cat hosts.allow:
    vsftpd: 172.16. EXCEPT 172.16.100.3

$ cat hosts.deny:
    vsftpd: ALL : spawn /bin/echo       # 并非所有都会记录. 如 172.16.100.3

tcp_wrapper 总结的更多相关文章

  1. tcp_wrapper

    介绍 对基于tcp协议开发并提供服务的应用程序,所提供的一层访问控制工具 基于库调用实现其功能 * 库名:libwrap 判断服务是否能够由tcp_wrapper进行访问控制 1. 动态编译 ldd命 ...

  2. 6、tcp_wrapper

    iptables的链接跟踪表最大容量为/proc/sys/net/ipv4/ip_conntrack_max,链接碰到各种状态的超时后就会从表中删除. 所以解決方法一般有两个: (1) 加大 ip_c ...

  3. 对inetd、xinetd与TCP_Wrapper的基本了解

    在Linux系统中有一个特殊的守护进程inetd(InterNET services Daemon),它用于Internet标准服务,通常在系统启动时启动.通过命令行可以给出inetd的配置文件,该配 ...

  4. iptables (二) nat & tcp_wrapper

    一.nat 之前网络防火墙的示例中,如果内网是私网地址,那么内网主机如何与外网通信呢? 这时候,iptables要实现内网和外网通信,有两种方式: nat: Network Address Trans ...

  5. tcp_wrapper过滤

    1.1 wrap简介 wrap工作在内核空间和应用程序中间的库层次中.在内核接受到数据包准备传送到用户空间时都会经过库层次,对于部分(只是部分)应用程序会在经过库层次时会被wrap库文件阻挡下来检查一 ...

  6. Linux服务器安全配置

    众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节.Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Int ...

  7. LINUX安全加固规范

    1 概述 近几年来Internet变得更加不安全了.网络的通信量日益加大,越来越多的重要交易正在通过网络完成,与此同时数据被损坏.截取和修改的风险也在增加. 只要有值得偷窃的东西就会有想办法窃取它的人 ...

  8. linux命令行netstat总结

    1.所谓的监听就是某个服务程序会一直常驻在内存中,所以该程序启动的Port就会一直存在. 2.在小于1023的端口,都是需要以root身份才能够启动的. 3.大于1024以上的Port主要是作为cli ...

  9. linux学习之-vsftp

    一.简介 vsftp是一个基于GPL发布的类unix系统上使用的ftp服务器软件,它的全称是very secure FTP ,软件的编写初衷是为了代码的安全,另外高速与高稳定性也是vsftp的两个重要 ...

随机推荐

  1. 蓝桥杯-大衍数列-java

    /* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...

  2. hust1010 kmp

    There is a string A. The length of A is less than 1,000,000. I rewrite it again and again. Then I go ...

  3. Intellij IDEA快捷键(必备)

    快捷键 功能描述 Ctrl + Shift + Space 智能代码提示(必备) Ctrl + R 在当前文件进行文本替换 Ctrl + F 在当前文件进行文本查找 Ctrl + Y 删除光标所在行 ...

  4. linux 内核的各种futex

    futex 设计成用户空间快速锁操作,由用户空间实现fastpath,以及内核提供锁竞争排队仲裁服务,由用户空间使用futex系统调用来实现slowpath.futex系统调用提供了三种配对的调用接口 ...

  5. 浅析如何在Nancy中使用Swagger生成API文档

    前言 上一篇博客介绍了使用Nancy框架内部的方法来创建了一个简单到不能再简单的Document.但是还有许许多多的不足. 为了能稍微完善一下这个Document,这篇引用了当前流行的Swagger, ...

  6. JavaEE开发之记事本完整案例(SpringBoot + iOS端)

    上篇博客我们聊了<JavaEE开发之SpringBoot整合MyBatis以及Thymeleaf模板引擎>,并且在之前我们也聊了<Swift3.0服务端开发(五) 记事本的开发(iO ...

  7. [刷题]算法竞赛入门经典(第2版) 5-5/UVa10391 - Compound Words

    题意:问在一个词典里,那些单词是复合词,即哪些单词是由两个单词拼出来的. 渣渣代码:(Accepted, 30ms) //UVa10391 - Compound Words #include<i ...

  8. 深入浅出SOA

    前一阵换了份工作,来到新公司,恰好新同事问起SOA是什么,我随口说了几点,其实自己以前研究过,不过并没有详细的整理过,说的比较模糊,恰好周末,拿出点时间整理下以前对SOA的认知. SOA是什么?SOA ...

  9. Python—课时ONE

    说实话第一次接触Python还是在我刚上班的时候,听说很多人这个开发语言很吊,应用的领域很多.but这些东西还不能够吸引我,真正的原因是因为这个开发语言很是简单,比较适合我这种2B学的.但是越往后越觉 ...

  10. 2017年中国大学生程序设计竞赛-中南地区赛暨第八届湘潭市大学生计算机程序设计大赛题解&源码(A.高斯消元,D,模拟,E,前缀和,F,LCS,H,Prim算法,I,胡搞,J,树状数组)

    A------------------------------------------------------------------------------------ 题目链接:http://20 ...