tcp_wrapper

介绍

  对基于tcp协议开发并提供服务的应用程序,所提供的一层访问控制工具

 

基于库调用实现其功能

  * 库名:libwrap

 

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

1. 动态编译

    ldd命令

        ldd `which sshd`

2. 静态编译

    strings命令查看应用程序文件,其结果中出现

        hosts.allow

        host.deny 

 

在配置文件中为各服务分别定义访问控制规则实现访问控制

配置文件:/etc/host.allow  /etc/host.deny

 

检查顺序

先检查host.allow文件,有匹配项则放行

后检查host.deny文件,有匹配项则拒绝

如果两者都没有匹配项则默认放行

 

配置文件语法

1 daemon_list: client_list [options]

 

daemon_list:应用程序的文件名,而非服务名

应用服务程序文件名列表,彼此间使用逗号分隔

    sshd,vsftpd

 

client_list:

网络地址:必须使用完整格式的掩码,不使用前缀格式掩码,所以类似于192.168.1.0/24不合法

简短格式的网络地址:192.168.1.

ALL:所有主机

KNOWN

UNKNOWN

PARANOID

 

EXCEPT

1 vsftpd: 192.168. EXCEPT 192.168.1.0/255.255.255.0 EXCEPT 192.168.1.1

 

[:options]

deny:拒绝,主要用于hosts.allow文件中

    vsftpd: 192.168. : deny 

allow:允许,主要用于hosts.deny文件中

spawn:启动额外应用程序,实现其它的管理控制功能

    %c client ip 

    %s server ip 

    %d daemon name 

    vsftpd: ALL :spawn /bin/echo `date` login attempt from %c to %s, %d >> /var/log/vsftpd.deny.log

 

posted @ 2018-03-01 15:02  前路~  阅读(157)  评论(0编辑  收藏  举报