tcp_wrappers是linux中一个安全机制[TCP_wrappers防火墙],一定程度上限制某种服务的访问权限,达到了保护系统的目的
一. 要想用好tcp_wrappers,首先检查某种服务是否受tcp_wrappers 管理
ldd $(which domainname) | grep libwrap
   domainname=sshd httpd smb xinetd .........
如果有这个链接,说明某个服务接受tcp_wrappers管理,这种检查不一定正确。
a.一般只要某些进程归xinetd管理,那么这个服务就一定接受tcp_wrappers的管理
  如xinetd管理的进程:
xinetd based services:
 chargen-dgram
 chargen-stream
 cvs
 daytime-dgram
 daytime-stream
 discard-dgram
 discard-stream
 echo-dgram
 echo-stream
 eklogin
 ekrb5-telnet
 gssftp
 klogin
 krb5-telnet
 kshell
 rsync
 tcpmux-server
 telnet
 time-dgram
 time-stream
b.一些独立的进程(daemons)也受tcp_wrappers的管理
  如:  sendmail
 slapd
 sshd
 stunnel
 xinetd
 gdm
 gnone-session
 vsftpd
  portmap
c.注意:有些进程不受tcp_wrappers管理
  如:  httpd
 smb
 squid 等
二. 与tcp_wrappers相关的文件有
/etc/hosts.allow
/etc/hosts.deny
这两个文件被整合在xinetd中.
三. 工作原理
1. 当有请求从远程到达本机的时候
首先检查/etc/hosts.allow
如有匹配的,就默认允许访问,跳过 /etc/hosts.deny这个文件
没有匹配的,就去匹配/etc/hosts.deny 文件,如果有匹配的,那么就拒绝这个访问
2. 如果在这两个文件中,都没有匹配到,默认是允许访问的
四. 这两个文件格式
服务列表 :地址列表 :选项
A. 服务列表格式:如果有多个服务,那么就用逗号隔开
B. 地址列表格式:
1. 标准IP地址:例如:192.168.0.254,192.168.0.56如果多于一个用,隔开
2. 主机名称:例如:www.baidu.com, .example.con匹配整个域
3. 利用掩码:192.168.0.0/255.255.255.0指定整个网段
   注意:tcp_wrappers的掩码只支持长格式,不能用:192.168.0.0/24
4. 网络名称:例如 @mynetwork
五.宏定义
ALL :指代所有主机
LOCAL :指代本地主机
KNOWN :能够解析的
UNKNOWN :不能解析的
PARANOID :
  example:
    /etc/hosts.allow
 sshd:192.168.0.0
    /etc/hosts.deny
 sshd:ALL
 此例子表明:sshd服务只允许192.168.0.0网段的主机访问,其他拒绝。
六. 扩展选项:
spawn : 执行某个命令
 如:
vsftpd:192.168.0.0/255.255.255.0 :spawn echo “login attempt from %c”to %s” | mail –s warning root
 其意是党192.168.0.0网段的主机来访问时,给root发一封邮件,邮件主题是:waring,邮件内容是:客户端主机(%c)试图访问服务端主机(%s)
twist : 中断命令的执行:
vsftpd:192.168.0.0/255.255.255.0: twist echo -e "\n\nWARNING connection not allowed.\n\n" 
 其意是当未经允许的电脑尝试登入你的主机时, 对方的萤幕上就会显示上面的最后一行
七.高级用法
daemaon@host:client_list
对于多块网卡的linux主机,要想用tcp_wrappers做一些控制得基于接口:
如eth0所在的网段:192.168.0.0 eth1所在的网段:192.168.1.0
 则:
   sshd@192.168.0.11:192.168.0.
   sshd@192.168.1.34:192.168.1.
   则两句可以根据需要写到hosts.allow或hosts.deny中
典例:
/etc/hosts.allow
 sshd:ALL EXCEPT .cracker.org EXCEPT trusted.cracker.org
/etc/hosts.deny
 sshd:ALL
此例用到了EXCEPT的嵌套,其意思是:允许所有访问sshd服务,在域.cracker.org的不允许访问
但是trusted.cracker.org除外
sshd:ALL 就是拒绝.cracker.org的访问,因为默认是允许,所以在hosts.deny中必须明确定义。
 
本文: 总结、整理来自互联网

