实验8防火墙透明模式配置3篇 防火墙透明模式部署

时间:2022-10-05 17:35:44 综合范文

  下面是范文网小编整理的实验8防火墙透明模式配置3篇 防火墙透明模式部署,欢迎参阅。

实验8防火墙透明模式配置3篇 防火墙透明模式部署

实验8防火墙透明模式配置1

  第五章 防火墙的具体应用

  远键实业公司是一个典型的中小企业。大概100 人左右。是一家科技企业,主要从事计算机 系统集成服务,大约有100 人左右,分为市场部、财务部、销售部、人力资源部、办公室、网络管理部、工程部,网络分成内网、外网。内网经常感染病毒,蠕虫,而且某些员工使用 工具进行大数据量下载也影响网络正常工作,有时也发现来自外网黑客攻击现象,同时公司 随着业务的发展也将扩大宣传,考虑建立一个Web 服务器用来对外发布信息。公司领导和 网络部经过仔细讨论,决定在公司现有网络基础上部署一台防火墙。防火墙有很多种,国外 和国内有很多防火墙。经过选型后公司选择一款Cisco PIX 515 防火墙。公司拓扑结构如下:

  公司网络要求

  一、配置公司PIX划分内网、外网及DMZ区域:

  远键实业公司的规模并不是很大,网络拓扑结构如上图,分为内网、外网。在满足 内网用户快速访问INTERNET 的同时有效防止来自外网黑客攻击;此外,公司随着业务的 发展也需要扩大宣传,市场部考虑建立电子营销,所以希望建立一个Web 服务器用来对外 发布业务信息。公司网络管理部门决定在公司的防火墙上部署在内网和外网之 间配置PIX划分内网、外网及DMZ区域。pixfirewall>ena pixfirewall# #进入全局配置模式 pixfirewall# conf t #配置防火墙接口的名字,并指定安全级别(nameif)。pixfirewall(config)#int e0 pixfirewall(config-if)# nameif inside pixfirewall(config-if)# security-level 100 pixfirewall(config)#int e1 pixfirewall(config-if)# nameif dmz pixfirewall(config-if)# security-level 50 pixfirewall(config)#int e2 pixfirewall(config-if)# nameif outside pixfirewall(config-if)# security-level 0 security-leve 0 是外部端口outside 的安全级别(0 安全级别最高)

  security-leve 100 是内部端口inside 的安全级别,如果中间还有以太口,则security-leve 10,security-leve 20 等等命名,多个网卡组成多个网络,一般情况下增加一个以太口作为dmz security-leve 50 是停火区dmz 的安全级别。#配置内外网卡的IP 地址 pixfirewall(config)#int e0 pixfirewall(config-if)# ip address pixfirewall(config-if)# no shut pixfirewall(config)#int e1 pixfirewall(config-if)# ip address pixfirewall(config-if)# no shut pixfirewall(config)#int e1 pixfirewall(config-if)# ip address pixfirewall(config-if)# no shut 在配置内外网卡的IP 地址时注意别忘了用no shutdown 命令来激活端口。(no shut 是no shutdown 的简写)。

#允许内部网络服务器telnet pix(允许远程登录到防火墙)pixfirewall(config)# telnet inside #同时你也可以允许外部网络服务器远程登录到防火墙命令如下 pix515(config)# telnet outside 但为了安全最好是只允许内部网络服务器远程登录到防火墙,保证防火墙的安全。#配置远程登录密码

  Pix515(config)# password 以上表明远程登录密码为 #保存配置 write memory 在配置完成后,要记住保存配置,以便以后进一步的配置及管理。、配置DMZ #设置DMZ 接口IP 地址,设置好后可以按拓扑结构图测试从PIX 上ping 检查连通性。

  Pixfirewall(config)#int e1 pixfirewall(config-if)# ip address #允许DMZ 主机访问外部网络icmp 协议

  Pixfirewall(config-if)# access-list acl_dmz permit icmp any any #应用策略到DMZ 接口 把acl_dmz 规则邦定到dmz 端口上使之生效 pixfirewall(config-if)# access-group acl_dmz in interface dmz #发布DMZ 服务器到因特网 设置静态的因特网、局域网、dmz 区的访问关系 static(dmz,outside) netmask #设置策略允许因特网访问DMZ 服务器80 端口

  Pixfirewall(config)# access-list 100 permit tcp any host eq 80 #将 上的www..complete Loading from (via Ethernet0/0):!!!!!!!文件下载成功后操作终端显示器会提示: Do you wish to erase the passwords? [y/n] y Passwords have been erased.因为设备众多,口令也就多了,非常容易混淆和忘记口令。忘记口令后,恢复口令就相 当重要了。掌握了恢复口令,会对工作有很大的帮助。

  十、PIX防火墙VPN的实现

  公司员工经常需要通过Internet 与客户进行通信,由于Internet 是一个不安全的网 络,其中公司有一些商业文档需要机密,公司网络部希望公司员工防火墙能够保障通过 Internet 与公司重要客户进行通信时实现信息传输保密。对PIX 防火墙进行配置,实现VPN。

  一、基础知识: PPTP:点对点隧道协议

  点对点隧道协议(PPTP: Point to Point Tunneling Protocol)是一种支持多协议虚 拟专用网络的网络技术。通过该协议,远程用户能够通过 Microsoft Windows NT 工作站、Windows XP 操作系统以及其它装有点对点协议的系统安全访问公司网络,并能拨号连入本 地 ISP,通过 Internet 安全链接到公司网络。

  PPTP 可以用于在 IP 网络上建立 PPP 会话隧道。在这种配置下,PPTP 隧道和

  PPP 会话运行在两个相同的机器上,呼叫方充当 使用客户机-服务器结构来分 离当前网络访问服务器具备的一些功能并支持虚拟专用网络。PPTP 作为一个呼叫控制和管 理协议,它允许服务器控制来自 PSTN 或 ISDN 的拨入电路交换呼叫访问并初始化外部电路交换连 接。

  PPTP 只能通过 PAC 和 PNS 来实施,其它系统没有必要知道 PPTP.拨号网络可与 PAC 相连接而无需知道 PPTP.标准的 PPP 客户机软件可继续在隧道 PPP 链接上操作。PPTP 使用 GRE 的扩展版本来传输用户 PPP 包。这些增强允许为在 PAC 和 PNS 之间 传输用户数据的隧道提供低层拥塞控制和流控制。这种机制允许高效使用隧道可用带宽并且 避免了不必要的重发和缓冲区溢出。PPTP 没有规定特定的算法用于低层控制,但它确实定 义了一些通信参数来支持这样的算法工作。

  二、配置

  1、命令行方式直接在PIX上配置PPTP的VPN,即PIX作为PPTP方式VPDN的服务器 ip local pool pptp //定义一个pptp 方式的vpdn拨入后获得的IP地址池,名字叫做pptp。此处地址段的定义 范围不要和拨入后内网其他计算机的IP冲突,并且要根据拨入用户的数量来定义地址池的 大小

  Pixfirewall(config)# crypto ipsec transform-set xp esp-des esp-md5-hmac 创建与加密相关的全局值

  Pixfirewall(config)# crypto dynamic-map dymap 10 set transform-set xp 创建一个动态加密映射项

  Pixfirewall(config)# crypto map mymap 10 ipsec-isakmp dynamic dymap 定义名字为mymap编号为10静态加密map, 将名字为dymap的动态加密map 映射到静 态加密map mymap 上.pixfirewall(config)# crypto map mymap interface outside 将静态加密map应用在外部接口上 pixfirewall(config)# pixfirewall(config)# isakmp enable outside 在外部接口上启用ISAKMP策略。

  Pixfirewall(config)# isakmp key address netmask 针对分支机构的动态公有IP,配置ISAKMP预共享密钥,如,表示适合 于所有的公有IP地址。

  Pixfirewall(config)# isakmp policy 9 authentication pre-share 定义编号为9的ISAKMP策略,认证方式使用预共享密钥:Pre-Share Key pixfirewall(config)# isakmp policy 9 encryption des 对于编号为9的ISAKMP策略的加密算法使用des pixfirewall(config)# isakmp policy 9 hash sha 对于编号为9的ISAKMP策略的hash完整性算法使用sha pixfirewall(config)# isakmp policy 9 group 2 对于编号为9的ISAKMP策略,密钥交换组DH(Diffie-Hellman)长度为group 2 pixfirewall(config)# isakmp policy 9 lifetime 对于编号为9的ISAKMP策略生存时期为秒。pptp使用1723端口,而通常pix里面的服务器对外都是做的静态NAT转换,但是光双 向开放1723端口仍旧无法建立pptp的vpn连接,那么对于pix 以上版本的pptp穿透 可以用一条命令fixup protocol pptp 1723 来解决这个问题。

  通过对PIX 防火墙的设置,实现了VPN。公司内的一些商业机密能有了保障。通过 Internet 与公司重要客户进行通信时实现信息传输保密。

  十一、建立Pix 防火墙日志重定向

  黑客攻击进来后,有时间会把防火墙的日志进行擦除以逃避责任,公司网络部希望网络管理员能够有效地保存防火墙日志。建立Pix 防火墙日志重定向。linux 配置:

  1、vi/etc/sysconfig/syslog(按i 进入vi 的编辑状态。): SYSLOGD_OPTIONS=“-m 0”修改为

  sYSLOGD_OPTIONS=“-r-m 0”//-r 允许从远端主机写入messages(编辑完成后按ESC 回到命令行状态,然后输入:wq,存盘退出,如果不存盘输入:q)

  2、vi/etc/ 加入下列内容

  把设备号为local4(pix的默认设备号,对应pix端的facility为20)的所有的日志记录到 /var/log/中

