作者:飞天二狭 2005年3月18日
前言:来CU已经两年多了,在这里认识了许多高手,学到了许多知识,最初吸引我到这个地方的就是现在这个版块最近一段时间感觉比较冷清,所以写了这些东西,希望大家喜欢哦。
1. Tcp Wapper基础知识介绍
Tcp_Wapper是在 Solaris, HP_UX以及 Linux中广泛流行的免费软件。它被设计为一个介于外来服务请求和系统服务回应的中间处理软件。最常见的用法是与inetd一起使用。当Inetd接收到一个外来服务请求的时候,并不是直接调用,而是调用TCP Wrapper(可执行文件tcpd),TCP Wrapper根据这个所请求的服务和针对这个服务所定制的存取控制规则来判断对方是否有使用这个服务的权限,如果有,TCP Wrapper将该请求按照配置文件定义的规则转交给相应的守护进程去处理同时记录这个请求动作,然后自己就等待下一个请求的处理。
TCP Wrapper机制的主要目的在于,来自客户端的请求只被允许同一个独立的守护进程(xinetd)直接通信,而它请求的目标服务被TCP Wrapper包裹起来,这样就提高了系统的安全性和系统管理的方便性。Tcp wrapper随着应用逐渐成为一种标准的Unix安全工具,成为unix守护程序inetd的一个插件。通过Tcp wrapper,管理员可以设置对inetd提供的各种服务进行监控和过滤,以保证系统的安全性。
2. Tcp Wapper源码获取、编译与安装
由于它已经在Solaris, HP_UX以及 Linux中泛使用,而在Tru 64上使用的很少,所以在这里给大家做一个详细介绍,我机器的操作系统版本为:tru 64 4.0F
(1)下载源码地址:
ftp://ftp.porcupine.org/pub/security/tcp_wrappers_7.6.tar.gz
(2)解压缩
#gunzip tcp_wrappers_7.6.tar.gz
#tar xvf tcp_wrappers_7.6.tar
(3)编译源码程序
# make REAL_DAEMON_DIR=/usr/sbin hpux
最后一个参数是hpux,你可以根据你的操作系统来做调整,这里由于没有DEC的我就使用这个替代了。接着将生成的几个主要文件拷贝到相应的系统目录下。
#cp tcpd /usr/sbin
#cp safe_finger /usr/sbin
#cp tcpdchk /usr/sbin
#cp tcpdmatch /usr/sbin
#cp try-from /usr/sbin
#cp hosts_access.3 /usr/man/man3
#cp hosts_access.5 /usr/man/man5
#cp hosts_options.5 /usr/man/man5
#cp tcpd.8 /usr/man/man8
#cp tcpdchk.8 /usr/man/man8
#cp tcpdmatch.8 /usr/man/man8
#cp libwrap.a /usr/lib
#cp tcpd.h /usr/include
其中:
(1)tcpd是所有internet服务的主要访问控制守护进程,运行 inetd 或 xinetd 而不是运行单独的服务守护进程时要用到它。
(2)tcpdchk 一个检查 tcpd wrapper 设置和提供错误信息。
(3)tcpdmatch 用来预知 tcp wrapper 如何控制一个服务的特殊请求。
(4)try-from可以通过远程shell命令找出主机名字和地址是不是正确的。
(5)safe_finger 是finger工具的 wrapper ,提供自动的主机名反向查找。
3、如何将服务纳入管控状态
大家知道inetd,也叫作“超级服务器”,就是监视一些网络请求的守护进程,其根据网络请求来调用相应的服务进程来处理连接请求。inetd.conf则是inetd的配置文件。inetd.conf文件告诉inetd监听哪些网络端口,为每个端口启动哪个服务。如果我们要想将telnet、ftp 交由tcpd管控,需要修改/etc/inetd.conf。
| 论坛热门帖子: | [lch203] 写得蛮好的linux学习笔记(10-21) [黑马制造] 学习java的30个目标(10-19) [笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19) [udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18) [沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18) |
| TAG标签: | 地址 方法 使用 文件 服务 系统 请求 一个 这个 如果 |
注册
个人空间
