asa 防火墙基本配置管理

1、基本配置

#hostname name                          //名字的设置

#interface gigabitethernet0/0           //进入接口0/0
#nameif outside                         //配置接口名为outside
#security-level 0                       //设置安全级别。 级别从0--100,级别越高安全级别越高
#ip address 218.xxx.xxx.xxx  255.255.255.248 //设置外部ip地址              
#no shutdown  

#interface ethernet0/1                  //进入接口0/1
#nameif inside                          //配置接口名为inside
#security-level 100                     //设置安全级别。 级别从0--100,级别越高安全级别越高
#ip address 192.168.10.1  255.255.255.0 //设置ip地址              
#duplex full                            //全双工
#speed 100                              //速率
#no shutdown  

#interface ethernet0/2                 //进入接口0/2
#nameif dmz                            //配置接口名为dmz
#security-level 50                     //设置安全级别。 级别从0--100,级别越高安全级别越高
#ip address 192.168.9.1  255.255.255.0 //设置dmz接口ip地址              
#no shutdown  


#interface Management0/0                //进入管理接口
# nameif guanli                         //接口名
# security-level 100                    //安全级别
#ip address 192.168.1.1 255.255.255.0   //IP地址


注意:security-level 配置安全级别。默认外网接口为 0/0  安全级别默认为 0
                                  内网接口为     0/1  安全级别默认为 100
                                  dmz 接口为     0/2  安全级别默认为 50

默认状况下,相同安全级别接口之间不容许通讯,可使用如下命令:

#same-security-traffic permit interface  //容许相同安全级别接口之间互相通讯。

较高安全接口访问较低安全接口:容许全部基于IP的数据流经过,除非有ACL访问控制列表,认证或受权的限制。
较低安全接口访问较高安全接口:除非有conduit或acl进行明确的许可,不然丢弃全部的数据包。


2、global、nat、static、route命令

一、global命令

   global (if_name) nat_id ipaddress--ipaddress [netmask mask]

       if_name:指的是接口
       nat_id:为地址池的ID标识号
       ipaddress--ipaddress [netmask mask]:指定的IP地址池范围,也能够是一个地址

例:
    global(outside) 1 218.106.236.247-218.106.236.249            //配置一个地址池
    global(outside) 1 interface                                  //配置单个地址为outside接口的地址
    global(outside) 1 218.106.236.237 netmask 255.255.255.248    //配置一个地址池,为255.255.255.248全部子网范围内的地址

二、nat命令

 (1)基本用法

 nat (if_name)  nat_id  local_ip  [netmask]

    if_name:指的是接口
    nat_id:为地址池的ID标识号,即global中定义的nat_id
    local_ip  [netmask] :哪些地址转换到nat_id这个地址池上。

(2)动态内部nat转换(多对多)


例:
  global(outside) 1 218.106.236.247-218.106.236.249            //配置一个地址池
  nat (inside) 1 192.168.9.0 255.255.255.0           //和上面的global配置一块儿使用,即把192.168.9.0 这个网段的地址转换为218.106.236.247-218.106.236.249这个网段  

(3) pat (多对一nat)

   当多个ip地址转换为一个ip地址时,就自动在外部IP地址的后面加上大于1024的端口号,以区别不一样的转换访问。

global(outside) 1 218.106.236.247                  //配置一个外部地址
nat (inside) 1 192.168.9.0 255.255.255.0          //和上面的global配置一块儿使用,即把192.168.9.0 这个网段的地址转换为218.106.236.247这个外部IP地址。外部人看到的是自动加了端口号的地址。  

(4)策略nat

access-list extended net1 permit ip  192.168.9.0 255.255.255.0 host 209.165.200.1    //定义一个策略
global(outside) 1 209.165.200.100                                                    //定义一个地址
nat (inside) 1 access-list net1     //当192.168.9.0 网段的地址访问 209.165.200.1这台电脑时,转换为209.165.200.100这个ip地址。

(5)动态外部nat转换

   当低级别的想往高级别的转换时,在后面加outside关键字便可。

 nat (dmz) 1 192.168.7.0 255.255.255.0 outside    //把dmz接口下的地址nat 到inside接口中
 global(inside) 1 192.168.9.10-192.168.9.20        //即dmz接口中的192.168.7.0 网段的地址访问内网时,将转换为内网地址为192.168.9.10-192.168.9.20

(6)nat 0 即nat 免除

 nat 0 表示穿过防火墙而不进行nat转换。即表示地址不通过转换直接做为源地址发送穿过防火墙达到低级别安全接口。

nat (dmz) 0  192.168.0.9 255.255.255.255



注意:执行nat的顺序:

    nat 0 (nat免除)  
    静态nat和静态pat  (即static命令)
    策略动态 nat  (nat access-list)
    正常的动态nat和pat (nat)


