思科防火墙

一、概念

1、介绍
防火墙默认三种区域:inside、outside、dmz,默认outside和dmz级别为0,inside安全级别为100。
高安全级别到低安全级别的流量是放行的,但返回的数据根据ASA中会话表是否允许
低安全级别到高安全级别的流量是拒绝的,
允许出站(outside):高100到低0,可发消息,禁止入站(inside):低0到高100,不回消息,相同级别,不发也不回

2、ASA5505和ASA5506区别
ASA5505是创建vlan,将端口加入vlan,设置vlan的安全等级,实现安全区域,再通过ACL对vlan进行控制
ASA5506是端口设置安全区域,再通过ACL对端口进行控制

二、简单配置(内网可访问外网,外网不能访问内网)

1、拓扑图

  2、配置

1、inside配置
# configure terminal
# interface vlan 1
# nameif inside
# security-level 100
# ip address 192.168.1.1 255.255.255.0
# no shutdown 

2、outside配置
# interface vlan 2
# nameif outside
# security-level 0
# ip address 1.1.1.1 255.255.255.0
# no shutdown 

3、端口加入安全区域
# show switch vlan
# configure terminal
# interface ethernet 0/1
# switchport access vlan 1
# interface ethernet 0/2
# switchport access vlan 2
# show switch vlan
# show interface ip brief 

3、测试(可访问防火墙inside,不能访问服务器outside)

     

 重要:默认outside为0,inside为100,高安全等级可访问低等级,但低安全等级不能访问高等级,除非设置访问控制列表

1、配置pc端 acl 控制列表
# configure terminal
# access-list 100 permit icmp any any echo-reply
# access-group 100 in interface outside

可访问外网访问,外网不能访问内网

    

2、配置服务器 acl 控制列表
# configure terminal
# access-list 200 permit icmp any any echo
# access-group 200 in interface outside

外网可以访问内网,内网不能访问外网

   

3、配置双向互通
# configure terminal
# access-list 100 extended permit ip any any
# access-group 100 in interface outside

   

4、拓扑图

 5、配置

1、inside配置
# configure terminal
# interface gigabitEthernet 1/1
# nameif inside
# security-level 100
# ip address 192.168.1.1 255.255.255.0
# no shutdown 

2、outside配置
# interface gigabitEthernet 1/2
# nameif outside
# security-level 0
# ip address 1.1.1.1 255.255.255.0
# no shutdown 

3、配置 acl 控制列表
# show switch vlan
# show interface ip brief 
# configure terminal
# access-list 100 permit icmp any  any 
# access-group 100 in interface outside

6、测试

   

7、拓扑图

8、配置

1、配置路由器
# configure terminal
# line vty 0 4
# password 666 #
interface GigabitEthernet0/0 # ip address 1.1.1.100 255.255.255.0 # no shutdown # ip route 192.168.1.0 255.255.255.0 1.1.1.1 2、配置 acl 控制列表 # no access-list 100 extended permit icmp any any

9、测试(没有acl,默认相互ping不通,但可以telnet访问,服务不受影响)

   

 

三、NAT配置

1、概念
动态NAT:多对多,定义一个地址池(一段ip) 动态PAT:一对多,所有内网进行网络地址转换,端口地址转换PAT 静态NAT:一对一,一个内网转换一个外网 静态PAT:端口映射,将内网的端口,映射到外网端口

 1、动态nat(一对多)

1、配置路由器
# configure terminal
# line vty 0 4
# password 666
# interface GigabitEthernet0/0
# ip address 1.1.1.100 255.255.255.0
# no shutdown

2、防火墙配置
# object network inside                       #定义地址池名称
# subnet 192.168.1.0 255.255.255.0            #地址池ip网段
# nat (inside,outside) dynamic interface      #inside(g1/1端口名),动态状态nat,端口nat
# show xlate                                  #查看nat状态

3、测试(ping不通,但服务正常访问)

    

配置 ACL策略
# access-list 100 extended permit ip any any
# access-group 100 in interface outside