# local4.* /var/log/

  3、为了避免日志过大,配置日志轮循(manlogrotate查看详细的帮助信息)vi/etc/ 增加下列内容: #system-specific logs may be also be configured here./var/log/{ weekly rotate4&

  4、重起syslog 服务:

[root@localhost&etc]# service syslog restart pix 配置:

  Pix#logging on Pix#logging host //记录日志的主机IP Pix#logging trap 7 //指定日志消息的级别(0:紧急(Emergencies)1:告警(Alerts)2:严重的(Critical)3:错误(Errors)4:警告(Warnings)5:通知(Notifications)6: 信息(Informational)7:调试(Debugging))Pix#logging facility 20//更改设备号,Pix默认为local20 Pix#exit Pix#sh logging//可以看到当前日志记录是否启动 Pix#wr mem //保存配置

  完成以上配置后就可以在linux 下运用cat /var/log/ 查看 Pix的日志文件:

  黑客攻击进来后,有时间会把防火墙的日志进行擦除以逃避责任,通过把linux配置成PIX 的 日志主机,能够有效地保存防火墙日志,进一步提高安全性。

实验8防火墙透明模式配置2

  实验九

  防火墙技术实验

  1、实验目的

  防火墙是网络安全的第一道防线,按防火墙的应用部署位置分类,可以分为边界防火墙、个人防火墙和分布式防火墙三类。通过实验,使学生了解各种不同类型防火墙的特点,掌握个人防火墙的工作原理和规则设置方法,掌握根据业务需求制定防火墙策略的方法。

  2、题目描述

  根据不同的业务需求制定天网防火墙策略,并制定、测试相应的防火墙的规则等。

  3、实验要求

  基本要求了解各种不同类型防火墙的特点,掌握个人防火墙的工作原理和规则设置方法,掌握根据业务需求制定防火墙策略的方法。提高要求能够使用WindowsDDK开发防火墙。

  4、相关知识

  1)防火墙的基本原理防火墙(firewall)是一种形象的说法,本是中世纪的一种安全防务:在城堡周围挖掘一道深深的壕沟,进入城堡的人都要经过一个吊桥,吊桥的看守检查每一个来往的行人。对于网络,采用了类似的处理方法,它是一种由计算机硬件和软件的组合,使互联网与内部网之间建立起一个安全网关(securitygateway),也就是一个电子吊桥,从而保护内部网免受非法用户的侵入,它其实就是一个把互联网与内部网(通常指局域网或城域网)隔开的屏障。它决定了哪些内部服务可以被外界访问、可以被哪些人访问,以及哪些外部服务可以被内部人员访问。防火墙必须只允许授权的数据通过,而且防火墙本身也必须能够免于渗透。典型的网络防火墙如下所示。

  防火墙也并不能防止内部人员的蓄意破坏和对内部服务器的攻击,但是,这种攻击比较容易发现和察觉,危害性也比较小,这一般是用公司内部的规则或者给用户不同的权限来控制。

  2)防火墙的分类前市场的防火墙产品主要分类如下:

(1)从软、硬件形式上软件防火墙和硬件防火墙以及芯片级防火墙。(2)从防火墙技术“包过滤型”和“应用代理型”两大类。

(3)从防火墙结构单一主机防火墙、路由器集成式防火墙和分布式防火墙三种。(4)按防火墙的应用部署位置边界防火墙、个人防火墙和混合防火墙三大类。(5)按防火墙性能百兆级防火墙和千兆级防火墙两类。3)防火墙的基本规则

■一切未被允许的就是禁止的(No规则)。■一切未被禁止的就是允许的(Yes规则)。

  很多防火墙(例如SunScreenEFS、CiscoIOs、FW-1)以顺序方式检查信息包,当防火墙接收到一个信息包时,它先与第一条规则相比较,然后是第二条、第三条??当它发现一条匹配规则时,就停止检查并应用那条规则。

  4)防火墙自身的缺陷和不足

■限制有用的网络服务。防火墙为了提高被保护网络的安全性,限制或关闭了很多有用但存在安全缺陷的网络服务。

■无法防护内部网络用户的攻击。目前防火墙只提供对外部网络用户攻击的防护,对来自内部网络用户的攻击只能依靠内部网络主机系统的安全性。■Internet防火墙无法防范通过防火墙以外的其他途径的攻击。例如,在一个被保护的网络上有一个没有限制的拨出存在,内部网络上的用户就可以直接通过SLIP或PPP联接进入Internet。

■对用户不完全透明,可能带来传输延迟、瓶颈及单点失效。■Internet防火墙也不能完全防止传送已感染病毒的软件或文件。

■防火墙无法防范数据驱动型的攻击。数据驱动型的攻击从表面上看是无害的数据被邮寄或拷贝到Internet主机上,但一旦执行就开始攻击。例如,一个数据型攻击可能导致主机修改与安全相关的文件,使得入侵者很容易获得对系统的访问权。

■不能防备新的网络安全问题。防火墙是一种被动式的防护手段,它只能对现在已知的网络威胁起作用。

  5、实验设备

  主流配置PC,安装有windows 2000 SP4操作系统,网络环境,天网防火墙个人版。

  6、实验步骤

  1)从指导老师处得到天网防火墙个人版软件。

  2)天网防火墙个人版的安装。按照安装提示完成安装,并重启后系统。

  3)系统设置。在防火墙的控制面板中点击“系统设置”按钮,即可展开防火墙系统设置面板。

  天网个人版防火墙系统设置界面如下。

  防火墙自定义规则重置:占击该按钮,防火墙将弹出窗口,如下:

  如果确定,天网防火墙将会把防火墙的安全规则全部恢复为初始设置,你对安全规则的修改和加入的规则将会全部被清除掉。

  防火墙设置向导:为了便于用户合理的设置防火墙,天网防火墙个人版专门为用户设计了防火墙设置向导。用户可以跟随它一步一步完成天网防火墙的合理设置。

  应用程序权限设置:勾选了该选项之后,所有的应用程序对网络的访问都默认为通行不拦截。这适合在某些特殊情况下,不需要对所有访问网络的应用程序都做审核的时候。(譬如在运行某些游戏程序的时候)

  局域网地址:设置在局域网内的地址。防火墙将会以这个地址来区分局域网或者是INTERNET 的IP来源。日志保存:选中每次退出防火墙时自动保存日志,当你退出防火墙的保护时,天网防火墙将会把当日的日志记录自动保存到SkyNet/FireWall/log文件下,打开文件夹便可查看当日的日志记录。

  4)安全级别设置天网个人版防火墙的缺省安全级别分为低、中、高三个等级,默认的安全等级为中级。了解安全级别的说明请查看防火墙帮助文件。为了了解规则的设置等情况,我们选择自定义安全级别。

  然后点击左边的将打开自定义的IP规则。

  从中可以看出,规则的先后顺序为IP规则、ICMP规则、IGMP规则、TCP规则和UDP规则。自定义IP规则的工具条如下,可以使用这些工具完成规则的增加、修改、删除、保存、调整、导入导出操作。重要:规则增加、修改、删除等操作后一定要点击保存图标进行保存,否则无效。

  单击规则前面的,可使该规则不起作用,且其形状变为。

  5)修改规则双击该规则,或者点击工具条上的修改按钮可以打开该规则的修改窗体。然后按照需求对各部分进行修改。

(1)首先输入规则的“名称”和“说明”,以便于查找和阅读。(2)然后,选择该规则是对进入的数据包还是输出的数据包有效。

(3)“对方的IP地址”,用于确定选择数据包从那里来或是去哪里,这里有几点说明: ■“任何地址”是指数据包从任何地方来,都适合本规则,■“局域网网络地址”是指数据包来自和发向局域网,■“指定地址”是你可以自己输入一个地址,“指定的网络地址”是你可以自己输入一个网络和掩码。

(4)除了录入选择上面内容,还要录入该规则所对应的协议,其中:

■‘IP’协议不用填写内容,注意,如果你录入了IP协议的规则,一点要保证IP协议规则的最后一条的内容是:“对方地址:任何地址;动作:继续下一规则”。

■‘TCP’协议要填入本机的端口范围和对方的端口范围,如果只是指定一个端口,那么可以在起始端口处录入该端口,结束处,录入同样的端口。如果不想指定任何端口,只要在起始端口都录入0。TCP标志比较复杂,你可以查阅其他资料,如果你不选择任何标志,那么将不会对标志作检查。

■‘ICMP’规则要填入类型和代码。如果输入255,表示任何类型和代码都符合本规则。■‘IGMP’不用填写内容。

(5)当一个数据包满足上面的条件时,你就可以对该数据包采取行动了: ■‘通行’指让该数据包畅通无阻的进入或出去。■拦截’指让该数据包无法进入你的机器

