在Zimbra Collaboration Suite中设置单一登录

与Active Directory一样,即使使用最严格的密码安全策略,单点登录技术也是确保用户便利性的重要技术之一。 该技术使员工在下一次更改密码后可以一次又一次成功地通过身份验证过程,以自动访问所有公司资源。 如果您使用的是Zimbra协作套件,则可能还需要在其上配置SSO。 下面我们将讨论如何执行此操作。

图片

如果您根据上一篇文章中的说明通过AD在Zimbra中配置了授权,则设置SSO的原理将简化为在Kerberos中创建密钥表文件,以及在AD中创建特殊的帐户票证,在Zimbra服务器上设置SPNEGO并向所有用户颁发使用SSO的证书。 特别要注意的是,创建将在其中进行某些更改的文件的备份副本并将它们存储在单独的文件夹中,这样不可预见的问题不会对您造成大麻烦,这一点非常重要。

首先,我们需要在Zimbra中创建一个票务程序帐户并禁止其更改密码,还需要在Kerberos中为域控制器上的票务帐户创建服务主体名称(SPN)。 可以使用setspn –A mail.domain.com ticketer命令完成此操作,然后您需要使用setspn –L ticketer命令检查结果。 之后,我们使用如下命令在域控制器上创建密钥表文件:

ktpass -out c:\keys\jetty.keytab -princ HTTP/mail.domain.com@domain.local -mapUser ticketer -mapOp set -pass !@#$%& -crypto RC4-HMAC-NT -pType KRB5_NT_PRINCIPAL 

成功创建密钥表文件后,您需要将其移至/ opt / zimbra / data /邮箱/ spnego // opt / zimbra / jetty /文件夹中的Zimbra Collaboration Suite服务器,之后需要更改对其的访问权限:

 chown ticketer:zimbra /opt/zimbra/data/mailboxd/spnego/jetty.keytab chown ticketer:zimbra /opt/zimbra/jetty/jetty.keytab 

图片

现在,让我们开始设置Zimbra Collaboration Suite中内置的SPNEGO实用程序,它将与之前创建的.keytab文件一起使用。 可以使用以下命令配置SPNEGO:

 su zimbrazmprov mcf zimbraSpnegoAuthEnabled TRUE zmprov mcf zimbraSpnegoAuthRealm domain.local zmprov ms mail.domain.com zimbraSpnegoAuthTargetName HTTP/mail.domain.com zmprov ms mail.domain.com zimbraSpnegoAuthPrincipal HTTP/mail.domain.com zmprov md domain.com zimbraAuthKerberos5Realm domain.local zmprov md domain.com zimbraWebClientLoginURL '/service/spnego' zmprov md domain.com zimbraWebClientLogoutURL '../?sso=1' 

下一步将把设置文件/opt/zimbra/jetty/etc/krb5.ini转换为以下格式:

 [libdefaults] default_realm = domain.local dns_lookup_realm = no dns_lookup_kdc = no kdc_timesync = 1 ticket_lifetime = 24h default_keytab_name = FILE:/opt/zimbra/data/mailboxd/spnego/jetty.keytab default_tgs_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5 default_tkt_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5 permitted_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5 [realms] domain.local = { kdc = dc.domain.local admin_server = dc.domain.local default_domain = domain.local } [appdefaults] autologin = true forwardable=true 

之后,您需要通过在所有字段中将mail.domain.com添加到network.neg并在名称中使用uris来配置用户浏览器。 通过使用组策略可以加快此过程。

最后一点是通过Zimbra Collaboration Suite中的AD更新授权设置:

 su zimbra zmprov md domain.ru +zimbraAutoProvAuthMech SPNEGO +zimbraAutoProvAuthMech KRB5 +zimbraAutoProvAuthMech PREAUTH +zimbraAutoProvAuthMech LDAP zmcontrol restart 

做完了! 现在,您不仅在Zimbra中配置了可以正常运行的Single Sign-On,而且还配置了用户首次登录通过SSO授权的服务器时自动创建的邮箱。

有关Zextras Suite的所有问题,您可以通过电子邮件katerina@zextras.com与Zextras Katerina Triandafilidi的代表联系。

Source: https://habr.com/ru/post/zh-CN438456/


All Articles