pix

 · 2020-3-26 · 次阅读


PIX配置

个人来说配置步骤如下:
1.使用nameif设置接口名称,并指定安全级别(设置之前需要使用interface设置接口)

int e0
nameif outside
设置安全级别命令
int e0
security-level level
show interface//查看接口

接口的配置需要满足访问列表、状态检测、地址转换的要求,允许安全级高接口流向安全级低接口(内->外),安全级低接口流向安全级高接口必须再经过额外的检测和过滤。
2.使用hostname使用pix主机名

3.使用ip address设置Ip

4.使用global指定公网地址范围:定义地址池

Global命令的配置语法:

global(if_name)nat_idip_address-ip_address[netmarkglobal_mask]

其中:

(if_name):表示外网接口名称,一般为outside。

nat_id:建立的地址池标识(nat要引用)。

ip_address-ip_address:表示一段ip地址范围。

[netmarkglobal_mask]:表示全局ip地址的网络掩码。

例如:

PIX525(config)#global(outside) 1 133.0.0.1-133.0.0.15

地址池1对应的IP是:133.0.0.1-133.0.0.15

PIX525(config)#global(outside) 1 133.0.0.1

地址池1只有一个IP地址133.0.0.1。

PIX525(config)#noglobal(outside) 1 133.0.0.1

表示删除这个全局表项。

5.nat
地址转换命令,将内网的私有地址ip转换为外网公网ip
nat命令配置语法:nat(if_name)nat_idlocal_ip[netmark]

6.route
route outside 0.0.0.0 0.0.0.0 192.168.0.1
route inside 10.0.1.0 255.255.255.0 10.0.102.1

下面是杂项命令配置(总结于使用中):
copy running-config tftp 是指把当前配置拷贝到TFTP服务器上
copy running-config startup-config 是指把当前配置写入NVRAM保存,覆盖当前的启动配置
write 把当前配置写入NVRAM保存,覆盖当前的启动配置
write network 是把当前配置写到TFTP服务器
write terminal是把当前配置输出到终端上,同show run

write和copy running-config startup-config结果一样
write network 和copy running-config tftp 结果一样

clear running-config //清除运行时配置

write erase //清除另一种配置

telnet:

conf t
line vty 0 4
password 输入的密码
enable password 输入的密码

inside dmz outside

38.0.2.0/24 39.0.2.0/24 40.0.2.0/24

PAT: port address translation

路由器查看ip:
show run int f0/0

quit 退出命令

nat con //启用 nat

改变或删除一个nat命令语句后,使用clear xlate命令。

防火墙实验配置、查验方法
debug icmp trace
no debug icmp trace

logging on //打开日志
logging console 7
show user
who
show conn
show run nat-control
show xlate (detail) //可以显示翻译槽位的内容

路由器中可以使用debug ip icmp查看ping信息
路由器配置默认路由:
ip route 目的地址 子网掩码 下一跳

问题?
当防火墙有很多条nat,或者pat时候,规则应该按照什么顺序检验(第一个数据包很关键)

端口号尽量大于1023

global对应安全级别低的那端,local对应安全级别高的那端

UIO的含义是什么?
UIO都是TCP的连接标志值,分别代表:
-U: up
-I:inbound data
-O: outbound data
也即三次握手完成,然后是接收到进站消息,接受到出站消息
允许outside的icmp 的echo-reply

xf(config)# nat (inside) 1 40.0.2.0 255.255.255.0
xf(config)# global (outside) 1 38.0.2.20-38.0.2.254 netmask 255.255.255.0
xf(config)# access-list outside permit icmp any any echo-reply //创建ACL
xf(config)# access-group outside in interface outside //把ACL绑定到防火墙的外部接口上

nat和global均为动态转换,有的时候需要静态转换,即地址不是转换到地址池的内容,每次都固定分配IP如下
• 静态转换将一个单个的本地地址映射为一个单个的全局地址
用于本地节点必须被公共空间(internet)访问时
本地节点10.10.10.9配置成一个全局地址192.168.0.9,static命令只 配置地址转换配
PIX(config)# static (inside, outside) 192.168.0.9 10.10.10.9