■继续下一规则’指不对该数据包作任何处理,由该规则的下一条同协议规则来决定对该包的处理。(6)在执行这些规则的同时,还可以定义是否记录这次规则的处理和这次规则的处理的数据包的主要内容,并用右下脚的“天网防火墙个人版”图标是否闪烁来“警告”,或发出声音提示。

  6)新增规则点击工具条的新增规则按钮可以新增一条规则,并弹出该规则的编辑界面。比如新增一条允许

  访问WWW端口的规则,可以按如下方法设置。设置完成后点击“确定”,并点击工具条的保存按钮。

  7)普通应用程序规则设置天网防火墙个人版增加对应用程序数据传输封包进行底层分析拦截功能,它可以控制应用程序发送和接收数据传输包的类型、通讯端口,并且决定拦截还是通过。在天网防火墙个人版打开的情况下,首次激活的任何应用程序只要有通讯传输数据包发送和接收存在,都会被天网防火墙个人版先截获分析,并弹出窗口,询问你是通过还是禁止。这时可以根据需要来决定是否允许应用程序访问网络。如果不选中“该程序以后按照这次的操作运行”,那么天网防火墙个人版在以后会继续截获该应用程序的数据传输数据包,并且弹出警告窗口。如果选中“该程序以后按照这次的操作运行”选项,该应用程序将自加入到应用程序列表中,可以通过应用程序设置来设置更为详尽的数据传输封包过滤方式。

  8)高级应用程序规则设置单击

  可以打开详细的应用程序规则设置。单击应用程序规则面板中对应每一条应用程序规则都有几个按钮

  点击“选项”即可激活应用程序规则高级设置页面。

“该应用程序可以”窗口是设定该应用程序可以做的动作。其中:是指此应用程序进程可以向外发出连接请求,通常是用于各种客户端软件。则是指此程序可以在本机打开监听的端口来提供网络服务,这通常用于各种服务器端程序中。

  9)根据以上功能,分别完成如下不同需求的防火墙规则设置并进行测试。

  需求1:ICMP规则允许ping进来,其它禁止,TCP规则允许访问本机的WWW服务和主动模式的FTP服务,其它禁止,UDP禁止。需求2:ICMP规则允许ping出去,其它禁止,TCP规则禁止所有连接本机,允许IE访问Internet的80端口,UDP规则允许DNS解析,其它进出UDP报文禁止。

  7、实验思考

  1)根据你所了解的网络安全事件,你认为天网防火墙不具备的功能有哪些? 2)防火墙是不是绝对的安全?攻击防火墙系统的手段有哪些?

实验8防火墙透明模式配置3

  实验三 防火墙的配置

? 实验目的

  1、了解防火墙的含义与作用

  2、学习防火墙的基本配置方法

  3、理解iptables工作机理

  4、熟练掌握iptables包过滤命令及规则

  5、学会利用iptables对网络事件进行审计

  6、熟练掌握iptables NAT工作原理及实现流程

  7、学会利用iptables+squid实现web应用代理

? 实验原理

? 防火墙的基本原理

  一.什么是防火墙

  在古代,人们已经想到在寓所之间砌起一道砖墙,一旦火灾发生,它能够防止火势蔓延到别的寓所,于是有了“防火墙”的概念。

  进入信息时代后,防火墙又被赋予了一个类似但又全新的含义。防火墙是指设置在不同网络(如可信任的企业内部网和不可信的公共网)或网络安全域之间的一系列部件的组合。它是不同网络或网络安全域之间信息的唯一出入口,能根据企业的安全政策控制(允许、拒绝、监测)出入网络的信息流,且本身具有较强的抗攻击能力。它是提供信息安全服务,实现网络和信息安全的基础设施。在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和Internet之间的任何活动,保证了内部网络的安全。

  二.防火墙能做什么 1.防火墙是网络安全的屏障

  一个防火墙(作为阻塞点、控制点)能极大地提高一个内部网络的安全性,并通过过滤不安全的服务而降低风险。由于只有经过精心选择的应用协议才能通过防火墙,所以网络环境变得更安全。如防火墙可以禁止诸如众所周知的不安全的NFS协议进出受保护网络,这样外部的攻击者就不可能利用这些脆弱的协议来攻击内部网络。防火墙同时可以保护网络免受基于路由的攻击,如IP选项中的源路由攻击和ICMP重定向中的重定向路径。防火墙应该可以拒绝所有以上类型攻击的报文并通知防火墙管理员。

  2.防火墙可以强化网络安全策略

  通过以防火墙为中心的安全方案配置,能将所有安全软件(如口令、加密、身份认证、审计等)配置在防火墙上。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。例如在网络访问时,一次一密口令系统和其它的身份认证系统完全可以不必分散在各个主机上,而集中在防火墙一身上。

  3.对网络存取和访问进行监控审计

  如果所有的访问都经过防火墙,那么,防火墙就能记录下这些访问并作出日志记录,同时也能提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行适当的报警,并提供网络是否受到监测和攻击的详细信息。另外,收集一个网络的使用和误用情况也是非常重要的。首先的理由是可以清楚防火墙是否能够抵挡攻击者的探测和攻击,并且清楚防火墙的控制是否充足。而网络使用统计对网络需求分析和威胁分析等而言也是非常重要的。

  4.防止内部信息的外泄

  通过利用防火墙对内部网络的划分,可实现内部网重点网段的隔离,从而限制了局部重点或敏感网络安全问题对全局网络造成的影响。再者,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至因此而暴漏了内部网络的某些安全漏洞。使用防火墙就可以隐蔽那些透漏内部细节如Finger,DNS等服务。Finger显示了主机的所有用户的注册名、真名,最后登录时间和使用shell类型等。但是Finger显示的信息非常容易被攻击者所获悉。攻击者可以知道一个系统使用的频繁程度,这个系统是否有用户正在连线上网,这个系统是否在被攻击时引起注意等等。防火墙可以同样阻塞有关内部网络中的DNS信息,这样一台主机的域名和IP地址就不会被外界所了解。

  除了安全作用,防火墙还支持具有Internet服务特性的企业内部网络技术体系VPN。通过VPN,将企事业单位在地域上分布在全世界各地的LAN或专用子网,有机地联成一个整体。不仅省去了专用通信线路,而且为信息共享提供了技术保障。

  三.NAT NAT英文全称是“Network Address Translation”,中文意思是“网络地址转换”,它是一个IETF(Internet Engineering Task Force, Internet工程任务组)标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。顾名思义,它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术。

  简单的说,NAT就是在局域网内部网络中使用内部地址,而当内部节点要与外部网络进行通讯时,就在网关(可以理解为出口,打个比方就像院子的门一样)处,将内部地址替换成公用地址,从而在外部公网(Internet)上正常使用,NAT可以使多台计算机共享Internet连接,这一功能很好地解决了公共IP地址紧缺的问题。通过这种方法,您可以只申请一个合法IP地址,就把整个局域网中的计算机接入Internet中。这时,NAT屏蔽了内部网络,所有内部网计算机对于公共网络来说是不可见的,而内部网计算机用户通常不会意识到NAT的存在。这里提到的内部地址,是指在内部网络中分配给节点的私有IP地址,这个地址只能在内部网络中使用,不能被路由(一种网络技术,可以实现不同路径转发)。虽然内部地址可以随机挑选,但是通常使用的是下面的地址:~,~,~。NAT将这些无法在互联网上使用的保留IP地址翻译成可以在互联网上使用的合法IP地址。而全局地址,是指合法的IP地址,它是由NIC(网络信息中心)或者ISP(网络服务提供商)分配的地址,对外代表一个或多个内部局部地址,是全球统一的可寻址的地址。

  NAT功能通常被集成到路由器、防火墙、ISDN路由器或者单独的NAT设备中。比如Cisco路由器中已经加入这一功能,网络管理员只需在路由器的IOS中设置NAT功能,就可以实现对内部网络的屏蔽。再比如防火墙将Web Server的内部地址映射为外部地址,外部访问地址实际上就是访问。另外对资金有限的小型企业来说,现在通过软件也可以实现这一功能。Windows 98 SE、Windows 2000 都包含了这一功能。

  NAT有三种类型:静态NAT(Static NAT)、动态地址NAT(Pooled NAT)、网络地址端口转换NAPT(Port-Level NAT)。

  其中静态NAT设置起来最为简单和最容易实现的一种,内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。而动态地址NAT则是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络。NAPT则是把内部地址映射到外部网络的一个IP地址的不同端口上。根据不同的需要,三种NAT方案各有利弊。

  动态地址NAT只是转换IP地址,它为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号,对于频繁的远程联接也可以采用动态NAT。当远程用户联接上之后,动态地址NAT就会分配给他一个IP地址,用户断开时,这个IP地址就会被释放而留待以后使用。

  网络地址端口转换NAPT(Network Address Port Translation)是人们比较熟悉的一种转换方式。NAPT普遍应用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP端口号。

  在Internet中使用NAPT时,所有不同的信息流看起来好像来源于同一个IP地址。这个优点在小型办公室内非常实用,通过从ISP处申请的一个IP地址,将多个连接通过NAPT接入Internet。实际上,许多SOHO远程访问设备支持基于PPP的动态IP地址。这样,ISP甚至不需要支持NAPT,就可以做到多个内部IP地址共用一个外部IP地址访问Internet,虽然这样会导致信道的一定拥塞,但考虑到节省的ISP上网费用和易管理的特点,用NAPT还是很值得的。