Linux tcp_wrappers 详解的更多相关文章

  1. Linux命令详解之—tail命令

    tail命令也是一个非常常用的文件查看类的命令,今天就为大家介绍下Linux tail命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux tail命令主要用来从指定点开始将文 ...

  2. Linux命令详解之—less命令

    Linux下还有一个与more命令非常类似的命令--less命令,相比于more命令,less命令更加灵活强大一些,今天就给大家介绍下Linux下的less命令. 更多Linux命令详情请看:Linu ...

  3. Linux命令详解之—more命令

    Linux more命令同cat命令一样,多用来查看文件内容,本文就为大家介绍下Linux more命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux的more命令类似 ca ...

  4. 【转】linux命令详解:md5sum命令

    [转]linux命令详解:md5sum命令 转自:http://blog.itpub.net/29320885/viewspace-1710218/ 前言 在网络传输.设备之间转存.复制大文件等时,可 ...

  5. Linux命令详解之—cat命令

    cat命令的功能是连接文件或标准输入并打印,今天就为大家介绍下Linux中的cat命令. 更多Linux命令详情请看:Linux命令速查手册 Linux 的cat命令通常用来显示文件内容,也可以用来将 ...

  6. Linux命令详解之—pwd命令

    Linux的pwd命令也是一个非常常用的命令,本文为大家介绍下Linux中pwd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux pwd命令用于显示工作目录. 执行pwd指 ...

  7. Linux命令详解之–cd命令

    cd命令是linux实际使用当中另一个非常重要的命令,本文就为大家介绍下Linux中cd命令的用法. 更多Linux命令详情请看:Linux命令速查手册 Linux cd命令用于切换当前工作目录至 d ...

  8. Linux命令详解之–ls命令

    今天开始为大家介绍下Linux中常用的命令,首先给大家介绍下Linux中使用频率最高的命令--ls命令. 更多Linux命令详情请看:Linux命令速查手册 linux ls命令用于显示指定工作目录下 ...

  9. Linux 系统结构详解

    Linux 系统结构详解 Linux系统一般有4个主要部分: 内核.shell.文件系统和应用程序.内核.shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序.管理文件并使用系统 ...

随机推荐

  1. 第二十四课:jQuery.event.remove,dispatch的源码解读

    本课还是来讲解一下jQuery是如何实现它的事件系统的.这一课我们先来讲一下jQuery.event.remove的源码解读. remove方法的目的是,根据用户传参,找到事件队列,从里面把匹配的ha ...

  2. BootStrap网格布局

    如何使用BootStrap样式 BootStrap与其他的开源库类似,直接引用它的css样式文件就可以使用了. <link rel="stylesheet" href=&qu ...

  3. ubuntu的命令day1

    ls -i    显示所有的文件,包括隐藏的文件. 以  .  开头的文件都是隐藏文件,可以在终端用ls -i显示所有的文件.比如.ssh linux生成密钥的命令如下: 1. cd .ssh/    ...

  4. jQuery Select的操作集合

    1. $("#select_id").change(function(){... });   //为select添加事件,当选择其中一项时触发2. $("#select_ ...

  5. CSS3媒体查询

    随着响应式设计模型的诞生,Web网站又要发生翻天腹地的改革浪潮,可能有些人会觉得在国内IE6用户居高不下的情况下,这些新的技术还不会广泛的蔓延下去,那你就错了,如今淘宝,凡客,携程等等公司都已经在大胆 ...

  6. PR 不能手动修改素材尺寸的解决方法

    选中素材,然后再特效控制台那边点击一下运动就可以在预览窗口直接用鼠标调整画面大小和位移了.

  7. 【CodeForces 312B】BUPT 2015 newbie practice #3A Archer

    题 SmallR is an archer. SmallR is taking a match of archer with Zanoes. They try to shoot in the targ ...

  8. firefox与chrome中对select下拉框中的option支持问题

    firefox可以直接修改option的字体样式,但是chrome中option的字体样式是继承select的,这个是在项目中遇到的,具体的可以看一下 http://www.cnblogs.com/r ...

  9. Android日志服务 记录日志

    转: http://easion-zms.iteye.com/blog/981568 import java.io.BufferedReader; import java.io.File; impor ...

  10. 过滤器在Web开发应用------解决中文乱码

    src/com/Encoding.java package com; import java.io.IOException; import javax.servlet.Filter; import j ...