Cisco ASA 5585 SSH LDAP 身份验证

网络工程 思科 ssh 啊啊啊 验证
2021-07-07 18:54:46

我正在尝试使用 ASDM 为 Cisco ASA 5585 8.2(5) 版上的特定安全组设置 Microsoft LDAP 身份验证,适用于 SSH查找和身份验证正在工作,但是无论安全组成员身份如何,所有用户都经过身份验证。

AAA 配置:

aaa-server LDAP_mybusinessda (web) host 10.100.21.6
 server-port 636
 ldap-base-dn OU=Staff Users,OU=mybusiness,DC=mybusinessda,DC=org
 ldap-naming-attribute sAMAccountName
 ldap-login-password *****
 ldap-login-dn CN=LDAPLookup,CN=Users,DC=mybusinessda,DC=org
 ldap-over-ssl enable
 ldap-attribute-map LDAP_memberOf_ServiceType
aaa authentication enable console LDAP_mybusinessda LOCAL
aaa authentication ssh console LDAP_mybusinessda LOCAL
ldap attribute-map LDAP_memberOf_ServiceType
  map-name  memberOf IETF-Radius-Service-Type
  map-value memberOf CN=CiscoASAManagement,OU=Security,OU=Groups,OU=mybusiness,DC=mybusinessda,DC=org 6

当我与作为组成员的用户连接时,LDAP 调试显示(仅粘贴相关部分:

[3185] Creating LDAP context with uri=ldaps://10.100.21.6:636
[3185] Connect to LDAP server: ldaps://10.100.21.6:636, status = Successful
[3185] supportedLDAPVersion: value = 3
[3185] supportedLDAPVersion: value = 2
[3185] Binding as LDAPLookup
[3185] Performing Simple authentication for LDAPLookup to 10.100.21.6
[3185] LDAP Search:
        Base DN = [OU=Staff Users,OU=mybusiness,DC=mybusinessda,DC=org]
        Filter  = [sAMAccountName=test_allowed_user]
        Scope   = [ONE LEVEL]
[3185] User DN = [CN=TestAllowedUser,OU=Staff Users,OU=mybusiness,DC=mybusinessda,DC=org]
[3185] Talking to Active Directory server 10.100.21.6
[3185] Binding as test_allowed_user
[3185] Performing Simple authentication for test_allowed_user to 10.100.21.6
[3185] Processing LDAP response for user test_allowed_user
[3185] Message (test_allowed_user):
[3185] Authentication successful for test_allowed_user to 10.100.21.6
[3185] Retrieved User Attributes:
[3185]  memberOf: value = CN=CiscoASAManagement,OU=Security,OU=Groups,OU=mybusiness,DC=mybusinessda,DC=org
[3185]          mapped to IETF-Radius-Service-Type: value = 6

即使我删除了ldap-attribute-mapaaa-server,所有的用户都通过身份认证,并且调试根本不显示mapped to IETF-Radius-Service-Type这里有什么问题?

此外,由于我的代表,我无法标记此 LDAP。不幸的。


编辑:
我最终可能会使用 RADIUS 执行此操作,因为其余的 Cisco 设备都支持 RADIUS 身份验证,并且它将统一我所有的 Cisco 设备。看来这种 LDAP 身份验证方法也可能仅适用于 VPN。

3个回答

编辑:糟糕,我刚刚重新阅读了您的问题,我相信您希望使用“ldap-attribute-map”来限制谁可以通过 SSH 连接到您的 ASA。据我所知,LDAP 属性映射功能仅用于修改 VPN 访问,而不是对 ASA 本身的管理访问。如果您(或其他任何人)觉得有帮助,我会在下面留下我的原始答案)


LDAP 属性映射允许您“覆盖”从该特定 VPN 的隧道组中的“default-group-policy”命令继承的策略。所以本质上,您需要做的是拥有它,以便 default-group-policy 不允许访问,但 group-policy 6允许完全访问(或您想要的任何访问)。

如果没有看到您的其余配置,很难为您提供您需要的确切配置,但这里有一个有效的总结:

tunnel-group TG-SVC-VPN type remote-access
tunnel-group TG-SVC-VPN general-attributes
  authentication-server-group LDAP_mybusinessda
  default-group-policy GP-SVC-NO-ACCESS
tunnel-group TG-SVC-VPN webvpn-attributes
  group-alias Default enable

group-policy GP-SVC-NO-ACCESS internal
group-policy GP-SVC-NO-ACCESS attributes
  vpn-simultaneous-logins 0

group-policy 6 internal
group-policy 6 attributes
  vpn-simultaneous-logins 1
  [vpn-filter ...]
  [ip pool ...]
  [etc]

这将使任何对您的隧道组进行身份验证的人都不允许连接......除非他们匹配您的 LDAP 属性映射,该映射覆盖了从 0 到 1 的“同时登录”设置。

我无法直接完成这项工作。最后,我们使用 AAA、TACACS 和 Cisco ACS 与 Microsoft Active Directory 进行交互。当您提交登录凭据时,ASA 会检查 ACS,然后 ACS 会根据 AD 验证凭据和组成员身份以进行身份​​验证和授权。

我不一定确认我的原始问题不受支持,但这是我们使用 AD 凭据进行 SSH 身份验证的最简单方法。RADIUS 可能会实现相同的结果。

看看我们的配置,似乎要让这个工作真正起作用,你只需要在 map-value 命令中将组的 DN 放在引号中:

ldap attribute-map LDAP_memberOf_ServiceType
  map-name  memberOf IETF-Radius-Service-Type
  map-value memberOf "CN=CiscoASAManagement,OU=Security,OU=Groups,OU=mybusiness,DC=mybusinessda,DC=org" 6

这是用于使我们正确的链接:https : //lessonsintech.wordpress.com/2018/04/20/asa-auth-ad/