? Windows 2003防火墙

  Windows 2003提供的防火墙称为Internet连接防火墙,通过允许安全的网络通信通过防火墙进入网络,同时拒绝不安全的通信进入,使网络免受外来威胁。Internet连接防火墙只包含在 Windows Server 2003 Standard Edition和32位版本的 Windows Server 2003 Enterprise Edition 中。

  在Windows2003服务器上,对直接连接到Internet的计算机启用防火墙功能,支持网络适配器、DSL适配器或者拨号调制解调器连接到Internet。它可以有效地拦截对Windows 2003服务器的非法入侵,防止非法远程主机对服务器的扫描,从而提高Windows 2003服务器的安全性。同时,它也可以有效拦截利用操作系统漏洞进行端口攻击的病毒,如冲击波等蠕虫病毒。如果在用Windows 2003构造的虚拟路由器上启用此防火墙功能,能够对整个内部网络起到很好的保护作用。

  1.启用/关闭防火墙

(1)打开“网络连接”,右击要保护的连接,单击“属性”,出现“本地连接属性”对话框。

(2)选择“高级”选项卡,单击“设置”按钮,出现启动/停止防火墙界面。如果要启用 Internet 连接防火墙,请单击“启用(O)”按钮;如果要禁用Internet 连接防火墙,请单击“关闭(F)”按钮。

  2.防火墙服务设置

  Windows 2003 Internet连接防火墙能够管理服务端口,例如HTTP的80端口、FTP的21端口等,只要系统提供了这些服务,Internet连接防火墙就可以监视并管理这些端口。

(1)解除阻止设置。

  在“例外”选项卡中,可以通过设定让防火墙禁止和允许本机中某些应用程序访问网络,加上“√”表示允许,不加“√”表示禁止。如果允许本机中某项应用程序访问网络,则在对话框中间列表中所列出该项服务前加“√”(如果不存在则可单击“添加程序”按钮进行添加);如果禁止本机中某项应用程序访问网络,则将该项服务前的“√”清除(如果不存在同样可以添加)。在“Windows防火墙阻止程序时通知我”选项前打“√”则在主机出现列表框中不存在的应用程序欲访问网络时,防火墙会弹出提示框询问用户是否允许该项网络连接。

(2)高级设置。

  在“高级”选项卡中,可以指定需要防火墙保护的网络连接,双击网络连接或单击“设置”按钮设置允许其他用户访问运行于本主机的特定网络服务。选择“服务”选项卡,其中列举出了网络标准服务,加上“√”表示允许,不加“√”表示禁止。如果允许外部网络用户访问网络的某一项服务,则在对话框中间列表中所列出该项服务前加“√”(如果不存在则可单击“添加程序”按钮进行添加);如果禁止外部网络用户访问内部网络的某一项服务,则将该项服务前的“√”清除(如果不存在同样可以添加)。选择“ICMP”选项卡,允许或禁止某些类型的ICMP响应,建议禁止所有的ICMP响应。

  3.防火墙安全日志设置

  Windows2003防火墙可以记录所有允许和拒绝进入的数据包,以便进行进一步的分析。在“高级”选项卡的“安全日志记录”框中单击“设置”按钮,进入“日志设置”界面。

  如果要记录被丢弃的包,则选中“记录被丢弃的数据包”复选按钮;如果要记录成功的连接,则选中“记录成功的连接”复选按钮。

  日志文件默认路径为C:,用记事本可以打开,所生成的安全日志使用的格式为W3C扩展日志文件格式,可以用常用的日志分析工具进行查看分析。你也可以重新指定日志文件,而且还可以通过“大小限制”限定文件的最大使用空间。

「说明」 建立安全日志是非常必要的,在服务器安全受到威胁时,日志可以提供可靠的证据。

? linux防火墙-iptable的应用

  一.iptables简介

  从内核开始,linux就已经具有包过滤功能了,在的内核中我们采用ipfwadm来操作内核包过滤规则。之后在内核中,采用了大家并不陌生的ipchains来控制内核包过滤规则。在内核中我们不再使用ipchains,而是采用一个全新的内核包过滤管理工具—iptables。这个全新的内核包过滤工具将使用户更易于理解其工作原理,更容易被使用,当然也将具有更为强大的功能。

  实际上iptables只是一个内核包过滤的工具,iptables可以加入、插入或删除核心包过滤表格(链)中的规则。实际上真正来执行这些过滤规则的是netfilter(Linux内核中一个通用架构)及其相关模块(如iptables模块和nat模块)。

  Netfilter提供了一系列的“表(tables)”,每个表由若干“链(chains)”组成,而每条链中有一条或数条规则(rule)组成。我们可以这样来理解,netfilter是表的容器,表是链的容器,链又是规则的容器。

  Netfilter系统缺省的表为“filter”,该表中包含了INPUT、FORWARD和OUTPUT 3个链。每一条链中可以有一条或数条规则,每一条规则都是这样定义的“如果数据包头符合这样的条件,就这样处理这个数据包”。当一个数据包到达一个链时,系统就会从第一条规则开始检查,看是否符合该规则所定义的条件:如果满足,系统将根据该条规则所定义的方法处理该数据包;如果不满足则继续检查下一条规则。最后,如果该数据包不符合该链中任一条规则的话,系统就会根据预先定义的策略(policy)来处理该数据包。

  图3-2-1 网络数据包在filter表中的流程

  数据包在filter表中的流程如图3-2-1所示。有数据包进入系统时,系统首先根据路由表决定将数据包发给哪一条链,则可能有三种情况:

(1)如果数据包的目的地址是本机,则系统将数据包送往INPUT链,如果通过规则检查,则该包被发给相应的本地进程处理;如果没有通过规则检查,系统就会将这个包丢掉。

(2)如果数据包的目的地址不是本机,也就是说,这个包将被转发,则系统将数据包送往FORWARD链,如果通过规则检查,则该包被发给相应的本地进程处理;如果没有通过规则检查,系统就会将这个包丢掉。

(3)如果数据包是由本地系统进程产生的,则系统将其送往OUTPUT链,如果通过规则检查,则该包被发给相应的本地进程处理;如果没有通过规则检查,系统就会将这个包丢掉。

  当我们在使用iptables NAT功能的时候,我们所使用的表不再是“filter”表,而是“nat”表,所以我们必须使用“-t nat”选项来显式地指明这一点。因为系统缺省的表是“filter”,所以在使用filter功能时,我们没有必要显式的指明“-t filter”。

  同“filter”表一样,nat表也有三条缺省的链,这三条链也是规则的容器,它们分别是:

(1)PREROUTING: 可以在这里定义进行目的NAT的规则,因为路由器进行路由时只检查数据包的目的IP地址,为了使数据包得以正确路由,我们必须在路由之前就进行目的NAT。

(2)POSTROUTING: 可以在这里定义进行源NAT的规则,在路由器进行路由之后才进行源NAT。(3)OUTPUT: 定义对本地产生的数据包的目的NAT规则。二.NAT工作原理

  NAT的基本思想是为每个企业分配一个IP地址(或者是很少几个)来进行Internet传输。在企业内部,每个电脑取得一唯一的IP地址来为内部传输做路由。然而,当封包离开企业,进入ISP之后,就需要进行地址转换了。为了使这个方案可行,IP地址的范围被声明为私有的,企业可以随意在内部使用他们。仅有的规则是,没有包含这些地址的封包出现在Internet上。

「说明」 IP私有地址范围是:~/

  8、 ~/

  12、~/16。

  如图3-2-2所示。在企业内部,每个机器都有一个唯一的形式的地址。然而,当封包离开企业时,它要经过NAT转盒,NAT盒将内部IP源地址,即图中的转换成企业的真实地址(这个地址对于Internet来说是可见的),此例中为。NAT盒通常和防火墙一起绑定在一个设备上,这里的防火墙通过小心地控制进出企业的封包提供了安全保障。

  图3-2-2 NAT地址转换

  三.iptables常用操作语法

  对于任何协议及协议的扩展,通用匹配都可以直接使用。(1)匹配指定协议。

  匹配-p,--protocol/使用 iptables-A INPUT-p tcp-j ACCEPT/说明匹配指定的协议,指定协议的形式有以下几种:①名字不分大小写,但必须是在/etc/protocols中定义的;②可以使用协议相应的整数值。例如,ICMP的值是1,TCP是6,UDP是17;③缺少设置ALL,相应数值是0,要注意这只代表匹配TCP、UDP、ICMP,而不是/etc/protocols中定义的所有协议;④可以是协议列表,以英文逗号为分隔符,如:udp,tcp;⑤可以在协议前加英文的感叹号表示取反,注意有空格,如:--protocol!tcp表示非TCP协议,也就是UDP和ICMP。可以看出这个取反的范围只是TCP、UDP和ICMP。

(2)以IP源地址匹配包。

  匹配-s,--src,--source/使用 iptables-A INPUT-s ACCEPT/说明以IP源地址匹配包。地址的形式如下:①单个地址,如,也可写成/或/32;②网络,如/24,或/;③在地址前加英文感叹号表示取反,注意空格,如—source!/24表示除此地址外的所有地址;④缺省是所有地址。