三、static映射命令

充许一个位于低安全级别接口的流量,穿过防火墙达到一个较高级别的接口。即数据流从较低安全级别接口到较高安全级别。

(1)经常使用方法:

  static (real_ifname  mapped_ifname) {mapped_ip|interface}  real_ip  [netmask mask]

     real_ifname :较高级别接口名   mapped_ifname:较低级别接口名
     mapped_ip:较低级别接口ip地址  interface:较低级别接口       real_ip:较高级别ip地址
     扩号内的顺序是:先高级别后低级别,扩号外的顺序是先低级别后高级别,正好相反。

    例: static (inside outside)  218.107.233.234  192.167.9.1      //即把218.107.233.234这个外部地址映射到内部地址192.168.9.1上。

(2)静态端口映射

static (real_ifname  mapped_ifname) {tcp | udp}  {mapped_ip|interface} mapped_port real_ip real_port [netmask mask]
real_ifname :较高级别接口名   mapped_ifname:较低级别接口名
tcp|udp :要映射的端口协议名
mapped_ip:较低级别接口ip地址  interface:较低级别接口  mapped_port:端口名或端口号      real_ip:较高级别ip地址    real_port:端口名或端口号

注意一点很重要:并非配置了static就能够从外部访问内部了,必需要定义一个访问控制列表来实现一个通道,容许哪些服务或端口,或哪些地址能够访问。
例:

static (inside,outside) tcp interface ftp 192.168.10.4 ftp netmask 255.255.255.255  //把outside接口ip地址的ftp端口映射到192.168.10.4 内部IP的FTP端口。
access-list ftp extended permit tcp any interface outside eq ftp                     //定议一个访问控制列表,以容许ftp数据流经过。
access-group ftp in interface outside                                               //把访问控制列表应用于接口

四、route 命令

route if_name destination_ip  gateway  [metric]

if_name:        接口名
destination_ip: 目的地
gateway:        网关
metric:         跳数

例:route outside 0 0 218.102.33.247 1     //即默认网关为 218.102.33.247 ,只有一跳
   route inside 192.168.9.0 255.255.255.0 192.168.10.1   //设置到目标192.168.9.0网段的网关为192.168.10.1




3、访问控制

访问控制的方法与路由器的没有区别。基本步骤是先定义访问控制列表,而后再应用到接口便可。在此很少做解释,在路由器模块里,会单独把访问列表做解释。


4、防火墙基本管理


 一、telnet 配置

   #usename name password password                //设置登入的账号和密码
   #aaa authentication telnet console LOCAL       //设置AAA验证方式。 此处为LOCAL本地。也能够用AAA服务器进入验证。
   #telnet 0.0.0.0 0.0.0.0 inside                 //哪些地址可telnet进此接口
   #telnet timeout 10                             //超时时长,以分钟为单位


二、ssh登陆配置

 #usename name password password                //设置登入的账号和密码
 #aaa authentication ssh console LOCAL       //设置AAA验证方式。 此处为LOCAL本地。也能够用其余服务器进入验证。
 #ssh timeout 10

 #crypto key generate rsa modulus 1024         //指定rsa密钥的大小,这个值越大,产生rsa的时间越长,cisco推荐使用1024.
 # write mem                                   //保存刚才产生的密钥

 #ciscoasa(config)#ssh 0.0.0.0 0.0.0.0 {inside|outside} //容许哪些IP能够经过SSH登陆此防火墙。 inside为内网接口,outside为外网接口。0.0.0.0 0.0.0.0 表示全部IP,可配置单个IP,也能够配置某段IP。
 #ssh timeout 30                               //设置超时时间,单位为分钟
 #ssh version 1                                  //指定SSH版本,能够选择版本2
 #passwd 密码                                    //passwd命令所指定的密码为远程访问密码


show ssh                                       //查看SSH配置信息
crypto key zeroize                            //清空密钥
show crypto key mypubkersa                     //查看产生的rsa密钥值


三、asdm配置


先上传相应asdm版本到防火墙中。

# web***                                       // 进入WEB×××模式
# username cisco password cisco               // 新建一个用户和密码
# http server enable                          //开启HTTP服务
# http 192.168.9.10 255.255.255.0 inside    //容许哪些ip 经过哪一个接口能够经过http连上来。此处的意思为:容许192.168.9.10 这个IP用http经过inside连上防火墙.
# http 192.168.1.0 255.255.255.0 guanli    //容许192.168.1.0网段通过管理接口连上防火墙。注意要用交叉线和管理接口链接,进行配置。固然事先要设置管理接口的IP,和名称。