可ping,和正常访问外网,但外网不能访问内网

    

4、动态NAT(多对多)

防火墙配置
1、多对多转换地址池
# object network wan-range                    #定义外网地址池
# range 1.1.1.10 1.1.1.20

# object network lan                          #定义内网地址池
# subnet 192.168.1.0 255.255.255.0
# nat(inside,outside) dynamic wan-range       #动态转换

2、多对多转换地址池组
# object network wan-range1                   #定义外网地址池
# range 1.1.1.10 1.1.1.20
# object network wan-range2                   #定义外网地址池
# host 1.1.1.30

# object-group network nat-group              #定义外网地址池组
# network-object object wan-range1
# network-object object wan-range2 
 
object network lan                            #定义内网地址池
subnet 192.168.1.0 255.255.255.0
nat (inside,outside) dynamic nat-group        #动态转换

5、静态NAT(一对一)

 

防火墙配置
# object network web
# host 192.168.1.200
# nat (inside,outside) static 1.1.1.2

路由器配置
# access-list 1 permit 192.168.10.0 0.0.0.255        #创建acl列表
# ip nat inside source list 1 int G0/0 overload      #将ACL表复用到G0/0
# ip route 0.0.0.0 0.0.0.0 G0/0                      #默认路由
# interface G0/0                                     #配置NAT外网
# ip nat outside 
# interface G0/1                                     #配置NAT内网
# ip nat inside 

测试(外网可访问,外网nat转换后的内网服务器,不能直接访问内网)

防火墙配置(和上面效果一样)
1、使用静态路由 #
object network web # host 192.168.1.200 # nat (inside,outside) static 1.1.1.2 # route outside 0.0.0.0 0.0.0.0 1.1.1.100 #配置静态路由
或者
# route outside 192.168.10.0 255.255.255.0 1.1.1.100

2、静态NAT端口转发
# object network web
# host 192.168.1.200
# nat (inside,outside) static 1.1.1.2 service tcp www www

 6、静态NAT(内网访问vpn服务器)

# object network lan
# host 172.16.11.15
# object network vpn
# host 172.20.21.15
# nat (inside,outside) source static lan lan destination static vpn vpn no-proxy-arp route-lookup               
#不代理ARP, 仅限路由模式

 7、配置基于预共享密钥IPsec的L2TP

实例1:

1、启用ike
# crypto ikev1 enable outside                   #外部端口启用ikev1密钥协议

2、定义策略
# crypto ikev1 policy 10                        #定义ikev10策略,序号越小越优先
# authentication pre-share                      #配置认证方式,共享秘钥认证
# encryption 3des                               #加密算法,默认AES-128,双方保持一致
# hash sha                                      #验证算法,默认SHA
# prf sha                                       #PRF算法
# group 2                                       #组2,默认group 2
# lifetime 86400                                #SA生命周期,默认86400秒

3、配置转换集
# crypto ipsec ikev1 transform-set TRANS-ESP-3DES-SHA  esp-3des   esp-sha-hmac
                                   定义策略名            加密算法    验证算法
# crypto ipsec ikev1 transform-set TRANS-ESP-3DES-SHA mode  transport
                                                            隧道模式 

4、配置动态图(对端是动态ip)
# crypto dynamic-map outside_dyn_map 10 set ikev1 transform-set TRANS-ESP-3DES-SHA
                     创建动态map      序号,优先级                  调用策略

5、配置静态图,并应用到outside接口
# crypto map outside_map 65535 ipsec-isakmp dynamic outside_dyn_map
              静态图名     序号      绑定               动态图名
# crypto map outside_map interface outside      #静态图应用到outside          

6、创建 IP 地址池
# ip local pool Address-pool 192.168.1.1-192.168.1.254 mask 255.255.255.0