(3)以IP目的地址匹配包。

  匹配-d,--dst,--destination/使用 iptables-A INPUT-d ACCEPT/说明以IP目的地址匹配包。地址的形式和—source完全一样。

(4)以包进入本地使用的网络接口匹配包。

  匹配-i/使用 iptables-A INPUT-i eth0-j ACCEPT/说明以包进入本地所使用的网络接口来匹配包。要注意这个匹配操作只能用于INPUT,FORWARD和PREROUTING这三个链,用在其他任何地方会提示错误信息。指定接口有以下方法:①指定接口名称,如:eth0、ppp0等;②使用通配符,即英文加号,它代表字符数字串。若直接用一个加号,即iptables-A INPUT-i +表示匹配所有的包,而不考虑使用哪个接口。通配符还可以放在某一类接口的后面,如:eth+表示匹配所有从Ethernet接口进入的包;③在接口前加英文感叹号表示取反,如:-i!eth0意思是匹配来自除eth0外的所有包。

(5)以包离开本地所使用的网络接口来匹配包。

  匹配-o/使用 iptables-A OUTPUT-o eth1-j ACCEPT/说明以包离开本地所使用的网络接口来匹配包。要注意这个匹配操作只能用于OUTPUT,FORWARD和POSTROUTING这三个链,用在其他任何地方会提示错误信息。

(6)匹配通信源端口。

  匹配--source-port,--sport/使用 iptables-A INPUT-p tcp--sport 1111/说明当通信协议为TCP或UDP时,可以指定匹配的源端口,但必须与匹配协议相结合使用。

(7)匹配通信源端口。

  匹配--destination-port,--dport/使用 iptables-A INPUT-p tcp--dport 80/说明当通信协议为TCP或UDP时,可以指定匹配的目的端口,但必须与匹配协议相结合使用。

  五.iptables功能扩展 1.TCP扩展

  iptables可以扩展,扩展分为两种:一种是标准的;另一种是用户派生的。如果指定了“-p tcp”,那么TCP扩展将自动加载,通过--tcp-flags扩展,我们指定TCP报文的哪些Flags位被设置,在其后跟随两个参数:第一个参数代表Mask,指定想要测验的标志位;第二个参数指定哪些位被设置。

  例:设置iptables防火墙禁止来自外部的任何tcp主动请求,并对此请求行为进行事件记录。

  其中ULOG指定对匹配的数据包进行记录,由日志生成工具ULOG生成iptables防火日志,--log-prefix选项为记录前缀。

  2.ICMP扩展

  例:设置iptables防火墙允许来自外部的某种类型/代码的ICMP数据包。

  其中--icmp-type为扩展命令选项,其后参数可以是三种模式:(1)ICMP类型名称(例如,host-unreachable)。(2)ICMP类型值(例如3)。(3)ICMP类型及代码值(8/0)。六.状态检测

“状态”的意思是指如果一个数据包是对先前从防火墙发出去的包的回复,则防火墙自动不用检查任何规则就立即允许该数据包进入并返回给请求者,这样就不用设置许多规则定义就可实现应用的功能。

  我们可以把请求端与应答端之间建立的网络通信连接称为网络会话,每个网络会话都包括以下信息——源IP地址、目标IP地址、源端口、目的端口,称为套接字对;协议类型、连接状态(TCP协议)和超时时间等。防火墙把这些信息称为状态(stateful)。状态包过滤防火墙能在内存中维护一个跟踪状态的表,比简单的包过滤防火墙具有更大的安全性,而iptables就是一种基于状态的防火墙。命令格式如下:

  iptables-m state--state [!] state [,state,state,state] 其中,state表是一个由逗号分割的列表,用来指定连接状态,状态分为4种:(1)NEW: 该包想要建立一个新的连接(重新连接或连接重定向)

(2)RELATED:该包是属于某个已经建立的连接所建立的新连接。举例:FTP的数据传输连接和控制连接之间就是RELATED关系。

(3)ESTABLISHED:该包属于某个已经建立的连接。(4)INVALID:该包不匹配于任何连接,通常这些包被DROP。七.NAT操作

  前面提到在iptables防火墙中提供了3种策略规则表:Filter、Mangle和NAT,这3种表功能各不相同,而最为常用的就是filter和nat表。

  Nat表仅用于NAT,也就是网络地址转换。做过NAT操作的数据包的地址就被改变了,当然这种改变是根据我们的规则进行的。属于流的包只会经过这个表一次,经一个包被允许做NAT,那么余下的包都会自动地做相同的操作。也就是说,余下的包不会再通过这个表一个一个的被NAT,而是自动完成的。常用操作分为以下几类。

(1)SNAT(source network address translation,源网络地址目标转换)。

  sNAT是POSTROUTING链表的作用,在封包就要离开防火墙之前改变其源地址,这在极大程度上可以隐藏本地网络或者DMZ等。比如,多个PC机使用路由器共享上网,每个PC机都配置了内网IP(私有IP),PC机访问外部网络的时候,路由器将数据包的报头中的源地址替换成路由器的IP,当外部网络的服务器比如网站Web服务器接到访问请求的时候,它的日志记录下来的路由器的IP,而不是PC机的内网IP,这是因为,这个服务器收到的数据包的报头里边的“源地址”已经被替换了。所以叫做SNAT,基于源地址的地址转换。

  例如更改所有来自/24的数据包的源IP地址为,其iptables实现为:

(2)DNAT(destination network address translation,目标网络地址转换)。

  DNAT是PREROUTING链表的作用,在封包刚刚到达防火墙时改变其目的地址,以使包能重路由到某台主机。典型的应用是,有个Web服务器放在企业网络DMZ区,其配置了内网IP地址,企业防火墙的的外网接口配置了企业唯一的公网IP,互联网上的访问者使用公网IP来访问这个网站,当访问的时候,客户端发出一个数据包,这个数据包的报头里边,目标地址写的是防火墙的公网IP,然后再把这个数据包发送到DMZ区的Web服务器上,这样,数据包就穿透了防火墙,并从公网IP变成了一个对DMZ区的访问了。所以叫做DNAT,基于目标的网络地址转换。

  例如更改所有来自/24的数据包的目的IP地址为,其iptables实现为:

(3)REDIRECT(重定向)。

  REDIRECT是DNAT的特殊情况是重定向,也就是所谓的Redirection,这时候就相当于将符合条件的数据包的目的IP地址改为数据包进入系统时的网络接口的IP地址。通常是在与squid配置形成透明代理时使用,假设squid的监听端口是3128,我们可以通过以下语句来将来自/24,目的端口为80的数据包重定向到squid监听:

(4)MASQUERADE(地址伪装)。

  在iptables中有着和SNAT相近的效果,但也有一些区别。在使用SNAT的时候,出口IP的地址范围可以是一个,也可以是多个,例如把所有

/2

  4网段数据包

  sNAT

  成//等几个IP然后发出去,其iptables实现为:

  sNAT即可以NAT成一个地址,也可以NAT成多个地址。但是,对于SNAT来说不管是几个地址,必须明确指定转换的目标地址IP。假如当前系统用的是ADSL动态拨号方式,那么每次拨号,出口IP都会改变,而且改变的幅度很大,不一定是到范围内的地址,这个时候如果使用SNAT的方式来配置iptables就会出现麻烦了,因为每次拨号后出口IP都会变化,而iptables规则内的IP是不会随着自动变化的,每次地址变化后都必须手工修改一次iptables,把规则里边的固定的IP改成新的IP,这样是非常不好用的。

  MASQUERADE就是针对这种场景而设计的,它的作用是从防火墙外网接口上自动获取当前IP地址来做NAT,比如下边的命令:

  八.防火墙应用代理 1.代理服务器概述

  在TCP/IP网络中,传统的通信过程是这样的:客户端向服务器请求数据,服务器响应该请求,将数据传送给客户端,如图3-2-3所示。

  图3-2-3 直接访问Internet 在引入了代理服务器以后,这一过程变成了这样:客户端向服务器发起请求,该请求被送到代理服务器;代理服务器分析该请求,先查看自己缓存中是否有请求数据,如果有就直接传递给客户端,如果没有就代替客户端向该服务器发出请求。服务器响应以后,代理服务将响应的数据传递给客户端,同时在自己的缓存中保留一份该数据的拷贝。这样,再有客户端请求相同的数据时,代理服务器就可以直接将数据传送给客户端,而不需要再向该服务器发起请求,如图3-2-4所示。

  图3-2-4 通过代理服务器访问Internet

  2.代理服务器功能

  一般说来,代理服务器具有以下的功能:(1)通过缓存增加访问速度。

  随着Internet的迅猛发展,网络带宽变得越来越珍贵。所以为了提高访问速度,好多ISP都提供代理服务器,通过代理服务器的缓存功能来加快网络的访问速度。一般说来,大多数的代理服务器都支持HTTP缓存,但是,有的代理服务器也支持FTP缓存。在选择代理服务器时,对于大多数的组织,只需要HTTP缓存功能就足够了。

  通常,缓存有主动缓存被动缓存之分。所谓被动缓存,指的是代理服务器只在客户端请求数据时才将服务器返回的数据进行缓存,如果数据过期了,又有客户端请求相同的数据时,代理服务器又必须重新发起新的数据请求,在将响应数据传送给客户端时又进行新的缓存。所谓主动缓存,就是代理服务器不断地检查缓存中的数据,一旦有数据过期,则代理服务器主动发起新的数据请求来更新数据。这样,当有客户端请求该数据时就会大大缩短响应时间。对于数据中的认证信息,大多数的代理服务器都不会进行缓存的。

(2)提供用私有IP访问Internet的方法。

  iP地址是不可再生的宝贵资源,假如你只有有限的IP地址,但是需要提供整个组织的Internet访问能力,那么,你可以通过使用代理服务器来实现这一点。

(3)提高网络的安全性。

  如果内部用户访问Internet都是通过代理服务器,那么代理服务器就成为进入Internet的唯一通道;反过来说,代理服务器也是Internet访问内部网络的唯一通道,如果你没有做反向代理,则对于Internet上的主机来说,你的整个内部网只有代理服务器是可见的,从而大大增强了网络的安全性。

  3.传统、透明和反向代理服务器(1)传统代理服务器。

  传统代理常被用于缓存静态网页(例如:html文件和图片文件等)到本地网络上的一台主机上(即代理服务器)。不缓存的页面被第二次访问的时候,浏览器将直接从本地代理服务器那里获取请求数据而不再向原Web站点请求数据。这样就节省了宝贵的网络带宽,而且提高了访问速度。但是,要想实现这种方式,必须在每一个内部主机的浏览器上明确指明代理服务器的IP地址和端口号。客户端上网时,每次都把请求给代理服务器处理,代理服务器根据请求确定是否连接到远程Web服务器获取数据。如果在本地缓冲区有目标文件,则直接将文件传给用户即可。如果没有的话则先取回文件,并在本地保存一份缓冲,然后将文件发给客户端浏览器。

(2)透明代理服务器。

  透明代理与传统代理的功能完全相同。但是,代理操作对客户端浏览器是透明的(即不需指明代理服务器的IP和端口)。透明代理服务器阻断网络通信,并且过滤出访问外部的HTTP(80端口)流量。如果客户端的请求在本地有缓冲则将缓冲的数据直接发给用户,如果在本地没有缓冲则向远程Web服务器发出请求,其余操作和传统代理服务器完全相同。对于Linux操作系统来说,透明代理使用iptables实现。因为不需要对浏览器作任何设置,所以,透明代理对于ISP来说特别有用。

(3)反向代理服务器。

  反向代理是和前两种代理完全不同的一种代理服务。使用它可以降低原始Web服务器的负载。反向代理服务器承担了对原始Web服务器的静态页面的请求,防止原始服务器过载。如图3-2-5所示,它位于本地Web服务器和Internet之间,处理所有对Web服务器的请求。如果互联网用户请求的页面在代理器上有缓冲的话,代理服务器直接将缓冲内容发送给用户。如果没有缓冲则先向Web服务器发出请求,取回数据,本地缓存后再发送给用户。这种方式通过降低了向Web服务器的请求数从而降低了Web服务器的负载。

  图3-2-5 反向代理服务器位于Internet与组织服务器之间

  4.代理服务器squid简介

  squid是一个缓存Internet数据的一个开源软件,它会接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户要下载一个主页时,他向squid发出一个申请,要求squid替它下载,squid连接申请网站并请求该主页,然后把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,squid把保存的备份立即传给用户,使用户觉得速度相当快。目前squid可以代理HTTP、FTP、GOPHER、SSL和WAIS协议,暂不能代理POP、NNTP等协议。但是已经有人开始改进squid,相信不久的将来,squid将能够代理这些协议。

  squid不是对任何数据都进行缓存。像信用卡账号、可以远方执行的Script、经常变换的主页等是不适合缓存的。Squid可以根据用户的需要进行设置,过滤掉不想要的东西。

  squid可用在很多操作系统中,如Digital Unix, FreeBSD, HP-UX, Linux, Solaris,OS/2等,也有不少人在其他操作系统中重新编译过Squid。

  squid对内存有一定的要求,一般不应小于128M,硬盘最好使用服务器专用SCSI硬盘。

  squid是一个高性能的代理缓存服务器,和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。

  squid将数据元缓存在内存中,同时也缓存DNS查询的结果。此外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP(轻量Internet缓存协议),Squid能够实现层叠的代理阵列,从而最大限度地节约带宽。

  squid由一个主要的服务程序Squid,一个DNS查询程序dnsserver,几个重写请求和执行认证的程序,以及几个管理工具组成。当Squid启动以后,它可以派生出预先指定数目的dnsserver进程,而每一个dnsserver进程都可以执行单独的DNS查询,这样就减少了服务器等待DNS查询的时间。

  5.Squid常用配置选项

  因为缺省的配置文件不能使Squid正常启动服务,所以我们必须首先修改该配置文件的有关内容,才能让Squid运行起来。

  下面是文件的结构。配置文件的可以分为13个部分,这13个部分如下有所示。

  虽然Squid的配置文件很庞大,但是如果你只是为一个中小型网络提供代理服务,并且只准备使用一台服务器,则只需要修改配置文件中的几个选项。

  6.Squid常用命令选项(1)端口号。

  http_port指令告诉squid在哪个端口侦听HTTP请求。默认端口是3128:http_port 3128,如果要squid作为加速器运行则应将它设为80。

  你能使用附加http_port行来指squid侦听在多个端口上。例如,来自某个部门的浏览器发送请求3128,然而另一个部门使8080端口。可以将两个端口号列举出来:

  http_port 3128 http_port 8080 Squid也可以使http_port指令侦听在指定的接口地址上。squid作为防火墙运行时,它有两个网络接口:一个内部的和一个外部的。你可能不想接受来自外部的http请求。为了使squid仅仅侦听在内部接口上,简单的将IP地址放在端口号前面:

  http_port :3128(2)日志文件路径。

  默认的日志目录是squid安装位置下的logs目录,其路径是/usr/local/squid/var/logs。

  你必须确认日志文件所存放的磁盘位置空间足够。squid想确认你不会丢失任何重要的日志信息,特别是你的系统被滥用或者被攻击时。

  squid有三个主要的日志文件:、和。文件包含状态性的和调试性的消息。文件包含了对squid发起的每个客户请求的单一行。每行平均约150个字节。假如因为某些理由,你不想squid记录客户端请求日志,你能指定日志文件的路径为/dev/null。文件对大多数cache管理员来说并非很有用。它包含了进入和离开缓存的每个目标的记录。平均记录大小典型的是175-200字节。

  如果squid的日志文件增加没有限制。某些操作系统对单个文件强制执行2G的大小限制,即使你有充足的磁盘空间。超过该限制会导致写错误,squid就会退出。(3)访问控制。

  squid默认的配置文件拒绝每一个客户请求。在任何人能使用代理之前,你必须在文件里加入附加的访问控制规则。最简单的方法就是定义一个针对客户IP地址的ACL和一个访问规则,告诉squid允许来自这些地址的HTTP请求。squid有许多不同的ACL类型。src类型匹配客户IP地址,squid会针对客户HTTP请求检查http_access规则。

  acl MyNetwork src /16 http_access allow MyNetwork 请将这些行放在正确的位置。http_access的顺序非常重要。在第一次编辑文件时,请看如下注释:

  在该注释之后,以及“http_access deny all”之前插入新规则。(4)命令选项。

  这里的很多选项在实际应用中从不会使用,另外有些仅仅在调试问题时有用。

? 实验步骤

? Windows 2003防火墙

  一.防火墙基础操作

  操作概述:启用windows2003系统防火墙,设置规则阻断ICMP回显请求数据包,并验证针对UDP连接工具的例外操作。

(1)在启用防火墙之前,同组主机通过ping指令互相测试网络连通性,确保互相是连通的,若测试未通过请排除故障。

(2)本机启用防火墙,并设置防火墙仅对“本地连接”进行保护。

(3)同组主机再次通过ping指令互相测试网络连通性,确认是否相互连通_______。(4)设置本机防火墙允许其传入ICMP回显请求。(5)第三次测试网络连通性。二.防火墙例外操作

  操作概述:启用windows2003系统防火墙,在“例外”选项卡中添加程序“UDPtools” 允许UDPtools间通信,并弹出网络连接提示信息。

(1)关闭防火墙,同组主机间利用UDPtools进行数据通信,确保通信成功。

「说明」 UDPtools通信双方应分别为客户端和服务端,其默认通过2513/UDP端口进行通信,可以自定义通信端口,运行如图3-1-1所示。

  图3-1-1 UDP连接工具

(2)本机启用防火墙(仅对本地连接),将本机作为UDPtools服务器端,同组主机以UDPtools客户端身份进行通信,确定客户端通信请求是否被防火墙阻塞_______。

(3)断开UDPtools通信,单击“例外”选项卡,在“程序和服务”列表框添加程序“”(C:)并将其选中。再次启动UDPtools并以服务器身份运行,同组主机仍以客户端身份与其通信,确定客户端通信请求是否被防火墙阻塞_______。

  三.NAT操作

  操作概述:Windows Server 2003“路由和远程访问”服务包括NAT路由协议。如果将NAT路由协议安装和配置在运行“路由和远程访问”的服务器上,则使用专用IP地址的内部网络客户端可以通过NAT服务器的外部接口访问Internet。

  图3-1-2 实验网络连接示意

  参看图3-1-2,当内部网络主机PC1发送要连接Internet主机PC2的请求时,NAT协议驱动程序会截取该请求,并将其转发到目标Internet主机。所有请求看上去都像是来自NAT器的外部连接IP地址,这样就隐藏了内部网络主机。

  在这里我们将windows Server 2003主机配置成为“路由和远程访问”NAT服务器,并模拟搭建Internet网络环境对NAT服务器进行测试。