通过以上配置就能够用ASDM配置防火墙了。
若是配置了inside接口访问,可直接输入防火墙inside的ip地址。     https://192.168.9.1  
若是配置了管理接口访问,首先用交叉线把电脑和防火墙的管理口相连,把电脑设成和管理口段的IP地址,本例中设为192.168.1.0 段的IP打开浏览器在地址栏中输入管理口的IP地址:
https://192.168.1.1
弹出一下安全证书对话框,单击 “是”
输入用户名和密码(就是在串口的WEB×××模式下新建的用户和密码),而后点击“肯定”。
出现也下对话框,点击“Download ASDM Launcher and Start ASDM”开始安装ASDM管理器,安装完之后从网上下载一个JAVA虚拟机软件(使用1.4以上 Java 版本),进入WWW.JAVA.COM下载安装,安装完后点击下面的“Run   ASDM as a Java Applet ”。
出现如下对话框, 点击“是”。

出现如下对话框,输入用户名和密码(就是在串口的WEB×××模式下新建的用户和密码),而后点击“是”。

出现如下对话框,点击“是”。
进入ASDM管理器。
这样就能够经过ASDM来配置防火墙了。
之后就能够直接使用ASDM来管理防火墙了。

必定要注意一点:有时候java的版本太高1.6版以上,会打不开,就试用低版本的(1.4)试一下。  

四、其余管理命令


#write memory     //把配置保存
#clear configure  all   //把run-config中的内容清空
#write erase    //可清除flash闪存中的配置
#dir             //显示flash中的文件
#boot [system|config] <usr>:

     例: #boot system flash:/pix-701.bin     //即从哪一个系统镜像中启动

     flash中能够存多个系统镜像和配置文件。boot能够选择从哪一个系统镜像中启动。

#clock set 21:00 apr 1 2002   //设置时间
#show memery
#show version
#show cpu usage



6、虚拟防火墙

  (一)虚拟防火墙的特性:

    一、咱们能够将一个单一的物理防火墙逻辑上分为多个虚拟防火墙,每一个虚拟防火墙都是独立的设备。
    二、它们有自已独立的安全策略,接口和管理接口
    三、每一个虚拟防火墙保存一个配置文件,以保存每一个虚拟防火墙的策略和配置。
    四、虚拟防火墙不支持***,组播和动态路由协议

(二)虚拟防火墙的种类

    虚拟防火墙分为:admin context和普通虚拟防火墙。

    admin context防火墙特性:

   admin context必须先于其余的虚拟防火墙进行建立和配置。
   用户登陆到admin context虚拟防火墙就拥有了系统管理员的权限,能够访问系统以及其余虚拟防火墙。

(三)流量分类

   因一个物理防火墙分为多个虚拟防火墙,那到底哪些数据流量属于哪一个虚拟防火墙的呢?即如何把数据流量分配给虚拟防火墙。

一、按接口划分:即将一个接口惟一的划分到一个虚拟防火墙中,那么经过这个接口的流量就都属于这个虚拟防火墙的。

二、基于MAC地址划分:一个接口属于多个虚拟防火墙共有。须要为这个共享接口指定多个MAC地址,即每一个虚拟防火墙指定一个mac地址。可手工指定,也可自动产生。
因为ASA的接口有限,因此在多虚拟防火墙的模式下,咱们会常常遇到一个接口同时分配给多个虚拟防火墙。这个时候使用物理接口来对流量进行分类的办法将在这种状况下再也不适用,由于防火墙没法肯定流量究竟应该转发到哪一个虚拟防火墙。咱们须要使用其余的方法来对流量的走向进行区分,一般咱们会使用自动或者手动为这个分配给多个虚拟防火墙的共享接口指定不一样的MAC地址,防火墙将使用MAC地址来区分流量的走向。

 手动指定MAC地址:

     在每一个虚拟防火墙的该共享接口下配置:mac-address HHH.HHH.HH

     例如:

     hostname(config)#Interface F0/0
     hostname(config-if)# mac-address 0001.0001.0001

     自动指定MAC地址:

     在防火墙的SYSTEM平台的全局配置模式下配置:mac-address auto

     例如:

     hostname(config)# mac-address auto

三、基于NAT划分:若是没有为接口指定惟一的MAC地址,防火墙当收到一个经过共享接口的流量时,防火墙只会检查目的IP地址。经过要使用目的IP地址来决定数据包的走向,那么防火墙必须知道目的地址是被定位在哪一个虚拟防火墙上。NAT技术能够提供这样的功能。NAT的转换条目可使防火墙将数据包转发到正确的虚拟防火墙上。

 配置静态NAT转换:

     ? Context A:

     static (inside,shared) 10.10.10.0 10.10.10.0 netmask 255.255.255.0

     ? Context B:

     static (inside,shared) 10.20.10.0 10.20.10.0 netmask 255.255.255.0

     ? Context C:

     static (inside,shared) 10.30.10.0 10.30.10.0 netmask 255.255.255.0

     当咱们使用多防火墙模式,而且共享了接口到多个虚拟防火墙的时候,咱们须要注意将流量转发到正确的虚拟防火墙上去,若是没有指定MAC地址(不论是手动仍是自动)而且也没有配置NAT的话,防火墙将不能找到正确的目的地址而将数据包丢弃。


