1、 PIX 防火墙基本配置命令和配置实例PIX 防火墙基本配置命令和配置实例1. PIX 的配置命令(1) 配置防火墙接口的名字,并指定安全级别(nameif)Pix525(config)#nameif ethernet0 outside security0Pix525(config)#nameif ethernet1 inside security100Pix525(config)#nameif dmz security50提示:在缺省配置中,以太网 0 被命名为外部接口(outside),安全级别是 0;以太网 1被命名为内部接口(inside),安全级别是 100.安全级别取值范围为 19
2、9,数字越大安全级别越高。若添加新的接口,语句可以这样写:Pix525(config)#nameif pix/intf3 security40 (安全级别任取)(2) 配置以太口参数(interface)Pix525(config)#interface ethernet0 auto(auto 选项表明系统自适应网卡类型)Pix525(config)#interface ethernet1 100full(100full 选项表示 100Mbit/s 以太网全双工通信)Pix525(config)#interface ethernet1 100full shutdown(shutdown 选项表
3、示关闭这个接口,若启用接口去掉 shutdown)(3) 配置内外网卡的 IP 地址(ip address)Pix525(config)#ip address outside 61.144.51.42 255.255.255.248Pix525(config)#ip address inside 192.168.0.1 255.255.255.0很明显,Pix525 防火墙在外网的 ip 地址是 61.144.51.42,内网 ip 地址是 192.168.0.1(4) 指定外部地址范围(global)Global 命令的配置语法:global (if_name) nat_id ip_addr
4、ess - ip_address netmark global_maskglobal 命令把内网的 IP 地址翻译成外网的 IP 地址或一段地址范围。其中(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
5、 防火墙要访问外网时,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表示删除这个全局表项。(5) 指定要进行转换的内部地址(NAT)NAT 命令配置语法:nat (if_name) nat
6、_id local_ip netmark。网络地址翻译(nat)作用是将内网的私有 ip 转换为外网的公有 IP。其中(if_name)表示内网接口名字,例如 inside. Nat_id 用来标识全局地址池,使它与其相应的 global 命令相匹配,local_ip 表示内网被分配的 IP 地址。netmark表示内网 ip 地址的子网掩码。例如 0.0.0.0 表示内网所有主机可以对外访问。Nat 命令总是与 global 命令一起使用,这是因为 nat 命令可以指定一台主机或一段范围的主机访问外网,访问外网时需要利用 global 所指定的地址池进行对外访问。例 4 Pix525(con
7、fig)#nat (inside) 1 0 0表示启用 nat,内网的所有主机都可以访问外网,用 0 可以代表 0.0.0.0例 5 Pix525(config)#nat (inside) 1 172.16.5.0 255.255.0.0表示只有 172.16.5.0 这个网段内的主机可以访问外网。(6) 设置指向内网和外网的静态路由(route)定义一条静态路由:Route 命令配置语法:route (if_name) 0 0 gateway_ip metric其中(if_name)表示接口名字,例如 inside,outside。Gateway_ip 表示网关路由器的IP 地址。metri
8、c表示到 gateway_ip 的跳数,通常缺省是 1。例 6 Pix525(config)#route outside 0 0 61.144.51.168 1表示一条指向边界路由器(IP 地址 61.144.51.168)的缺省路由。例 7 Pix525(config)#route inside 10.1.1.0 255.255.255.0 172.16.0.1 1表示创建了一条到网络 10.1.1.0 的静态路由,静态路由的下一跳路由器 IP 地址是172.16.0.1例 8 Pix525(config)#route inside 10.2.0.0 255.255.0.0 172.16.0
9、.1 1如果内部网络只有一个网段,按照例 6 那样设置一条缺省路由即可;如果内部存在多个网络,需要配置一条以上的静态路由。(7) 配置静态 IP 地址翻译(static)如果从外网发起一个会话,会话的目的地址是一个内网的 ip 地址,static 就把内部地址翻译成一个指定的全局地址,允许这个会话建立。Static 命令配置语法:static (internal_if_name,external_if_name) outside_ip_address inside_ ip_address其中 internal_if_name 表示内部网络接口,安全级别较高,如inside;external_i
10、f_name 为外部网络接口,安全级别较低,如 outside 等;outside_ip_address 为正在访问的较低安全级别的接口上的 IP 地址;inside_ ip_address 为内部网络的本地 IP 地址。例 9 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 地址 6
11、1.144.51.62 之间的静态映射。例 10 Pix525(config)#static (inside, outside) 192.168.0.2 10.0.1.3例 11 Pix525(config)#static (dmz, outside) 211.48.16.2 172.16.10.8通过以上几个例子说明使用 static 命令可以让我们为一个特定的内部 IP 地址设置一个永久的全局 IP 地址。这样就能够为具有较低安全级别的指定接口创建一个入口,使它们可以进入到具有较高安全级别的指定接口。(8) 管道命令(conduit)Static 命令可以在一个本地 IP 地址和一个全局
12、IP 地址之间创建了一个静态映射,但从外部到内部接口的连接仍然会被 pix 防火墙的自适应安全算法(ASA)阻挡,conduit 命令用来允许数据流从具有较低安全级别的接口流向具有较高安全级别的接口,例如允许从外部到DMZ 或内部接口的入方向的会话。对于向内部接口的连接,static 和 conduit 命令一起使用,来指定会话的建立。conduit 命令配置语法:conduit permit|deny global_ip port-portprotocol foreign_ip netmask其中 permit|deny 为 允许|拒绝访问。global_ip 指的是先前由 global 或
13、 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 命令参数。例 12 Pix525(config)#conduit permit
14、 tcp host 192.168.0.8 eq www any表示允许任何外部主机对全局地址 192.168.0.8 的这台主机进行 http 访问。其中使用 eq和一个端口来允许或拒绝对这个端口的访问。Eq ftp 就是指允许或拒绝只对 ftp 的访问。例 13 Pix525(config)#conduit deny tcp any eq ftp host 61.144.51.89表示不允许外部主机 61.144.51.89 对任何全局地址进行 ftp 访问。例 14 Pix525(config)#conduit permit icmp any any表示允许 icmp 消息向内部和外部通
15、过。例 15 Pix525(config)#static (inside, outside) 61.144.51.62 192.168.0.3Pix525(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.361.144.51.62(全局),然后利用 conduit 命令允许任何外部主机对全局地址 61.144.
16、51.62 进行 http 访问。(9) 配置 fixup 协议Fixup 命令作用是启用、禁止、改变一个服务或协议通过 pix 防火墙,由 fixup 命令指定的端口是 pix 防火墙要侦听的服务。例 16 Pix525(config)#fixup protocol ftp 21启用 ftp 协议,并指定 ftp 的端口号为 21。例 17 Pix525(config)#fixup protocol http 80Pix525(config)#fixup protocol http 1080为 http 协议指定 80 和 1080 两个端口。例 18 Pix525(config)#no f
17、ixup protocol smtp 80禁用 smtp 协议例 19 禁用 smtp 协议。(10) 设置 TelnetTelnet 在 pix OS 5.0 之前,只能从内部网络上的主机通过 telnet 访问 pix;在 pix OS 5.0及后续版本中,可以在所有的接口上启用 telnet 到 pix 的访问。当从外部接口要 telnet到 pix 防火墙时,telnet 数据流需要用 IPsec 提供保护,也就是说用户必须配置 pix 来建立一条到另外一台 pix,路由器或 VPN 客户端的 IPsec 隧道。另外就是在 PIX 上配置 SSH,然后用 SSH client 从外部
18、telnet 到 PIX 防火墙,PIX 支持 SSH1 和 SSH2,不过 SSH1 是免费软件,SSH2 是商业软件。telnet 配置语法:telnet local_ip netmask其中 local_ip 表示被授权通过 telnet 访问到 pix 的 IP 地址。如果不设此项,pix 的配置方式只能由 console 进行。4 配置实例Welcome to the PIX firewallType help or ? for a list of available commands.PIX525 enPassword:PIX525#sh config: Saved:PIX Ver
19、sion 6.0(1) - PIX 当前的操作系统版本为 6.0Nameif ethernet0 outside security0Nameif ethernet1 inside security100 - 显示目前 pix 只有 2 个接口Enable password 7Y051HhCcoiRTSQZ encryptedPassed 7Y051HhCcoiRTSQZ encrypted - pix 防火墙密码在默认状态下已被加密,在配置文件中不会以明文显示,telnet 密码缺省为 ciscoHostname PIX525 - 主机名称为 PIX525Domain-name - 本地的一
20、个域名服务器 ,通常用作为外部访问Fixup protocol ftp 21Fixup protocol http 80fixup protocol h323 1720fixup protocol rsh 514fixup protocol smtp 25fixup protocol sqlnet 1521fixup protocol sip 5060 - 当前启用的一些服务或协议,注意 rsh 服务是不能改变端口号names - 解析本地主机名到 ip 地址,在配置中可以用名字代替 ip 地址,当前没有设置,所以列表为空pager lines 24 - 每 24 行一分页interface
21、ethernet0 autointerface ethernet1 auto - 设置两个网卡的类型为自适应mtu outside 1500mtu inside 1500 - 以太网标准的 MTU 长度为 1500 字节ip address outside 61.144.51.42 255.255.255.248ip address inside 192.168.0.1 255.255.255.0 - pix 外网的地址 61.144.51.42,内网的地址 192.168.0.1ip audit info action alarmip audit attack action alarm -
22、pix 入侵检测的 2 个命令。当有数据包具有攻击或报告型特征码时,pix 将采取报警动作(缺省动作),向指定的日志记录主机产生系统日志消息;此外还可以作出丢弃数据包和发出 tcp 连接复位信号等动作,需另外配置。pdm history enable - PIX 设备管理器可以图形化的监视 PIXarp timeout 14400 - arp 表的超时时间global (outside) 1 61.144.51.46 - 如果你访问外部论坛或用 QQ 聊天等,上面显示的 ip 就是这个nat (inside) 1 0.0.0.0 0.0.0.0 0 0static (inside, outsi
23、de) 61.144.51.43 192.168.0.8 netmask 255.255.255.255 0 0conduit permit icmp any anyconduit permit tcp host 61.144.51.43 eq www anyconduit 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 - 外部网
24、关 61.144.51.61timeout 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:00timeout uauth 0:05:00 absolute - AAA 认证的超时时间,absolute 表示连续运行uauth 定时器,用户超时后,
25、将强制重新认证aaa-server TACACS+ protocol tacacs+aaa-server RADIUS protocol radius - AAA 服务器的两种协议。AAA 是指认证,授权,审计。Pix 防火墙可以通过 AAA 服务器增加内部网络的安全no snmp-server locationno snmp-server contactsnmp-server community public - 由于没有设置 snmp 工作站,也就没有 snmp 工作站的位置和联系人no snmp-server enable traps - 发送 snmp 陷阱floodguard enable - 防止有人伪造大量认证请求,将 pix 的 AAA 资源用完no sysopt route dnattelnet timeout 5ssh timeout 5 - 使用 ssh 访问 pix 的超时时间terminal width 80Cryptochecksum:a9f03ba4ddb72e1ae6a543292dd4f5e7PIX525#PIX525#write memory - 将配置保存