
. 指定要进行转换的内部地址(nat)
网络地址翻译(nat)作用是将内网的私有ip转换为外网的公有ip.Nat命令总是和global命令一起使用,这是因为nat命令能够指定一台主机或一段范围的主机访问外网,访问外网时需要利用global所指定的地址池进行对外访问。
nat命令配置语法:
nat (if_name) nat_id local_ip [netmark]
其中(if_name)表示内网接口名字,例如inside。Nat_id用来标识全局地址池,使他和其相应的global命令相匹配,local_ip表示内网被分配的ip地址。例如0.0.0.0表示内网任何主机能够对外访问。[netmark]表示内网ip地址的子网掩码。
例1.Pix525(config)#nat (inside) 1 0 0
表示启用nat,内网的任何主机都能够访问外网,用0能够代表0.0.0.0
例2.Pix525(config)#nat (inside) 1 172.16.5.0 255.255.0.0
表示只有172.16.5.0这个网段内的主机能够访问外网。
5. 指定外部地址范围(global) global命令把内网的ip地址翻译成外网的ip地址或一段地址范围。
Global命令的配置语法:global (if_name) nat_id ip_address-ip_address [netmark global_mask]
其中(if_name)表示外网接口名字,例如outside.。Nat_id用来标识全局地址池,使他和其相应的nat命令相匹配,ip_address-ip_address表示翻译后的单个ip地址或一段ip地址范围。[netmark global_mask]表示全局ip地址的网络掩码。
例1.Pix525(config)#global (outside) 1 61.144.51.42-61.144.51.48
表示内网的主机通过pix防火墙要访问外网时,pix防火墙将使用61.144.51.42-61.144.51.48这段ip地址池为要访问外网的主机分配一个全局ip地址。
例2.Pix525(config)#global (outside) 1 61.144.51.42 表示内网要访问外网时,pix防火墙将为访问外网的任何主机统一使用61.144.51.42这个单一ip地址。
例3. Pix525(config)#no global (outside) 1 61.144.51.42 表示删除这个全局表项。
6. 配置指向内网和外网的静态路由(route) 定义一条静态路由。
route命令配置语法:route (if_name) 0 0 gateway_ip [metric]
其中(if_name)表示接口名字,例如inside,outside。Gateway_ip表示网关路由器的ip地址。[metric]表示到gateway_ip的跳数。通常缺省是1。
例1. Pix525(config)#route outside 0 0 61.144.51.168 1
表示一条指向边界路由器(ip地址61.144.51.168)的缺省路由。
例2. Pix525(config)#route inside 10.1.1.0 255.255.255.0 172.16.0.1 1
Pix525(config)#route inside 10.2.0.0 255.255.0.0 172.16.0.1 1
假如内部网络只有一个网段,按照例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_address inside_ 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.62 192.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.2 10.0.1.3
例3. Pix525(config)#static (dmz, outside) 211.48.16.2 172.16.10.8
注释同例1。
通过以上几个例子说明使用static命令能够让我们为一个特定的内部ip地址配置一个永久的全局ip地址。这样就能够为具备较低安全级别的指定接口创建一个入口,使他们能够进入到具备较高安全级别的指定接口。
B. 管道命令(conduit)
前面讲过使用static命令能够在一个本地ip地址和一个全局ip地址之间创建了一个静态映射,但从外部到内部接口的连接仍然会被pix防火墙的自适应安全算法(ASA)阻挡。
conduit命令用来允许数据流从具备较低安全级别的接口流向具备较高安全级别的接口,例如允许从外部到DMZ或内部接口的入方向的会话。对于向内部接口的连接,static和conduit命令将一起使用,来指定会话的建立。
conduit命令配置语法:
conduit permit | deny global_ip port[-port] protocol foreign_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)#conduit permit tcp host 192.168.0.8 eq www any
这个例子表示允许任何外部主机对全局地址192.168.0.8的这台主机进行http访问。其中使用eq和一个端口来允许或拒绝对这个端口的访问。Eq ftp 就是指允许或拒绝只对ftp的访问。
例2. Pix525(config)#conduit deny tcp any eq ftp host 61.144.51.89
表示不允许外部主机61.144.51.89对任何全局地址进行ftp访问。
例3. Pix525(config)#conduit permit icmp any any
表示允许icmp消息向内部和外部通过。
例4. Pix525(config)#static (inside, outside) 61.144.51.62 192.168.0.3
Pix525(config)#conduit permit tcp host 61.144.51.62 eq www any
这个例子说明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)#fixup protocol ftp 21 启用ftp协议,并指定ftp的端口号为21
例2. Pix525(config)#fixup protocol http 80
Pix525(config)#fixup protocol http 1080 为http协议指定80和1080两个端口。
例3. Pix525(config)#no fixup protocol smtp 80 禁用smtp协议。
D. 配置telnet
telnet有一个版本的变化。在pix OS 5.0(pix*作系统的版本号)之前,只能从内部网络上的主机通过telnet访问pix。在pix OS 5.0及后续版本中,能够在任何的接口上启用telnet到pix的访问。当从外部接口要telnet到pix防火墙时,telnet数据流需要用ipsec提供保护,也就是说用户必须配置pix来建立一条到另外一台pix,路由器或vpn客户端的ipsec隧道。另外就是在PIX上配置SSH,然后用SSH client从外部telnet到PIX防火墙,PIX支持SSH1和SSH2,但是SSH1是免费软件,SSH2是商业软件。相比之下cisco路由器的telnet就做得不怎么样了。
telnet配置语法:telnet local_ip [netmask] local_ip
表示被授权通过telnet访问到pix的ip地址。假如不设此项,pix的配置方式只能由console进行。
说了这么多,下面给出一个配置实例供大家参考。
Welcome to the PIX firewall Type help or ’?’ for a list of available commands.
PIX525> en
Password:
PIX525#sh config :
Saved : |
PIX Version 6.0(1) ------ PIX当前的*作系统版本为6.0
Nameif ethernet0 outside security0
Nameif ethernet1 inside security100 ------ 显示现在pix只有2个接口
Enable password 7Y051HhCcoiRTSQZ encrypted
Passed 7Y051HhCcoiRTSQZ encrypted ------ pix防火墙密码在默认状态下已被加密,在配置文档中不会以明文显示,telnet 密码缺省为cisco
Hostname PIX525 ------ 主机名称为PIX525
Domain-name 123.com ------ 本地的一个域名服务器123.com,通常用作为外部访问
Fixup protocol ftp 21
Fixup protocol http 80
fixup protocol h323 1720
fixup protocol rsh 514
fixup protocol smtp 25
fixup protocol sqlnet 1521
|
fixup protocol sip 5060 ------ 当前启用的一些服务或协议,注意rsh服务是不能改变端口号的
names ------ 解析本地主机名到ip地址,在配置中能够用名字代替ip地址,当前没有配置,所以列表为空
pager lines 24 ------ 每24行一分页
interface ethernet0 auto
interface ethernet1 auto ------ 配置两个网卡的类型为自适应
mtu outside 1500
mtu inside 1500 ------ 以太网标准的MTU长度为1500字节
ip address outside 61.144.51.42 255.255.255.248
ip address inside 192.168.0.1 255.255.255.0 ------ pix外网的ip地址61.144.51.42,内网的ip地址192.168.0.1
ip audit info action alarm
ip audit attack action alarm ------ pix入侵检测的2个命令。当有数据包具备攻击或报告型特征码时,pix将采取报警动作(缺省动作),向指定的日志记录主机产生系统日志消息;此外还能够作出丢弃数据包和发出tcp连接复位信号等动作,需另外配置。
pdm history enable ------ PIX设备管理器能够图像化的监控
PIX arp timeout 14400 ------ arp表的超时时间
global (outside) 1 61.144.51.46 ------ 假如您访问外部论坛或用QQ聊天等等,上面显示的ip就是这个
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
static (inside, outside) 61.144.51.43 192.168.0.8 netmask 255.255.255.255 0 0
conduit permit icmp any any
conduit permit tcp host 61.144.51.43 eq www any |
conduit permit udp host 61.144.51.43 eq domain any ------ 用61.144.51.43这个ip地址提供domain-name服务,而且只允许外部用户访问domain的udp端口
route outside 0.0.0.0 0.0.0.0 61.144.51.61 1 ------ 外部网关61.144.51.61
timeout xlate 3:00:00 ------ 某个内部设备向外部发出的ip包经过翻译(global)后,在缺省3个小时之后此数据包若没有活动,此前创建的表项将从翻译表中删除,释放该设备占用的全局地址
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute ------ AAA认证的超时时间,absolute表示连续运行uauth定时器,用户超时后,将强制重新认证
aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius ------ AAA服务器的两种协议。AAA是指认证,授权,审计。Pix防火墙能够通过AAA服务器增加内部网络的安全
no snmp-server location no snmp-server contact snmp-server community public ------ 由于没有配置snmp工作站,也就没有snmp工作站的位置和联系人
no snmp-server enable traps ------ 发送snmp陷阱 floodguard enable ------ 防止有人伪造大量认证请求,将pix的AAA资源用完
no sysopt route dnat telnet timeout 5 ssh timeout 5 ------ 使用ssh访问pix的超时时间
terminal width 80 Cryptochecksum:a9f03ba4ddb72e1ae6a543292dd4f5e7
PIX525#
PIX525#write memory ------ 将配置保存 |
上面这个配置实例需要说明一下,pix防火墙直接摆在了和internet接口处,此处网络环境有十几个公有ip,可能会有朋友问假如我的公有ip很有限怎么办?您能够添加router放在pix的前面,或global使用单一ip地址,和外部接口的ip地址相同即可。另外有几个维护命令也很有用,show interface查看端口状态,show static查看静态地址映射,show ip查看接口ip地址,ping outside | inside ip_address确定连通性。
|