(1)实验网络拓扑规划。

  按图3-1-2所示,本实验需3台主机共同完成,其中一台主机扮演实验角色“内网主机PC1”,一台主机扮演实验角色“外网主机PC2”,最后一台主机扮演“NAT服务器”。

  默认外部网络地址/24;内部网络地址/24,也可根据实际情况指定内网与外网地址。

  默认主机“本地连接”为内部网络接口;“外部连接“为外部网络接口,也可指定“本地连接”为外部网络接口。

(2)按步骤(1)中规划分别为本机的“本地连接”、“外部连接”配置IP地址。

(3)配置NAT路由服务。依次单击“开始”|“程序”|“管理工具”|“路由和远程访问”,在“路由和远程访问”MMC中,选择要安装NAT路由协议的服务器(这里为本地主机),右键单击在弹出菜单中选择“配置并启用路由和远程访问”。

「注」 操作期间若弹出“为主机名启用了Windows防火墙/Internet连接共享服务……”警告信息,请先禁用“Windows防火墙/Internet连接共享”服务,后重试操作。具体做法:“开始”|“程序”| “管理工具”|“计算机管理”|“服务和应用程序”|“服务”,在右侧服务列表中选择“Windows Firewall/Internet Connection Sharing(ICS)”服务,先将其停止,然后在启动类型中将其禁用。

(4)在“路由和远程访问服务器安装向导”中选择“网络地址转换(NAT)”服务。

(5)在“NAT Internet连接”界面中指定连接到Internet的网络接口,该网络接口对于Internet来说是可见的。若在步骤(1)中已将“外部连接”指定为公共接口,则此处应选择“外部连接”。

(6)本实验中没有应用到DHCP、DNS服务,所以在“名称和地址转换服务”界面中选择“我将稍后设置名称和地址服务”。至最后完成路由和远程访问配置。

(7)接下来的工作是对各NAT服务器进行测试。下面以主机ABC为例进行测试说明:参照图3-1-2,设定主机A为内网主机PC1,将其内部网络接口(默认为“本地连接”)的默认网关指向主机B的内部网络接口(默认为“本地连接”);设定主机C为外网主机PC2。内网主机A通过ping指令对外网主机C做连通性测试。

(8)ICMP会话分析。在主机A做连通性测试的同时,主机B打开“协议分析器”并定义过滤器,操作如下:依次单击菜单项“设置”|“过滤器”,在“协议过滤”选项卡“协议树”中选中“ICMP”协议。依次单击按钮“新建捕获窗口”|“开始捕获数据包”,在弹出的“适配器选择”界面中选择“外部连接”,开始捕获。观察状态栏“捕获帧数”窗格,当捕获到数据时单击“停止捕获数据包”按钮,依次展开“会话分析树”|“ICMP会话”,如图3-1-3所示。

  图3-1-3 在NAT服务器外部接口上监听到的ICMP会话

(9)结合ICMP会话分析结果说出ICMP数据包的传输(路由)过程_________。

? linux防火墙-iptable的应用

  一.包过滤实验

  操作概述:为了应用iptables的包过滤功能,首先我们将filter链表的所有链规则清空,并设置链表默认策略为DROP(禁止)。通过向INPUT规则链插入新规则,依次允许同组主机icmp回显请求、Web请求,最后开放信任接口eth0。iptables操作期间需同组主机进行操作验证。

(1)清空filter链表所有规则链规则。iptables命令________。

(2)确定同组主机已清空filter链表后,利用nmap(/opt/portscan/目录下)对同组主机进行端口扫描。

  Nmap端口扫描命令________。

「说明」 nmap具体使用方法可查看实验6|练习1|TCP端口扫描。查看端口扫描结果,并填写下表。

(3)查看INPUT、FORWARD和OUTPUT链默认策略。iptables命令_________。

? ?(4)将INPUT、FORWARD和OUTPUT链默认策略均设置为DROP。iptables命令_________。

  确定同组主机已将默认策略设置为DROP后,本机再次利用nmap其进行端口扫描,查看扫描结果,并利用ping命令进行连通性测试。

(5)利用功能扩展命令选项(ICMP)设置防火墙仅允许ICMP回显请求及回显应答。ICMP回显请求类型__________;代码__________。ICMP回显应答类型__________;代码__________。iptables命令__________ 利用ping指令测试本机与同组主机的连通性。(6)对外开放Web服务(默认端口80/tcp)。iptables命令__________ 利用nmap对同组主机进行端口扫描,查看扫描结果。

(7)设置防火墙允许来自eth0(假设eth0为内部网络接口)的任何数据通过。iptables命令_______ 利用nmap对同组主机进行端口扫描,查看扫描结果。二.事件审计实验

  操作概述:利用iptables的日志功能检测、记录网络端口扫描事件,日志路径 /var/log/。(1)根据实验原理(TCP扩展)设计iptables包过滤规则,并应用日志生成工具ULOG对iptables捕获的网络事件进行响应。

  iptables命令__________(2)同组主机应用端口扫描工具对当前主机进行端口扫描,并观察扫描结果。(3)在同组主机端口扫描完成后,当前主机查看iptables日志,对端口扫描事件进行审计,日志内容如图3-2-1所示。

  图3-2-1 iptables日志内容

  三.状态检测实验

  操作概述:分别对新建和已建的网络会话进行状态检测。1.对新建的网络会话进行状态检测(1)清空filter规则链全部内容。iptables命令__________(2)设置全部链表默认规则为允许。iptables命令__________(3)设置规则禁止任何新建连接通过。iptables命令__________(4)同组主机对当前主机防火墙规则进行测试,验证规则正确性。2.对已建的网络会话进行状态检测

(1)清空filter规则链全部内容,并设置默认规则为允许。

(2)同组主机首先telnet远程登录当前主机,当出现“login:”界面时,暂停登录操作。telnet登录命令_________(3)iptables添加新规则(状态检测)——仅禁止新建网络会话请求。iptables命令___________ 或___________________ 同组主机续(1)步骤继续执行远程登录操作,尝试输入登录用户名“guest”及口令“guestpass”,登录是否成功__________。

  同组主机启动Web浏览器访问当前主机Web服务,访问是否成功__________。解释上述现象______________________。

(4)删除步骤(3)中添加的规则,并插入新规则(状态检测)——仅禁止已建网络会话请求。iptables命令______________________________ 或________________________________________ iptables命令______________________________ 或________________________________________ 重新操作实验步骤(1)(2)(4)。同组主机续(1)步骤继续执行远程登录操作,尝试输入登录用户名“guest”及口令 “guestpass”,登录是否成功__________。

  同组主机启动Web浏览器访问当前主机Web服务,访问是否成功__________。解释上述现象_______________。

(5)当前主机再次清空filter链表规则,并设置默认策略为DROP,添加规则开放FTP服务,并允许远程用户上传文件至FTP服务器。

  iptables命令______________________________________ 四.NAT转换实验

  实验概述:图3-2-2描述了NAT转换实验所应用的网络拓扑结构。内网主机与NAT服务器eth0接口位于同一网段(内网);外网主机与NAT服务器eth1接口位于同一网络(外网);NAT服务器提供NAT转换。通过设置nat服务器的iptables NAT规则,实现内、外网主机间的通信数据包的地址转换,达到屏蔽内部网络拓扑结构与转发外网主机请求端口的目的。

  图3-2-2 实验网络拓扑结

「说明」 本实验是在Linux系统下完成,Linux系统默认安装了2块以太网卡,网络接口分别为eth0和eth1,在设置NAT服务前请激活eth1网络接口,命令ifconfig eth1 up。

  1.确定各接口IP地址

  本实验由ABC、DEF主机各为一实验小组。默认实验角色:主机A为内网主机、B为NAT服务器、C为外网主机。也可以自定义实验角色。

  默认内网IP地址/

  24、外网IP地址/24。配置完成内网主机eth0接口IP地址及默认网关(指向NAT服务器内网接口),NAT服务器eth0和eth1接口IP地址,外网主机eth0接口IP地址,并完成下列问题的填写:

  内网主机IP____________________,其默认网关____________________; 外网主机IP____________________;

  NAT服务器内网接口IP____________________、外网接口IP____________________。

  内网主机对NAT服务器内网接口进行连通性测试(ping);外网主机对NAT服务器外网接口进行连通性测试(ping)。

  2.设置防火墙规则允许内部网络访问外部网络

  操作流程:首先开启NAT服务器的路由功能(开启网络接口间数据的转发),清空filter链表全部规则,并设置其默认策略为DROP;继续设置规则允许来自内网的数据流进入外网,并允许任何返回流量回到内网;最后规则实现内网、外网接口间的数据转发。

(1)NAT服务器开启路由功能。

  基于安全的考虑,默认情况下Linux路由数据包的功能是关闭的,通过下述命令开启系统路由功能:

