Ser*_*gei 7 linux active-directory kerberos authentication
我们在 DMZ 中很少有面向客户的服务器也有用户帐户,所有帐户都在影子密码文件中。我正在尝试整合用户登录并考虑让 LAN 用户针对 Active Directory 进行身份验证。需要身份验证的服务是 Apache、Proftpd 和 ssh。在咨询安全团队后,我设置了具有 LDAPS 代理的身份验证 DMZ,该 DMZ 又与 LAN 中的另一个 LDAPS 代理(proxy2)联系,这个代理通过 LDAP(作为 LDAP 绑定)将身份验证信息传递给 AD 控制器。第二个 LDAP 代理只需要因为 AD 服务器拒绝使用我们的安全 LDAP 实现使用 TLS。这适用于使用适当模块的 Apache。在稍后阶段,我可能会尝试将客户帐户从服务器移动到 LDAP 代理,这样它们就不会分散在服务器周围。
对于 SSH,我将 proxy2 加入了 Windows 域,以便用户可以使用他们的 Windows 凭据登录。然后我创建了 ssh 密钥并使用 ssh-copy 将它们复制到 DMZ 服务器,以便在用户通过身份验证后启用无密码登录。
这是实现这种 SSO 的好方法吗?我是否错过了这里的任何安全问题,或者可能有更好的方法来实现我的目标?
如果您将 PAM 用于身份验证堆栈,则可以使用pam_krb5为您的服务提供kerberos 身份验证。Kerberos 被设计为开箱即用,用于处理敌对环境,通过代理处理身份验证,并且已经是 AD 规范的一部分。当您可以让 Kerberos 为您完成繁重的工作并继续生活时,为什么还要与 LDAP 斗争呢?是的,您必须阅读一些资料,是的,这需要一些时间,但我多年来一直使用 Kerb-to-AD 身份验证,并发现它是获得 SSO 的最简单、最快捷的方法当您将 Active Directory 作为身份验证后端时,开箱即用。
您将遇到的主要问题是 Microsoft 决定对默认加密类型非常具体(他们基本上是自己制作的),因此您需要设置 Kerberos 客户端以获得正确匹配的加密类型,或者AD 服务器将继续拒绝它。值得庆幸的是,这是一个简单的过程,不需要对 krb5.conf 进行多次编辑。
现在,一些链接供您考虑...
微软对 Kerberos 的看法
网格化 Kerberos 和 Active Directory
通过 PAM 进行 ssh 和 Kerberos 身份验证
Apache 和 Kerberos
ProFTP 和 Kerberos
Microsoft 与 Kerberos 的活动的 RFC(您真的不想阅读):
| 归档时间: |
|
| 查看次数: |
6197 次 |
| 最近记录: |