(四)配置虚拟路由器
一、基本配置
#show mode             //显示当前路由器运行的模式
#mode mltiple          //启用多虚拟防火墙
#admin-context name     //首先建立一个admin-context虚拟防火墙
#context name           //建立其余虚拟防火墙,注意虚拟防火墙名区分大小写

二、为虚拟防火墙分配接口

先设置好虚拟防火墙名,而后在虚拟防火墙配置模式下配置:

#allocate-interface  物理接口名   [别名]  [visible | invisible] //为接口关联一个别名。也能够不关联。
#allocate-interface eth0 int0   visible    //把eth0划分给一个虚拟防火墙,而且关联一个别名叫int0,而且让物理接口ID是可见的。invisible是不可见。
#config-url url   //每一个虚拟防火墙有独立的配置。为虚拟防火墙指定下载配置的地点和名称。
#config-url c1.cfg   //指定配置为c1.cfg  





7、防火墙模式

 防火墙有两种模式:路由器模式和透明模式。路由器模式是经常使用的模式,配置方法如常规方法,这里主要解释透明模式。

 (一) 防火墙的透明模式的特性:

   (1)工做在二层,接口不须要配置IP地址;
   (2)只支持两个接口,inside和outside接口,这两个接口都接内网地址,像交换机的一个端口同样,没有区别。
   (3)不支持nat,QOS,多播,×××,动态路由协议,ipv6,dhcp中继(可做DHCP服务器,但不能作DHCP中继)
   (4)支持多虚拟防火墙。在多虚拟防火墙下,每一个虚拟防火墙都需配一个管理IP地址,但不能把管理IP做为网关。
   (5)工做在二层,但IP等三层流量要经过防火墙,仍须要ACL访问控制明确容许
   (6)arp流量不须要ACL控制就能够经过防火墙。但能够用ARP审查来控制流量。

(二) 透明防火墙的基本配置

    #show firesall    //显示当前防火墙的运行模式
    #firewall transparent  //启用透明防火墙模式
    #no firewall transparent //返回ROUTE模式
    #ip address 192.168.9.1 255.255.255.0    //配置管理IP地址。注意,只是管理IP地址。

注意:在配置透明防火墙的接口时,其余和路由器模式都同样,但不能配置IP地址。

 (三)定制mac表
透明模式的防火墙转发包就是依据MAC地址进行转发,学习MAC地址的方法和交换机同样。默认状况下,每一个接口自动学习经过它的流量的MAC地址。而后将响应的MAC地址加入MAC地址表中。能够关掉这个功能,但必须手工加入静态MAC地址条目到MAC地址表中,不然ASA防火墙将不能转发任何流量。

#mac-learn  int_name disable    //int_name是接口名,即关掉哪一个接口的MAC自动学习。
#mac-address-table aging-time static int_name mac_address    //int_name 指的是接口名, mac_address指的是加入的静态mac地址。
#mac-address-table aging-time timeout_value  //mac地址的超时时间。

(四) arp审查

    arp审查能够防止arp欺骗***,当启用了ARP审查,ASA防火墙会将接收到的ARP包中的mac地址、IP地址和端口号与静态arp表对比。
    若是mac地址、IP地址和端口号与静态arp表这三项彻底相匹配,则转发包
    若是mac地址、IP地址和端口号与静态arp表(这三项中)有任何一条不匹配,则丢弃包
    若是与静态arp表中任何条目没有任何匹配,则可设置将包丢弃仍是将包flood(洪泛出去)

注意:只与静态ARP相比较,若是不定义静态ARP表,那么ARP审查就没有任何意义了。

   一、定义静态ARP

 #arp int_name  ip_address mac_address    //定义静态ARP
 #arp-inspection int_name enable [flood|no-flood]

  #arp outside 10.1.1.11 0009.7cbe.2100    //定义静态arp,把10.1.1.11和mac地址0009.7cbe.2100 相关联
  #arp-inspection outside enable no-flood   //当若是没有任何匹配时,将丢弃包。 no-flood是丢弃,flood选项是洪泛

java

本文出自 “网行天下” 博客,请务必保留此出处http://kuangkuang.blog.51cto.com/838/278598web

相关文章
相关标签/搜索