(2)设置filter表规则链,默认策略为禁止。iptables命令_______________________(3)添加filter表新规则,允许来自防火墙的流量进入Internet;允许任何相关的返回流量回到防火墙。

  iptables命令_______________________(4)添加filter表新规则,实现NAT服务器内部网络接口eth0与外部网络接口eth1间的数据转发。iptables命令_______________________(5)主机C启动Snort(/opt/ids/snort)以网络嗅探方式运行(设置过滤器仅监听icmp数据包),主机A ping探测主机C,是否ping通______?

  将主机C的默认网关指向NAT服务器的外网接口,主机A再次ping探测主机C,是否ping通__________?结合snort捕获数据,对比实验现象,说明原因:___________________。

  3.设置防火墙规则通过NAT屏蔽内部网络拓扑结构

  操作流程:在实现步骤2的操作基础上,添加nat表新规则实现数据从内网到外网的地址翻译。(1)NAT服务器重新启动iptables服务。service iptables restart(2)重新操作步骤2(⑵~⑶)。

(3)添加nat表新规则,通过网络地址翻译实现内部网络地址转换。iptables命令_______________________(4)添加filter表新规则,实现NAT内部网络接口eth0与外部网络接口eth1之间的数据转发。iptables命令_______________________(5)主机C重新将默认网关指为空,重新启动Snort捕获ICMP数据。主机A对主机C进行ping探测,是否ping通__________?主机C停止Snort监听,查看已捕获到ICMP数据,其源IP地址是__________?解释实验象_____________________________________。

  4.设置防火墙规则通过NAT实现外网请求端口转发

  操作流程:在实现步骤3的操作基础,添加nat表新规则实现数据从外网到内网的地址翻译(端口转发)。(1)NAT服务器重新启动iptables服务。service iptables restart(2)重新操作步骤3(⑵~⑷)。

(3)添加nat表新规则,实现数据从外网到内网的地址翻译(80/tcp端口转发)。iptables命令__________________(4)完成NAT外部接口eth1到内部接口eth0之间的数据转发 iptables命令__________________(5)确定主机C默认网关指为空,主机A和主机C启动Snort捕获80/tcp数据,主机C启动Web浏览器,在地址栏中输入: 通过“桌面”|“管理”|“网络”激活eth1,并手动分配IP地址; 在控制台中输入命令ifconfig eth1 up激活eth1,输入命令ifconfig eth1 /24为eth1分配IP地址。(3)代理服务器配置squid。

  代理服务器进入目录/usr/local/squid/etc/,使用vim编辑器打开配置文件。在中配置如下选项:

  第936行,使用默认的端口http_port 3128;

  第574行,添加行acl mynet src 主机A地址域。例如acl mynet src /24; 第610行,添加行http_access allow mynet。(4)运行代理服务器

  代理服务器进入目录/usr/local/squid/sbin/,输入命令:./squid –NCd1启动代理服务。(5)通过代理访问Web服务器

  内网客户端打开IE浏览器,通过“工具”|“Internet选项”|“连接”|“局域网设置”选中“为LAN使用代理服务器”,在“地址”中输入代理服务器的内网IP,在“端口”中输入代理服务器的监听端口号,单击“确定”按钮,完成浏览器设置。

  内网客户端在IE浏览器地址栏中输入“ 第936行,修改为:http_port 主机B内网IP:3128 transparent(3)代理服务器添加iptables规则。

  对从代理服务器内网接口进入的、基于tcp协议的、目的端口是80的数据包,做“端口重定向”。将数据包重定向到3128端口,规则如下:

  iptables-t nat-A PREROUTING-i eth0-p tcp-m tcp--dport 80-j REDIRECT--to-ports 3128(4)运行代理服务器。

(5)通过代理访问Web服务器。

  内网客户端将本地连接的“默认网关”设置为代理服务器的内网IP,即代理服务器的eth0网络接口的IP。内网客户端打开IE浏览器,通过“工具”|“Internet选项”|“连接”|“局域网设置”,取消“为LAN使用代理服务器”。

  内网客户端在IE浏览器地址栏输入“ 第936行,修改为:http_port 主机B外网地址:80 vhost。

  第1499行,添加行:cache_peer 主机A的IP parent 80 0 no-query originserver。第574行,修改为:acl outside src 主机C地址域。例如acl outside src /24。第610行,修改为:http_access allow outside。(3)停止代理服务器的Web服务。

  在代理服务器的终端输入命令:service httpd stop。(4)删除缓存文件。

  删除目录/usr/local/squid/var/cache/00/00下所有文件。(5)运行代理服务器。

(6)外网通过代理访问内网客户端Web服务

  外网Web服务器在IE浏览器地址栏中输入“ 满分: 分

  显示答案

  简答题(共5题,分)

  1按照拓扑图,搭建环境配置服务器并设置接口区域和ip地址。(15分)

  提交display ip int bri中接口配置;(5分)

  提交display current中接口添加到对应区域的配置;(6分)

  2设置源NAT策略和配置安全策略,保证内网vlan10和vlan20用户通过HFW1能访问外网;内网vlan30和vlan40用户通过HFW2能访问外网。(共计30分)

  提交HFW1的安全策略配置和NAT策略截图(分);

  提交HFW2的安全策略配置和NAT策略截图(分);

  提交vlan10和vlan20主机访问外网后,防火墙HFW1 display firewall session table截图;(分);

  提交vlan30和vlan40主机访问外网后,防火墙HFW2 display firewall session table截图;(分);

  设置目的NAT策略和配置安全策略,保证外网用户访问的web服务时,访问的是内部网络dmz区域的(共计15分);

  提交HFW1上display nat server截图(10分);

  提交外部浏览器访问 current与DHCP有关的截图(6分),其中地址池配置4分,端口下引用(2分));

  提交vlan10下主机pc1获得ip地址的截图(分);

  提交vlan20下主机pc2获得ip地址的截图(分);

  提交vlan30下主机pc3获得ip地址的截图(分);

  提交vlan40下主机pc4获得ip地址的截图(分);

  配置两台防火墙的双机热备,HFW1防火墙为vlan10和vlan20的active(活动)设备,HFW2防火墙为vlan10和vlan20的standby(备份)设备;HFW1防火墙为vlan40和vlan30的standby(备份)设备,HFW2防火墙为vlan30和vlan40的active(活动)设备;

  两台防火墙均可以访问互联网,当active(活动)设备发生故障时能够实现切换,虚拟机访问互联网不能出现中断。(共计40分)

  1)热冗余备份配置完成后,提交相关验证结果(16分)

  提交启动热冗余备份后防火墙HFW1的display hrp state结果(2分);

  提交启动热冗余备份后防火墙HFW1的display vrrp brief结果(2分);

  提交启动热冗余备份后防火墙HFW2的display hrp state结果(2分),提交启动热冗余备份后防火墙HFW2的display vrrp brief结果(2分);

  提交VLAN10的主机用tracert 访问外部网络主机的截图(2分);

  提交VLAN40的主机用tracert 访问外部网络主机的截图(2分);

  提交FHW1的display firewall session会话转化表(2分);

  提交FHW2的display firewall session会话转化表(2分);

  2)热冗余备份环境下,在交换机g0/0/24下执行shutdown命令,提交相关验证结果(8分)

  提交启动热冗余备份后防火墙HFW1的display hrp state结果(1分);

  提交启动热冗余备份后防火墙HFW1的display vrrp brief结果(1分);

  提交启动热冗余备份后防火墙HFW2的display hrp state结果(1分),提交启动热冗余备份后防火墙HFW2的display vrrp brief结果(1分);

  提交VLAN10的主机用tracert 访问外部网络主机的截图(1分);

  提交VLAN40的主机用tracert 访问外部网络主机的截图(1分);

  提交FHW1的display firewall session会话转化表(1分);

  提交FHW2的display firewall session会话转化表(1分);

  3)热冗余备份环境下,在交换机的g0/0/24下再执行undo shutdown命令后,等待系统恢复后提交相关验证结果(8分)

  提交启动热冗余备份后防火墙HFW1的display hrp state结果(1分);

  提交启动热冗余备份后防火墙HFW1的display vrrp brief结果(1分);

  提交启动热冗余备份后防火墙HFW2的display hrp state结果(1分),提交启动热冗余备份后防火墙HFW2的display vrrp brief结果(1分);

  提交VLAN10的主机用tracert 访问外部网络主机的截图(1分);

  提交VLAN40的主机用tracert 访问外部网络主机的截图(1分);

  提交FHW1的display firewall session会话转化表(1分);

  提交FHW2的display firewall session会话转化表(1分);

  4)热冗余备份环境下,在防火墙HFW2下的g1/0/4下执行shutdown命令后,等待一段时间,提交相关验证结果(8分)

  提交启动热冗余备份后防火墙HFW1的display hrp state结果(1分);

  提交启动热冗余备份后防火墙HFW1的display vrrp brief结果(1分);

  提交启动热冗余备份后防火墙HFW2的display hrp state结果(1分),提交启动热冗余备份后防火墙HFW2的display vrrp brief结果(1分);

  提交VLAN10的主机用tracert 访问外部网络主机的截图(1分);

  提交VLAN40的主机用tracert 访问外部网络主机的截图(1分);

  提交FHW1的display firewall session会话转化表(1分);

  提交FHW2的display firewall session会话转化表(1分);

实验8防火墙透明模式配置3篇 防火墙透明模式部署相关文章: