Linux自学笔记——tcp wrapper

tcp_wrapper:tcp包装器,是一个由wieste venema开发,旨在为unix/linux服务器提供防火墙服务的免费软件,它能够让系统管理员记录和控制wrappers支持基于tcp的服务或守护进程的访问。

tcp_wrappers是用来辅助而非替代netfilter的,因为tcp_wrappers工作在应用层,而netfilter工作在网络层;

库文件:libwrap.so

/etc/hosts.allow  , /etc/hosts.deny

判断某服务是否能够由tcp_wrapper进行访问控制的方法:

1)      动态编译:ldd命令;

ldd $(which COMMAND) | libwrap

2)      静态编译:strings命令查看应用程序文件,其结果中是否出现了hosts.allow和hosts.deny文件;

服务基于libwrap完成访问控制的流程:

首先检查/etc/hosts.allow文件中有没有显式授权当前请求者访问;

是:直接授权客户端访问;

否:接着去检查/etc/hosts.deny文件中有没有显式拒绝当前请求者访问;

是:直接拒绝当前请求者的访问;

否:允许请求者访问;

配置文件语法:

daemon_list:client_list  [:options]

daemon_list:

1)      单个应用程序的文件名称,而非服务名;

2)      以逗号分隔的应用程序文件名列表;

例如:sshd,vsftpd

3)      ALL:所有接受tcp_wrapper控制的程序;

Client_list:

Ip地址;

主机名;

网络地址:必须使用完成格式的掩码,不能使用前缀格式掩码;

简短格式网络地址:例如172.16.  表示172.16.0.0/255.255.0.0

ALL:所有主机;

KNOWN:能被解析的主机名

UNKNOWN:无法解析的主机名

PARANOID:主机名和ip地址的各自的正反解析结果不匹配

EXCEPT:除了

:options

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

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

spawn:启动指定的应用程序;

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

%c:client  ip

%s:[email protected] ip

%d:daemon  name

示例:vsftpd 仅开放给192.168.19.0/255.255.255.0中的主机访问;

sshd仅开放给192.168.19.0/255.255.255.0中的主机访问,但是不包括192.168.19.130

对所有被拒绝的访问尝试都记录在/var/log/service.deny.log文件中;

1)      /etc/hosts.allow文件中内容:

2)      tc/hosts.deny文件中内容:

3)      测试;

首先用IP地址为192.168.19.134的主机测试;

再用192.168.19.130的主机测试;

4)      查看日志;

原文地址:http://blog.51cto.com/claude666/2056657

时间: 2024-08-08 12:44:29

Linux自学笔记——tcp wrapper的相关文章

Linux自学笔记——linux进程及作业管理

内核的功用主要有进程管理.文件系统.网络功能.内存管理.驱动程序.安全功能这几个方面,本文主要讨论linux进程及作业管理. 进程管理: 进程,process,运行中程序的一个副本,且存在生命周期: 进程分为CPU bound和I/Obound. CPU bound:CPU密集型(类似于高清视频) I/O bound:IO密集型(编辑器等频繁IO操作) Linux内核存储进程信息的固定格式为:task struct(结构体) 多个任务的task struct组件的链表:task list 进程创

Linux自学笔记——Linux网络基础、命令及属性配置

网络对于Linux来说不可或缺的一部分,本文主要对linux网络的基础知识,常用配置命令以及linux配置文件的属性等等作一个总结. 计算机网络: TCP/IP协议栈: TCP/IP分为4层,分别为应用层,传输层,网络互连层,主机到网络层,不同于OSI,他将OSI中的会话层.表示层规划到应用层,把数据链路层和物理层划分给主机到网络层. OSI,Open System Interconnection,开放式系统互联,国际化标准组织ISO制定了OSI模型,该模型定义了不同计算机互联的标准,是设计和描

Linux 自学笔记(一)

    Linux系统简介 UNIX与Linux发展史: 1965年,由MIT,GE,AT&T贝尔实验室联合开发multics项目.后由于项目过于复杂,项目进度落后于计划,最终宣告失败. 1969年,贝尔实验室的工程师肯.汤姆森在DEC的机器上开发出了UNIX系统. 1971年,丹尼斯.里奇发明了C语言,并在1973年,用C语言把UNIX系统进行了重新编写,这为UNIX系统的可移植打下了基础. TCP/IP协议的开发,并捆绑在UNIX上,使得UNIX的发展和推广启到很大的作用. UNIX的主要发

Linux自学笔记——keepalived

本文部分参考博客:http://blog.51cto.com/1992tao/1869869 一.        VRRP协议 1.      技术优点: VRRP是一种容错协议,它保证当主机的下一跳路由器出现故障时,由另一台路由器来代替出现故障的路由器进行工作,从而保持网络通信的连续性和可靠性. VRRP具有如下优点: 1)      简化网络管理.在具有多播或广播能力的局域网(如以太网)中,借助VRRP能在某台设备出现故障时仍然提供高可靠的缺省链路,有效避免单一链路发生故障后网络中断的问题,

Linux自学笔记——haproxy

HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠地一套解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在时下的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单的安全的整合进您当前的架构中,同时可以保护你的web服务器不被暴露到网络上. HAProxy实现了一种事件驱动.单一进程模型,此模型支持非常大的并发连接数.多进程或多线程模型受内存限制.系统

Linux自学笔记--基础命令date,cal等

逆水行舟,不进则退: date命令: 我们可以来man一下date命令,可以在上面看出 date的含义为 - print or set the system date and time,我们从以下几方面对date命令进行阐述. 1.   显示时间 date[OPTION]... [+FORMAT] format:格式符号 %D: %F: %T: 在屏幕中输入单独的date命令可以显示系统的时间: 同时我们也可以显示自己想要的时间显示格式: 2.   设置时间 date[-u|--utc|--un

linux自学笔记——RAID级别特性以及软RAID的实现

RAID,Redundant Arrays of Inexpensive Disks 廉价冗余磁盘阵列,又称为Redundant Arrays of Independent Disks,独立冗余磁盘阵列. 其基本原理就是利用多块较小的磁盘通过不同的组织方式,组成一个大的磁盘组,以提高磁盘的IO能力和耐用性.由于组织方式不同,所以把RAID分为多个级别.而最常用的是RAID0,RAID1,RAID5,RAID6,RAID10,RAID01.下面我们将对以上的级别进行比较分析. 级别:level R

Linux自学笔记——Centos启动流程

Centos启动流程大概为:POST --> Boot Sequence(BIOS)--> Boot Loader (MBR) --> Kernel(ramdisk) --> rootfs (readonly)-->switchroot --> /sbin/init -->(/etc/inittab, /etc/init/*.conf) --> 设定默认运行级别 --> 系统初始化脚本 --> 关闭或启动对应级别下的服务 --> 启动终端.

Linux自学笔记——Selinux简介

SElinux是美国国家安全局(NSA)对于强制访问控制的实现,是linux历史上最杰出的新安全子系统.NSA是在Linux社区的帮助下开发的一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在它的任务中所需要的文件.SElinux默认安装在Fedora和RedHat Enterprise Linux上,也可以作为其他发行版上容易安装的包得到. DAC,自主访问控制,任何程序对其资源享有完全的控制权,每个用户或进程可以随意修改自己的文件的权限,将其他权限授予给其他人而具有任意的访问权