一、网络结构

1.拓扑

 

当然R1可以省略,把两端ASA外口设置同网段即可,但为了实现效果好点就加上了。

2.实验目的

--通过×××,总部与分部的私有IP地址相互ping通
--总部与分部的数据实现IPSec通信。

3.环境搭建

3.1需要用到的软件有:

Vmware6.5;
SecureCRT;
Named Pipe TCP Proxy ;
//用于代理vmware的串口端口,给本地计算机连接,也就是SecureCRT连接
asa_install_v1.4.iso //asa5520在vmware上的安装镜像。自己到网上下载。
Dynagen     //用于路由器和交换机的模拟器,本文用于桥接两端ASA.

3.2 重点图要

虚拟机ASA5520安装与网卡桥接




安装过程我就略了,放入镜像光盘,启动虚拟机,出现界面,一直按回车就ok了。注意的是一定要IDE的虚拟硬盘,256M的内存。


这里的\\.pipe\asa要以虚拟机VMware里的一致,端口是用来给SecureCRT登陆的。

如图,连上后就可以看见asa启动起来的界面了。





路由器R1(Dynagen不懂的,网上查资料):

4.基本配置

4.1--R1上:

conf t
hostname R1
no ip domain-lookup
ip classless
ip subnet-zero

int e0/0
ip add 2.2.2.1 255.255.255.240
no sh
int e0/1
ip add 1.1.1.1 255.255.255.240
no sh
end

show ip int brief

4.2--总部ASA1:

conf t
hostname asa
enable password test  
passwd test123          

int e0/0
nameif inside
security-level 100
ip add 192.168.1.1 255.255.255.0
no sh

int e0/1
nameif dmz
security-level 50
ip add 10.0.0.1 255.255.255.0
no sh

int e0/2
nameif outside
security-level 0
ip add 1.1.1.2 255.255.255.240
no sh
end
//以上为在接口上设定安全级别,接口类型,并配置ip地址。

conf t
http server enable 443
http 0 0 inside
http 0 0 outside
username test password 123456 privilege 15
//启用Cisco的ASDM管理器,设定用户和密码

conf t
crypto key generate rsa modulus 1024   
aaa authentication ssh console LOCAL
username ssh_user passowrd 123456    
ssh 192.168.1.0 255.255.255.0 inside
ssh 0 0 outside
ssh timeout 30
ssh version 2
exit
//启用ssh

conf t
access-list icmp extended permit icmp any any
access-group icmp in interface outside
access-group icmp in interface dmz
access-group icmp in interface inside
end

conf t
access-list ip extended permit ip any any
access-group ip in interface outside
access-group ip in interface dmz
access-group ip in interface inside
end
//以上两部分为,创建访问列表,定义允许的数据流

conf t
nat-control
nat (inside) 1 192.168.1.0 255.255.255.0  
nat (dmz) 1 0 0
global (outside) 1 interface
global (dmz) 1 interface
end
//以上为启用nat转换

conf t
route outside 0.0.0.0 0.0.0.0 1.1.1.1   //默认静态路由

4.3---分部ASA2:

conf t
hostname asa2
enable password test  
passwd test123          

int e0/0
nameif inside
security-level 100
ip add 192.168.2.1 255.255.255.0
no sh

int e0/1
nameif outside
security-level 0
ip add 2.2.2.2 255.255.255.240
no sh
end

conf t
http server enable 443
http 0 0 inside
http 0 0 outside
username test password 123456 privilege 15

conf t
access-list icmp extended permit icmp any any
access-group icmp in interface outside
access-group icmp in interface inside
end

conf t
access-list ip extended permit ip any any
access-group ip in interface outside
access-group ip in interface inside
end
conf t
nat-control
nat (inside) 1 192.168.2.0 255.255.255.0
global (outside) 1 interface
end

conf t
route outside 0 0 2.2.2.1


4.4—测试它们之间的连通

R1:路由器上接口都启动起来了

总部ASA,到R1和分部ASA2都是通的


如果没有ping通,请查看配置是否正确,还有Vmware和R1与电脑上的虚拟网卡桥接是否正常,桥接的ip配置是否正确(桥接的Ip最好在同一网段),如:


此时,因为还未配置×××,两边私有网络之间是不通的。


4.5—测试ASDM(本文未用到)









5. IPSec ×××配置

5.1--原理:

IPSec的实现主要由两个阶段来完成:
--第一阶段,双方协商安全连接,建立一个已通过身份鉴别和安全保护的通道。
--第二阶段,安全协议用于保护数据的和信息的交换。

其过程涉及到 数据加密(DES、3DES),校验算法(SHA、MD5),公钥密码协议(DH),Internet 密钥交换(IASKMP、IKE)..等等。

IPSec有两个安全协议:AH和ESP
AH主要用来对数据进行完整性校验和身份认证,ESP则提供机密性,数据完整性等安全服务。
无论是AH还是ESP都有涉及到了加密算法和验证算法,它们都由SA指定。

而它们的密钥有很多,这样就需要密钥管理机制ISAMKP (Internet密钥交换协议)

5.2--ASA:

--------------------------------------------------------------------这是第一阶段-------------------------------------------------------------------------------------
conf t
crypto isakmp policy 10      //启用并创建一个ISAKMP策略,并指定优先级为10
encryption 3des        //指定对称加密算法,有3des、des、ase等
hash sha            //指定信息摘要算法,校验算法有sha、md5等
authentication pre-share    //pre-share为预共享密钥, 一般指定这个,当然还有rsa-sig、rsa-encr
group 2              //指定DH分组编号,1为768位,2为1024位
lifetime 5000      //指定SA生存期
end

conf t
isakmp key test-*** address 2.2.2.2    //ISAKMP中标识对方的ip,并指定test-***为密码

----------------------------------------------------------以下是第二阶段,并应用到接口上-----------------------------------------------------------------------

crypto ipsec transform-set mytrans01 esp-3des esp-sha-hmac   
//创建变换集mystrans01,可以多个。esp-3des为对称加密算法,esp-sha-hmac为ipsec体系中esp协议的sha校验
//交换集主要是是用来定义数据加密和完整性校验用的算法。

crypto ipsec transform-set mytrans01 esp-des esp-md5-hmac
// esp-des为对称加密算法,esp-md5-hmac为ipsec体系中esp协议的md5校验
-------
access-list ipsec-data permit ip 10.0.0.0 255.255.255.0 192.168.2.0 255.255.255.0
access-list ipsec-data permit ip 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0
nat (dmz) 0 access-list ipsec-data
nat (inside) 0 access-list ipsec-data
//以上为定义感兴趣的数据流,并且不要在inside、DMZ接口上做nat转换.

crypto map mymap 10 ipsec-isakmp      //创建加密图,名称为mymap,序列号为10 ,10和上面的policy 10没联系。
crypto map mymap 10 match address ipsec-data        //匹配感兴趣的数据流,也是前面定义的ipsec-data
crypto map mymap 10 set peer 2.2.2.2           //指定对方的ip
crypto map mymap 10 set transform-set mytrans01           //指定的交换集为前面创建的mytrans01
crypto map mymap 10 set pfs group2        //向前密钥保护功能(可以不指定)
crypto map mymap interface outside         //加密图应用到接口outside上
crypto isakmp enable outside               //在outside上启用ISAKMP
end
//以上部分可以这样理解,加密图把各个独立的部分联系起来。ISAKMP为Internet密钥管理协议,
//它是为了对IPSec密钥的管理,并在接收双方在算法和密钥上达成共识。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

5.3--ASA2:

conf t
crypto isakmp policy 10
encryption 3des
hash sha
authentication pre-share
group 2
lifetime 5000
end

conf t
isakmp key test-*** address 1.1.1.2
crypto ipsec transform-set mytrans01 esp-3des esp-sha-hmac
crypto ipsec transform-set mytrans01 esp-des esp-md5-hmac

access-list ipsec-data permit ip 192.168.2.0 255.255.255.0 10.0.0.0 255.255.255.0
access-list ipsec-data permit ip 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0
nat (inside) 0 access-list ipsec-data

crypto map mymap 10 ipsec-isakmp
crypto map mymap 10 match address ipsec-data
crypto map mymap 10 set peer 1.1.1.2
crypto map mymap 10 set transform-set mytrans01
crypto map mymap 10 set pfs group2
crypto map mymap interface outside
crypto isakmp enable outside
end
//以上加配置要和ASA1一致,除主机名和IP外

6.结果:

分部客户机pc2上:




总部客户机pc1上:

总部web服务器上:



总部ASA上: