 |
教程: Linux教程-网络基础-TIS防火墙详述 |
 |
|
|
| 教程: Linux教程-网络基础-TIS防火墙详述 |
|
|
|
|
什么是防火墙——不知道;)
什么是TIS?——这是一组由(Trusted Information Systems)写的一组构造防火墙的工具
包,又叫firewall toolkit,这个工具箱里的软件适当的安装并配置以一定的安全策略
就可以构成基本的防火墙了,而且它是免费的;)花点心思看一看,说不定可以省下一笔不
菲的防火墙购置资金哦……
一、编译运行
1、下载
可以到TIS的web站点下载http://www.tis.com,但它有一些很麻烦的认证过程,建议
直接到国内的安全站点转转,或者到http://packetstorm.securify.com/去下载,我
得到的版本是fwtk2.1.tar.Z的版本,此后的说明均以此版本为例,且在solaris7 x86
上通过,gcc版本为2.95.2。
2、编译
# gunzip fwtk2.1.tar.Z
# tar vfx fwtk2.1.tar
# cd fwtk
将fwtk2.1.tar.Z解压后,可以在./fwtk目录下发现有很多Makefile.config.*文件,
比如你使用的操作系统是solaris2.7,那么就直接将Makefile.config更名后,把
Makefile.config.solaris更名为Makefile.config就行了。
# mv Makefile.config Makefile.config.old
# mv Makefile.config.solaris Makefile.config
在solaris下的编译相当容易——至少solaris7与solaris8下面不用修改任何东西就
可以编译通过了。
# make && make install
如果你使用的是linux,仅仅把Makefile.config.linux当成当前Makefile.config还
不够,因为如果你要使用X的gw.那么你必须有 Athena Widget的设置。否则编译会
出问题。因此,可以修改Makefile让系统不编译x-gw。
所以可以
# vi Makefile
查找下面这行:
# directories to build executables in
DIRS= smap smapd netacl plug-gw ftp-gw tn-gw rlogin-gw http-gw x-gw
把后面的x-gw去掉就可以了。
如果是在bsd下,特别要注意,bsd的make 不认识象:.include "Makefile.config"
这种格式,因此,在bsd下要用TIS提供的fixmake来处理。或者用指定
CC= gcc
COPT= -g -traditional -DBSDI
来适应bsd系统——比如我的FreeBSD3.4。
如果在编译过程中有出现sys_errlist的定义声明出错,那么要修改原程序,比如:
exter char *sys_errlist[];
把该行注释掉。
如果出现"Undefined symbol `_crypt' referenced from text segment"错误,则
看在你的Makefile.config中AUXLIB设置是否有"-lcrypt"。
如果还有问题……我懒得翻译那么多东西了,你可以到下面的URL看看:
http://fwtk.netimages.com/fwtk/faq/
这里列出了人们在编译及使用tis时遇到的一些常见问题。
二、配置前的准备工作
1、理解一些概念
a、wrapper
我的理解,wrapper应该是一个包装程序,说白了和那些login什么的后门没本质区别;)
比如说tcpd吧,我们用它来守护一些网络服务守护进程,比如,在超级服务守护进程
inetd的配置文件中,我们可以将
finger stream tcp nowait nobody /usr/etc/in.finger in.fingerd
这一句替换掉,用tcpd来包装
finger stream tcp nowait nobody /usr/etc/tcpd in.fingerd
发送一个HUP信号给inetd让它重启后,tcpd就发生作用了,如果此时收到一个对主机的
finger请求,tcpd便启动,先检查访问控制的配置文件,也就是/etc/hosts.allow和
/etc/hosts.deny,如果允许访问,再启动真正的finger守护进程去处理该请求。
怎么样,和login的后门相比原理是不是相同的?比如ulogin.c吧,是将真正的login改
名备份到另一个地方,用假的login包装起来,收到login请求时,先判断访问者是不是
有设置DISPLAY的环境变量,如果该变量和password相同的话,则启动/bin/sh,如果没
有,则以正常的login来响应该请求……哎,这是题外话,不说了……
b、gateway
应用级网关(Application Level Gateways)是在网络应用层上建立协议过滤和转发功能。
它针对特定的网络应用服务协议使用指定的数据过滤逻辑,并在过滤的同时,对数据包
进行必要的分析、登记和统计,形成报告。
呵,这种教材似的东西看着是不是觉得难理解,看了半天不知所云?其实在TIS下面,它
的各种gw比如tn-gw,是控制telnet的,当你连接到tn-gw运行的端口时,它会出现一个
自己的提示符……如下:
C:\>telnet 192.168.0.2
然后telnet窗口将出现
hi,i'm quack,welcome to my 3cr19TkI7's website! <------------这是我的tn-welcome.txt
tn-gw-> 它会在在连接时显示……
当我键入问号寻求帮助时,会有如下的提示信息……
tn-gw->?
Valid commands are: (unique abbreviations may be used)
connect hostname [serv/port]
telnet hostname [serv/port]
x-gw [hostname/display]
help/?
password
timeout seconds
quit/exit
tn-gw->
看明白了吗,唔,没错,它提供的是穿越这台防火墙主机对其它机器的telnet访问;)
tn-gw-> telnet 192.168.0.2 55555
Trying 192.168.0.2 port -9981...
Connected to 192.168.0.2.
SunOS 5.7
login: quack
Password:
Last login: Fri Jun 9 00:27:48 from 192.168.0.1
Sun Microsystems Inc. SunOS 5.7 Generic October 1998
Cracker%
这下清楚了吧……稍安勿燥,后面我将说明这是如何
[1] [2] [3] [4] [5] [6] [7] 下一页
|
|
| 教程录入:admin 责任编辑:admin |
|
|
上一篇教程: 教程: Linux教程-网络基础-Cisco IOS 基本命令集
下一篇教程: 教程: Linux教程-网络基础-局域网中代理服务器、路由器的配置案例 |
|
|
|
|
|
|
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|
|
|
|