ASA的远程拨号×××方式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASA的远程拨号×××方式相关的知识,希望对你有一定的参考价值。
主要是针对Anyconnect的SSL和IKEv2,但是我看到貌似考试传统的三种SSL-×××仍然要考,也会写。今天调了一天的证书,似乎没办法让证书有效。。。
顺便,补充一篇关于ios CA操作的文档,有非常好的例子。
https://community.cisco.com/t5/security-documents/ios-ca-basic-deployment-certificate-enrollment-and-signing/ta-p/3120844
crypto ca authenticate CA
//这条命令就是认证根此trustpoint对应的CA服务器,并且获取此服务器的public key
cyrpto ca enroll CA
//认证CA Server之后需要从此服务器上申请对应的证书
与之前的例子不同的是,这篇文档都是使用 terminal 关键字,即base64的方式获取或者申请证书。
CA端配置
CA通过terminal导出base64形式的证书
crypto pki export CA pem terminal
首先说下ASA的策略拓扑,这是取自教主的总结。
之前8.4一共有3中×××,L2L,EZ,SSL。它们的共同点都是有或是配置,或是内置的tunnel-group和group-policy。
其中tunnel-group定义了我们如何终结一个×××,和这个×××使用什么认证方式,而认证策略,即authentication policy,和ISE一样,是让ASA配置他的外部拨号用户的数据来源(local, LDAP, ISE?)。而group-policy,顾名思义是组策略,可以狭义的理解为一个用户组使用何种策略(地址池,是否使用split tunnel,host scan等等)。
第一部分:SSL-×××
先上一个基本配置
web***
enable outside
anyconnect enable
anyconnect image disk0:......pkg
ip local pool Anyconnect-Pool 172.16.133.2-172.16.133.100
//定义anyconnect使用的地址池
group-policy Anyconnect-GP internal
//定义这是个内部组,组的属性由ASA自己配置
group-policy Anyconnect-GP attributes
//组的属性,地址池,使用ssl-client,也可以配置例如split-tunnel, ACL等
***-tunnel-protocol ssl-client
address-pool value Anyconnect-Pool
username SSLuser password cisco123
username SSLuser attributes
***-group-policy Anyconnect-GP //这里看到用户是和group-policy绑定的
service-type remote-access
拨号成功之后的验证命令
我其实申请了证书,但似乎没啥用。。。我很肯定win7 client端已经信任了根证书。查了很多文档,可能anyconnect现在对于证书的某些位要求很严格?
https://community.cisco.com/t5/***-and-anyconnect/need-help-with-untrusted-***-server-certificate-warning/td-p/2111280
直接先配了ikev2部分吧。
group-policy Anyconnect-GP attributes
***-tunnel-group protocol ikev2 ssl-client
cyrpto ikev2 policy 10
encryption aes
integrity sha
group 2
crypto ipsec ikev2 ipsec-proposal Anyconnect-IKEv2-Proposal
protocol esp encryption 3des
protocol esp integraity sha-1
crypto dynamic-map Anyconnect-DMap 1000 set ikev2 ipsec-proposal Anyconnect-IKEv2-Proposal
crypto map Anyconnect-IKEv2-Map 1000 ipsec-isakmp dynamic Anyconnect-DMap
crypto map Anyconnect-IKEv2-Map interface outside
crypto ikev2 enable outside client-service port 443
crypto ikev2 remote-access trustpoint CA
接着修改client profile,我不清楚是不是ASDM的bug,还是ASAv没有授权流量太小。总之client profile死活刷不出来。但是总算是推到客户端了。其中修改了部分配置如下,尤其要注意grou-policy web下的那个anyconnect profile,是和web下的anyconnect profile做关联的。
测试成功
banner
接下来改用ISE进行认证,如何使用ISE连接AD并且拿取user group不过多说明
强调一点,ISE最重要的功能,AAA服务器,
authentication policy是基于认证协议(radius, tacacs+, EAP-FAST, EAT-TLS 等等等)来决定你用哪个identity source,可以是AD的user,可以是local user database,也可以是endpoint store。
authorization policy是基于一些很多灵活的条件,决定你的授权结果。这个结果以radius attribute来实现。
来看我这里配的例子,authentication policy条件就仅局限于radius,使用windows AD
authorization policy,
只要是特等Domain group里的user,就可以获得我配置的authorization profile
其中authorization profile要和ASA本地的group-policy名字匹配。radius attribute: 25 class
测试通过后,看下ASA的一段日志。
由此可见,反复强调一个概念,group-policy,是用户组的属性。当ISE将class=Anyconnect-GP推给ASA后,ASA直接查看自己本地的group-policy。由此,用户组拿到自己这条anyconnect tunnel的属性。
在浏览了Metha的视频之后,有些我跳过了,比如show run all tunnel-group和show run all group-policy你可以查到大部分的属性,这在项目中有特别的需求注意就可以了。
有一篇,比如使用内网的DHCP来给anyconnect分配地址,应用场景虽然不能说没有,但是少。直接参考文档就行:
https://www.cisco.com/c/en/us/support/docs/security/anyconnect-secure-mobility-client/118084-configure-anyconnect-00.html
https://www.petenetlive.com/KB/Article/0001050
http://www.labminutes.com/sec0124_ssl_***_anyconnect_client_address_assignment
External group policy
主要参考labminutes的录像http://www.labminutes.com/sec0125ssl***_anyconnect_client_external_group_policy
先来看ASA端的配置,这也是最简单的:
group-policy EX-Anyconnect-GP external server-group ISE password Cisco123
当anyconnect输入认证密码之后(例如我这里是AD账户),ASA会以group policy作为用户名,Cisco123作为密码再发起一次认证。
所以在ISE里面我们需要修改两个配置
- 本地账号
- authentication policy不仅仅使用AD,也需要使用internal user
internal user账号
进入identity sequence,创建一个list使得AD和internal 账号都可以被使用
在authentication policy修改可以使用的identity
接下来就是授权策略,在配置authorization profile之前,首先需要修改以下dictionary(这个修改我非常不喜欢,要不是Metha大神,我都不知道去查什么文档,所以一般group-policy在项目中遇到的还是使用本地的)
ISE的GUI还算好的,但你看这html,需要添加两个SSL clientless 16,SSL client 32.
配置authorization profile
authorization policy的匹配条件,直接匹配防火墙的类型。。。
接下来看测试结果,PC端
ISE radius log,注意二次认证
ASA日志
SSL clientless ×××
直接参考文档:
https://www.cisco.com/c/en/us/support/docs/security-***/web***-ssl-***/119417-config-asa-00.html
http://www.labminutes.com/sec0118_ssl_***_clientless_bookmark_auto_sign_on
至于像DAP hostscan等特性,9.8的Metha的VOD都需要ISE2.2支持,之后再学。
以上是关于ASA的远程拨号×××方式的主要内容,如果未能解决你的问题,请参考以下文章