PIX515防火墙配置.docx
《PIX515防火墙配置.docx》由会员分享,可在线阅读,更多相关《PIX515防火墙配置.docx(7页珍藏版)》请在冰豆网上搜索。
![PIX515防火墙配置.docx](https://file1.bdocx.com/fileroot1/2023-1/28/948745dc-033b-410f-91d3-a39dba650de2/948745dc-033b-410f-91d3-a39dba650de21.gif)
PIX515防火墙配置
下面开始介绍一下PIX的具体设置
PIX防火墙提供4种管理访问模式:
◇非特权模式。
PIX防火墙开机自检后,就是处于这种模式。
系统显示为pixfirewall>
◇特权模式。
输入enable进入特权模式,可以改变当前配置。
显示为pixfirewall#
◇配置模式。
输入configureterminal进入此模式,绝大部分的系统配置都在这里进行。
显示为pixfirewall(config)#
◇监视模式。
PIX防火墙在开机或重启过程中,按住Escape键或发送一个“Break”字符,进入监视模式。
这里可以更新操作系统映象和口令恢复。
显示为monitor>
我门进入配置模式来设置防火墙
配置PIX防火墙有6个基本命令:
nameif,interface,ipaddress,nat,global,route.
这些命令在配置PIX是必须的。
以下是配置的基本步骤:
1.配置防火墙接口的名字,并指定安全级别(nameif)。
Pix525(config)#nameifethernet0outsidesecurity0
Pix525(config)#nameifethernet1insidesecurity100
Pix525(config)#nameifdmzsecurity50
提示:
在缺省配置中,以太网0被命名为外部接口(outside),安全级别是0;以太网1被命名为内部接口(inside),安全级别是100.安全级别取值范围为1~99,数字越大安全级别越高。
若添加新的接口,语句可以这样写:
Pix525(config)#nameifpix/intf3security40(安全级别任取)
2.配置以太口参数(interface)
Pix525(config)#interfaceethernet0auto(auto选项表明系统自适应网卡类型)
Pix525(config)#interfaceethernet1100full(100full选项表示100Mbit/s以太网全双工通信)
Pix525(config)#interfaceethernet1100fullshutdown(shutdown选项表示关闭这个接口,若启用接口去掉shutdown)
3.配置内外网卡的IP地址(ipaddress)
Pix525(config)#ipaddressoutside61.144.51.42255.255.255.248
Pix525(config)#ipaddressinside192.168.0.1255.255.255.0
很明显,Pix525防火墙在外网的ip地址是61.144.51.42,内网ip地址是192.168.0.1
4.指定要进行转换的内部地址(nat)
网络地址翻译(nat)作用是将内网的私有ip转换为外网的公有ip.Nat命令总是与global命令一起使用,这是因为nat命令可以指定一台主机或一段范围的主机访问外网,访问外网时需要利用global所指定的地址池进行对外访问。
nat命令配置语法:
nat(if_name)nat_idlocal_ip[netmark]
其中(if_name)表示内网接口名字,例如inside.Nat_id用来标识全局地址池,使它与其相应的global命令相匹配,local_ip表示内网被分配的ip地址。
例如0.0.0.0表示内网所有主机可以对外访问。
[netmark]表示内网ip地址的子网掩码。
例1.Pix525(config)#nat(inside)100
表示启用nat,内网的所有主机都可以访问外网,用0可以代表0.0.0.0
例2.Pix525(config)#nat(inside)1172.16.5.0255.255.0.0
表示只有172.16.5.0这个网段内的主机可以访问外网。
5.指定外部地址范围(global)
global命令把内网的ip地址翻译成外网的ip地址或一段地址范围。
Global命令的配置语法:
global(if_name)nat_idip_address-ip_address[netmarkglobal_mask]
其中(if_name)表示外网接口名字,例如outside.。
Nat_id用来标识全局地址池,使它与其相应的nat命令相匹配,ip_address-ip_address表示翻译后的单个ip地址或一段ip地址范围。
[netmarkglobal_mask]表示全局ip地址的网络掩码。
例1.Pix525(config)#global(outside)161.144.51.42-61.144.51.48
表示内网的主机通过pix防火墙要访问外网时,pix防火墙将使用61.144.51.42-61.144.51.48这段ip地址池为要访问外网的主机分配一个全局ip地址。
例2.Pix525(config)#global(outside)161.144.51.42
表示内网要访问外网时,pix防火墙将为访问外网的所有主机统一使用61.144.51.42这个单一ip地址。
例3.Pix525(config)#noglobal(outside)161.144.51.42
表示删除这个全局表项。
6.设置指向内网和外网的静态路由(route)
定义一条静态路由。
route命令配置语法:
route(if_name)00gateway_ip[metric]
其中(if_name)表示接口名字,例如inside,outside。
Gateway_ip表示网关路由器的ip地址。
[metric]表示到gateway_ip的跳数。
通常缺省是1。
例1.Pix525(config)#routeoutside0061.144.51.1681
表示一条指向边界路由器(ip地址61.144.51.168)的缺省路由。
例2.Pix525(config)#routeinside10.1.1.0255.255.255.0172.16.0.11
Pix525(config)#routeinside10.2.0.0255.255.0.0172.16.0.11
如果内部网络只有一个网段,按照例1那样设置一条缺省路由即可;如果内部存在多个网络,需要配置一条以上的静态路由。
上面那条命令表示创建了一条到网络10.1.1.0的静态路由,静态路由的下一条路由器ip地址是172.16.0.1
OK,这6个基本命令若理解了,就可以进入到pix防火墙的一些高级配置了。
A.配置静态IP地址翻译(static)
如果从外网发起一个会话,会话的目的地址是一个内网的ip地址,static就把内部地址翻译成一个指定的全局地址,允许这个会话建立。
static命令配置语法:
static(internal_if_name,external_if_name)outside_ip_addressinside_ip_address其中internal_if_name表示内部网络接口,安全级别较高。
如inside.
external_if_name为外部网络接口,安全级别较低。
如outside等。
outside_ip_address为正在访问的较低安全级别的接口上的ip地址。
inside_ip_address为内部网络的本地ip地址。
例1.Pix525(config)#static(inside,outside)61.144.51.62192.168.0.8
表示ip地址为192.168.0.8的主机,对于通过pix防火墙建立的每个会话,都被翻译成61.144.51.62这个全局地址,也可以理解成static命令创建了内部ip地址192.168.0.8和外部ip地址61.144.51.62之间的静态映射。
例2.Pix525(config)#static(inside,outside)192.168.0.210.0.1.3
例3.Pix525(config)#static(dmz,outside)211.48.16.2172.16.10.8
注释同例1。
通过以上几个例子说明使用static命令可以让我们为一个特定的内部ip地址设置一个永久的全局ip地址。
这样就能够为具有较低安全级别的指定接口创建一个入口,使它们可以进入到具有较高安全级别的指定接口。
B.管道命令(conduit)
前面讲过使用static命令可以在一个本地ip地址和一个全局ip地址之间创建了一个静态映射,但从外部到内部接口的连接仍然会被pix防火墙的自适应安全算法(ASA)阻挡,conduit命令用来允许数据流从具有较低安全级别的接口流向具有较高安全级别的接口,例如允许从外部到DMZ或内部接口的入方向的会话。
对于向内部接口的连接,static和conduit命令将一起使用,来指定会话的建立。
conduit命令配置语法:
conduitpermit|denyglobal_ipport[-port]protocolforeign_ip[netmask]
permit|deny允许|拒绝访问
global_ip指的是先前由global或static命令定义的全局ip地址,如果global_ip为0,就用any代替0;如果global_ip是一台主机,就用host命令参数。
port指的是服务所作用的端口,例如www使用80,smtp使用25等等,我们可以通过服务名称或端口数字来指定端口。
protocol指的是连接协议,比如:
TCP、UDP、ICMP等。
foreign_ip表示可访问global_ip的外部ip。
对于任意主机,可以用any表示。
如果foreign_ip是一台主机,就用host命令参数。
例1.Pix525(config)#conduitpermittcphost192.168.0.8eqwwwany
这个例子表示允许任何外部主机对全局地址192.168.0.8的这台主机进行http访问。
其中使用eq和一个端口来允许或拒绝对这个端口的访问。
Eqftp就是指允许或拒绝只对ftp的访问。
例2.Pix525(config)#conduitdenytcpanyeqftphost61.144.51.89
表示不允许外部主机61.144.51.89对任何全局地址进行ftp访问。
例3.Pix525(config)#conduitpermiticmpanyany
表示允许icmp消息向内部和外部通过。
例4.Pix525(config)#static(inside,outside)61.144.51.62192.168.0.3
Pix525(config)#conduitpermittcphost61.144.51.62eqwwwany
这个例子说明static和conduit的关系。
192.168.0.3在内网是一台web服务器,现在希望外网的用户能够通过pix防火墙得到web服务。
所以先做static静态映射:
192.168.0.3->61.144.51.62(全局),然后利用conduit命令允许任何外部主机对全局地址61.144.51.62进行http访问。
C.配置fixup协议
fixup命令作用是启用,禁止,改变一个服务或协议通过pix防火墙,由fixup命令指定的端口是pix防火墙要侦听的服务。
见下面例子:
例1.Pix525(config)#fixupprotocolftp21
启用ftp协议,并指定ftp的端口号为21
例2.Pix525(config)#fixupprotocolhttp80
Pix525(config)#fixupprotocolhttp1080
为http协议指定80和1080两个端口。
例3.Pix525(config)#nofixupprotocolsmtp80
禁用smtp协议。
D.设置telnet
telnet有一个版本的变化。
在pixOS5.0(pix操作系统的版本号)之前,只能从内部网络上的主机通过telnet访问pix。
在pixOS5.0及后续版本中,可以在所有的接口上启用telnet到pix的访问。
当从外部接口要telnet到pix防火墙时,telnet数据流需要用ipsec提供保护,也就是说用户必须配置pix来建立一条到另外一台pix,路由器或vpn客户端的ipsec隧道。
另外就是在PIX上配置SSH,然后用SSHclient从外部telnet到PIX防火墙,PIX支持SSH1和SSH2,不过SSH1是免费软件,SSH2是商业软件。
相比之下cisco路由器的telnet就作的不怎么样了。
telnet配置语法:
telnetlocal_ip[netmask]
local_ip表示被授权通过telnet访问到pix的ip地址。
如果不设此项,pix的配置方式只能由console进行。
说了这么多,下面给出一个配置实例供大家参考。
WelcometothePIXfirewall
PIX525>en
Password:
PIX525#shconfig
:
Saved
:
PIXVersion6.0
(1)------PIX当前的操作系统版本为6.0
Nameifethernet0outsidesecurity0
Nameifethernet1insidesecurity100------显示目前pix只有2个接口
Enablepassword7Y051HhCcoiRTSQZencrypted
Passed7Y051HhCcoiRTSQZencrypted------pix防火墙密码在默认状态下已被加密,在配置文件中不会以明文显示,telnet密码缺省为cisco
HostnamePIX525------主机名称为PIX525
Domain-name------本地的一个域名服务器,通常用作为外部访问
Fixupprotocolftp21
Fixupprotocolhttp80
fixupprotocolh3231720
fixupprotocolrsh514
fixupprotocolsmtp25
fixupprotocolsqlnet1521
fixupprotocolsip5060------当前启用的一些服务或协议,注意rsh服务是不能改变端口号
names------解析本地主机名到ip地址,在配置中可以用名字代替ip地址,当前没有设置,所以列表为空
pagerlines24------每24行一分页
interfaceethernet0auto
interfaceethernet1auto------设置两个网卡的类型为自适应
mtuoutside1500
mtuinside1500------以太网标准的MTU长度为1500字节
ipaddressoutside61.144.51.42255.255.255.248
ipaddressinside192.168.0.1255.255.255.0------pix外网的ip地址61.144.51.42,内网的ip地址192.168.0.1
ipauditinfoactionalarm
ipauditattackactionalarm------pix入侵检测的2个命令。
当有数据包具有攻击或报告型特征码时,pix将采取报警动作(缺省动作),向指定的日志记录主机产生系统日志消息;此外还可以作出丢弃数据包和发出tcp连接复位信号等动作,需另外配置。
pdmhistoryenable------PIX设备管理器可以图形化的监视PIX
arptimeout14400------arp表的超时时间
global(outside)161.144.51.46------如果你访问外部论坛或用QQ聊天等等,上面显示的ip就是这个
nat(inside)10.0.0.00.0.0.000
static(inside,outside)61.144.51.43192.168.0.8netmask255.255.255.25500
conduitpermiticmpanyany
conduitpermittcphost61.144.51.43eqwwwany
conduitpermitudphost61.144.51.43eqdomainany
------用61.144.51.43这个ip地址提供domain-name服务,而且只允许外部用户访问domain的udp端口
routeoutside0.0.0.00.0.0.061.144.51.611------外部网61.144.51.61
timeoutxlate3:
00:
00------某个内部设备向外部发出的ip包经过翻译(global)后,在缺省3个小时之后此数据包若没有活动,此前创建的表项将从翻译表中删除,释放该设备占用的全局地址
timeoutconn1:
00:
00half-closed0:
10:
00udp0:
02:
00rpc0:
10:
00h3230:
05:
00sip0:
30:
00sip_media0:
02:
00
timeoutuauth0:
05:
00absolute------AAA认证的超时时间,absolute表示连续运行uauth定时器,用户超时后,将强制重新认证
aaa-serverTACACS+protocoltacacs+
aaa-serverRADIUSprotocolradius------AAA服务器的两种协议。
AAA是指认证,授权,审计。
Pix防火墙可以通过AAA服务器增加内部网络的安全
nosnmp-serverlocation
nosnmp-servercontact
snmp-servercommunitypublic------由于没有设置snmp工作站,也就没有snmp工作站的位置和联系人
nosnmp-serverenabletraps------发送snmp陷阱
floodguardenable------防止有人伪造大量认证请求,将pix的AAA资源用完
nosysoptroutednat
telnettimeout5
sshtimeout5------使用ssh访问pix的超时时间
terminalwidth80
Cryptochecksum:
a9f03ba4ddb72e1ae6a543292dd4f5e7
PIX525#
PIX525#writememory------将配置保存
上面这个配置实例需要说明一下,pix防火墙直接摆在了与internet接口处,此处网络环境有十几个公有ip,可能会有朋友问如果我的公有ip很有限怎么办?
你可以添加router放在pix的前面,或者global使用单一ip地址,和外部接口的ip地址相同即可。
另外有几个维护命令也很有用,showinterface查看端口状态,showstatic查看静态地址映射,showip查看接口ip地址,pingoutside|insideip_address确定连通性。
还有一个类似密钥的东西如果不配置SSH协议是不能启动的
具体操作如下
#cagenrsakey1024
之后就可以远程访问了
不要忘记了储存
#wrm