TCP进站(Inbound)
同理TCP出站(outbound)

255.255.255.255这个地址一般用来广播的时候使用,而0.0.0.0这个地址可以代表这是一个还没有分配 ip 的主机。

不过0.0.0.0还有其他作用,代表主机还没有分配ip地址只是其中的一个用处。例如:充当默认路由来使用,当一个路由器要发送路由表中无法查询的包时,如果设置了全零网络的路由时,我们就可以把这个包丢给全零网络的路由。
小结:
配置防火墙永远把握一个原则:访问由低到高需要做静态映射(dnat,也叫发布服务器);访问从高安全级到低安全级需要做nat转换(snat,如访问外网),access-group dmz_access_in in interface dmz在接口上应用acl,来控制ip之间的访问。

实验三:
目的:
1、内网中的指定用户(如40.0.2.1)可以防问Internet和DMZ中的WEB服务器(如39.0.2.1)。并且内网所有用户都可访问dmz区域服务器。
2、外网的用户可以防问DMZ区的Web平台(39.0.2.1)。
3、DMZ区的WEB服务器可以防问内网中的SQL数据库服务器和外网中的其它服务器。
用到的关键词:NAT、PAT、端口重定向、ACL和route功能。

目的2:
static (dmz,outside) 38.0.2.1 39.0.2.1 netmask 255.255.255.255
上面static语句错误,outside地址要填没有被占用的地址才行,不然就是Deny IP due to Land Attack from 38.0.2.1 to 38.0.2.1
因而改为:static (dmz,outside) 38.0.2.10 39.0.2.1 netmask 255.255.255.255
dmz成功ping通outside
dns: 
access-list 101 extended permit tcp any interface outside eq www
access-group 101 in interface outside

access-group命令详解
使用access-group在一个接口上只能绑定一个ACL,因而需要使用不同的acl_id来进行增添acl,而不能写多条,可以使用extended。

    accesg-group acl_ ID in interface interface_ name
    要完成outside对于DMZ的流量入站需要完成三个步骤:
        1.可以访问到服务器      Configure static translation for web server address
        2.默认拒绝   Configure inbound ACL
        3.绑定接口。 Apply ACL to outside interface
不允许低于1024端口的访问192.168.0.1
access-list DMZ1 deny tcp 192.168.1.0 255.255.255.0 host 192.168.0.1 lt 1024

outside无法ping通dmz
日志显示:No translation group found for icmp src outside

NAT:
NAT选择顺序

根据对防火墙性能资源消耗占有程度来选择:

NAT exemptions (nat 0 access-list commands) 带ACL的nat 0

Policy NAT (static access-list commands)

Static NAT (static commands without port numbers)

Static PAT (static commands with port numbers)

NAT 0 or Policy NAT (nat nat_id access-list commands)

Dynamic NAT and PAT (nat nat_id commands)

如果处于同一级别就需要比较访问控制列表的明细程度和网段地址的明细程度,如果前面都一样则写在前面的优先

PIX-Logging-config

从防火墙日志可以得到什么?
防火墙规则允许的连接:浏览这些消息可以帮助发现遗留在安全策略中的漏洞。
防火墙规则拒绝的连接:可以了解到什么类型的活动直接正针对着安全内部网络。
拒绝规则等级:使用ACE的拒绝等级日志功能可以显示正在对防火墙所发生的攻击。
用户活动:防火墙的用户验证和命令使用均可被记录,为安全政策的变更提供审计线索

logging host
logging trap
logging buffered
logging console
logging facility
logging monitor
logging timestamps
(no) logging message
show logging
clear logging

实验4防火墙命令配置

conf t
logging on
配置时钟:
clock timezone UTC -8
clock set hh:mm:ss {day month | month day} year
show clock
logging timestamp
logging host inside 40.0.2.10

其中logging console会降低PIX防火墙的处理性能
logging monitor可能会导致Telnet会话丢失
logging standby会造成两倍的数据流量

对象分组的作用:
随着客户端、服务器数量以及服务种类的增加,ACL的数量也随之增加,这样会使整个处理过程变得费力并且难于管理。
解决:PIX防火墙的对象分组特性就是为了减少ACL创建和维护的复杂性,提高易管理性而设计的。

对象分组的类型:
协议对象、网络对象、服务对象、ICMP类型对象

网络:
object-group netword Inside_Eng
network-object host 10.0.0.1
network-object host 10.0.0.1
服务:
object-group netword Inside_Eng
port-object eq http
port-object eq https
port-object eq ftp

ICMP:
icmp-object echo
icmp-object echo-reply

日志的输出形式:
PIX防火墙的telnet对话,或者是防火墙内部缓冲区、系统日志服务器、本设备控制台

AAA:
认证(Authentication)、授权(Authorization)和审计(Accounting)
核查顺序是:认证——>授权—>审计
如果没有认证的用户是没法授权和审计的。

作业:

假定AAA服务器的IP地址为:10.0.0.10
nat (inside) 10.0.0.0 255.255.255.0
global (outside) 172.26.26.51-172.26.26.254 netmask 255.255.255.0

aaa-server MYTACACS protocal tacacs+
aaa-server MYTACACS (inside) host 10.0.0.10
key xf123
access-list outbound permit tcp any any eq telnet
access-list outbound permit tcp any any eq http
access-list outbound permit tcp any any eq https
aaa authentication match outbound inside MYTACACS 
aaa authentication exclude https inside 10.0.0.42 255.255.255.0 172.26.26.50 255.255.255.0 MYTACACS
aaa authentication exclude http inside 10.0.0.42 255.255.255.0 172.26.26.50 255.255.255.0 MYTACACS
aaa authentication exclude telnet inside 10.0.0.42 255.255.255.0 172.26.26.50 255.255.255.0 MYTACACS

虚拟防火墙:
实验前先检查自己的PIX镜像支持几个context

计算不同设备的PC值,并重新选择最大的,能最有效的降低CPU的利用率。
只允许admin进行管理和删除,物理防火墙只是容器不需要配置IP,分别IP需要 其他context设置

只有admin才可以changeto

failover配置实验中先配置primary
再配置secondary

查看vlan: do show vlan-switch brief

Deny inbound icmp src outside:38.0.2.1 dst outside:38.0.2.187 (type 0, code 0)

解决办法:same-security-traffic permit intra-interface

配置故障倒换A/A模式

故障倒换是用来做什么的?

what dose the Failover do?

个人理解是当防火墙出现故障时,能够有另一台备用机器仍然可以正常的维护设备的安全。这两个设备可以分别成为主副设备,主(primary),副||次||备用(Secondary).
当然这个另一台也可以通过虚拟防火墙的context实现。

那么什么情况下会触发故障倒换原因:
1.防火墙IPX防火墙电源关闭
2.活动PIX防火墙重启
3.活动PIX防火墙的一条链路关闭超过两个故障倒换轮询周期(缺省总时间为30S)
4.使用no failover active 命令,强制活动防火墙进行故障倒换;或者在待机防火墙上使用命令failover active,强制待机防火墙进行故障倒换
5.在活动PIX防火墙上,快内存被耗尽的状态持续超过15S

接下来看一下它究竟有哪几种模式:
A / S active / standby
该模式下,有两台防火墙,其中一台为Primary,另一台为Secondary
当Pri的状态由Active->Failed,此时Sec就由Standby->Active

A / A active / active
该模式下任然需要2台防火墙,但配置会更复杂,由于还需要在两台防火墙少至少启用两个虚拟防火墙,并对内部的流量进行区分。在每个context下都有自己的active和standby.所以需要配置每个设备下的context。

故障倒换的要求:故障恢复对其中的两个设备必须完全相同,这很好理解,不相同达不到相同的效果。

具体条件就不一一说明了。


使用交换机前使用vlan database
添加需要的vlan
例如添加vlan 10
vlan 10即可
配置为中继trunk
sw mode trunk
#sw trunk encap dot1q(在cisco packet tracer中可不敲)
sw trunk allow vlan all
设置access接口
int f0/1
sw mode access
sw access vlan 10
#下面两句可敲可不敲
speed 100
duplex full