码迷,mamicode.com
首页 > 其他好文 > 详细

ASA的远程拨号×××方式

时间:2019-06-18 00:29:29      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:point   rust   协议   关联   服务器   terminal   disk   拓扑   lis   

主要是针对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里面我们需要修改两个配置

  1. 本地账号
  2. 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的远程拨号×××方式

标签:point   rust   协议   关联   服务器   terminal   disk   拓扑   lis   

原文地址:https://blog.51cto.com/9272543/2410164

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!