7、配置组策略
# group-policy L2TP-VPN internal                #定义本地组策略,策略名:L2TP-VPN
# group-policy L2TP-VPN attributes              #定义属性
# dns-server value 8.8.8.8 4.4.4.2              #dns服务器地址
# vpn-tunnel-protocol l2tp-ipsec                #vpn隧道协议属性
# default-domain value cisco.com                #域名
# username test password test mschap            #配置用户和密码,mschap协议关键字

8、配置隧道组
1)默认隧道组
# tunnel-group DefaultRAGroup general-attributes
  defaultragroup:远程访问用户,defaultl2lgroup:站点到站点的会话  
  general-attributes:属性,预共享密钥必须是DefaultRAGroup  
# address-pool Address-pool                     #设置地址池为上面的ip地址池
# default-group-policy L2TP-VPN                 #设置默认策略

2)隧道组 ipsec
# tunnel-group DefaultRAGroup ipsec-attributes  #设置隧道的ipsec属性
# ikev1 pre-shared-key C!sc0@123                #预共享密钥

3)隧道组 ppp 
# tunnel-group DefaultRAGroup ppp-attributes    #设置隧道的ppp属性
# no authentication chap                        #禁用CHAP认证
# authentication ms-chap-v2                     #认证类型

9、配置NAT豁免
# object network L2TP-Pool
# subnet 192.168.1.0 255.255.255.0
# nat (inside,outside) source static any any destination static L2TP-Pool L2TP-Pool no-proxy-arp route-lookup

10、隧道分离
# access-list SPLIT standard permit 10.1.1.0 255.255.255.0  #acl策略
# group-policy DefaultRAGroup attributes                    #定义组策略属性
# split-tunnel-policy tunnelspecified                       #启用流量分割
   Tunnelall:所有流量必须走隧道,不分割流量,默认设置
   Tunnelspcified:所有匹配acl的流量走隧道
   Excludespecified:所有不匹配ACL的流量走隧道
# split-tunnel-network-list value SPLIT #匹配acl:SPLIT的流量用加密隧道传输
# intercept-dhcp 255.255.255.255 enable                     #开启dhcp网关,vpn客户端要关闭远程网关

 实例2:

1、定义地址池
# ip local pool vpnpool 192.168.1.10-192.168.1.100 mask 255.255.255.0

2、定义组策略
# group-policy DefaultRAGroup internal
# group-policy DefaultRAGroup attributes
# vpn-tunnel-protocol  IPSec l2tp-ipsec
# dns-server value 8.8.8.8default-domain value cisco.com

3、定义分割流量
# access-list no-nat extended permit ip 192.168.1.0 255.255.255.0  1.1.1.0 255.255.255.0    
# nat (inside) 0 access-list no-nat
# access-list 100 standard permit 192.168.1.0 255.255.255.0
# access-list 100 standard permit 1.1.1.0 255.255.255.0  
# split-tunnel-policy tunnelspecified        
# split-tunnel-network-list value 100
# split-dns cisco.com
# vpn-filter value acl_2                        #只允许或不允许访问内容,acl列表
# ipsec-udp enable                              #开启ipsec的udp
# vpn-idle-timeout 30                           #客户端超时时间,默认30分

4、配置用户,并指定用户的组策略
# username frank password frank mschap          #创建用户并指明加密算法         
# username frank attributes                     #用户属性
# vpn-group-policy DefaultRAGroup               #指定用户的组策略
# service-type remote-access                    #服务为远程访问

5、定义隧道组
1)默认隧道组
# tunnel-group DefaultRAGroup general-attributes#默认隧道组,及属性
# authentication-server-group   LOCAL           #本地认证
# default-group-policy  DefaultRAGroup          #设置组策略
# address-pool vpnpool                          #隧道组的地址池

2)自定义隧道组
#自定义组策略
# group-policy test_group internal              
# group-policy test_group attributes  
# vpn-idle-timeout 30
# dns-server value 8.8.8.8
# vpn-tunnel-protocol IPSec   
# default-domain value cisco.com
#自定义隧道组
# tunnel-group test_group type ipsec-ra         #设置隧道类型为remote vpn
# tunnel-group test_group general-attributes    #设置属性
# address-pool vpnpool                          #地址池
# default-group-policy test_group               #设置默认组策略
# tunnel-group test_group ipsec-attributes      #设置隧道的ipsec属性 
# pre-shared-key  cisco                         #共享密钥

3)自定义ezvpn隧道组
#自定义组策略
# group-policy ezvpn internal
# group-policy ezvpn attributes
# dns-server value 8.8.8.8
# vpn-tunnel-protocol ipsec 
# split-tunnel-policy tunnelspecified
# split-tunnel-network-list value acl_100
# default-domain value cisco.com
#自定义隧道组
# tunnel-group ezvpn type remote-access         #远程访问类型
# tunnel-group ezvpn general-attributes
# address-pool vpnpool
# default-group-policy ezvpn
# tunnel-group ezvpn ipsec-attributes
# ikev1 pre-shared-key cisco

6、定义isakmp策略
# crypto isakmp enable outside                  #在outside上启用isakmp策略
# crypto isakmp policy 10                       #定义ikev10策略,序号为10
# authentication pre-share                      #共享秘钥认证
# encryption 3des                               #加密算法
# hash sha                                      #验证算法
# prf sha                                       #PRF算法
# group 2                                       #组2
# lifetime 86400                                #策略有效期1天(默认)

7、配置 IPsec 安全协议
1)配置Ipsec加密算法(用esp-3des加密,esp-sha-hmac认证)
# crypto ipsec transform-set TRANS_ESP_3DES_SHA esp-3des esp-sha-hmac
2)配置IPSec传输模式
# crypto ipsec transform-set TRANS_ESP_3DES_SHA mode transport
3)可选
#时间定义,转换集的生存时间
# crypto ipsec security-association lifetime seconds 28800 
#字节定义,转换集的生存时间
# crypto ipsec security-association lifetime kilobytes 4608000

8、配置 IPsec 策略
1)动态加密策略
#定义动态加密策略
# crypto dynamic-map outside_dyn_map 65535 set transform-set TRANS_ESP_3DES_SHA
#路由反转
# crypto dynamic-map outside_dyn_map 20 set reverse-route
#定义静态策略,绑定动态加密策略
# crypto map outside_map 65535 ipsec-isakmp dynamic outside_dyn_map
#策略应用到outside
# crypto map outside_map interface outside
####其他
#定义发送的身份为 IP 地址
crypto isakmp identity address 
对远程路由器使用密钥
crypto isakmp key 654321 address 202.102.1.6 
对远程路由器隧道使用密钥
crypto isakmp key 654321 address 192.168.1.2 

2)静态加密策略
#配置acl
# access-list acl-2 extended permit ip 192.168.1.0 255.255.255.0  1.1.1.0 255.255.255.0
#定义静态策略,并匹配acl    
# crypto map new-map 1 match address acl-2
#定义静态策略的对端地址
# crypto map new-map 1 set peer 200.1.1.1 
#定义加密协议      
# crypto map new-map 1 set ipsec transform-set TRANS_ESP_3DES_SHA 
#定义有效期    
# crypto map new-map 1 set security-association lifetime seconds 3600  

9、配置NAT豁免
1)常用
# object network L2TP-Pool
# subnet 192.168.1.0 255.255.255.0
# nat (inside,outside) source static any any destination static L2TP-Pool L2TP-Pool no-proxy-arp route-lookup
2)其他
# crypto isakmp ipsec-over-tcp                  #双方启用tcp通信,端口10000,client方式
# crypto isakmp nat-traversal  10               #双方启用udp通信,端口4500,client,L2L方式 
# ipsec-udp enable                              #双方启用udp通信
# ipsec-udp-port 10000                          #端口10000,client方式

10、其他
# same-security-traffic permit intra-interface  #允许流量从一个端口转发

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted on 2022-09-09 11:40  五光十色  阅读(1603)  评论(0编辑  收藏  举报

导航