上一页      目录      索引      文档主页      下一页     
iPlanet Directory Server 5.1 管理员指南



第 11 章   管理 SSL


为了提供网络上的安全通讯,iPlanet Directory Server 中提供了 LDAPS 通讯协议。LDAPS 是标准 LDAP 协议,但它在安全套接层 (SSL) 的最上层运行。

本章以下部分介绍如何将 SSL 用于 iPlanet Directory Server:



iPlanet Directory Server 中 SSL 简介

使用 SSL,您可在 LDAP 客户端和 iPlanet Directory Server 之间,或通过复制协议绑定的 iPlanet Directory Server 相互之间,或数据库链接和远程数据库之间提供安全通讯。SSL 可与简单验证(绑定 DN 和口令)配合使用,或与基于证书的验证配合使用。

将 SSL 和简单验证配合使用可确保私密性和数据完整性。使用证书而非绑定 DN 和口令进行 iPlanet Directory Server 验证的优势包括:

  • 提高效率

    如果所用的应用程序提示您输入自己的证书数据库口令,并随即将该证书用于所有后续绑定和验证操作,则相对于不断提供绑定 DN 和口令而言效率会更高。

  • 提高安全性

    使用基于证书的验证比执行无证书绑定操作更安全。这是因为基于证书的验证使用公开密钥密码术。因此将不能跨网络截取绑定凭证。

iPlanet Directory Server 能同时进行 SSL 和非 SSL 通讯。这意味着您不必为iPlanet Directory Server 在 SSL 和非 SSL 通讯之间作出选择;您可同时使用这两种通讯。



注意 如果运行的是 iPlanet Directory Server(UNIX 平台),则启用 SSL 也将同时支持 StartTLS 扩展操作。StartTLS 扩展操作可提供正常 LDAP 连接上的安全性。




启用 SSL:步骤摘要

要使用 LDAPS,则必须执行以下操作:

  1. 获取并安装 iPlanet Directory Server 证书,然后将 iPlanet Directory Server 配置为信任证书授权机构的证书。

    有关信息,请参阅“获取和安装服务器证书”

  2. 在目录中打开 SSL。

    有关信息,请参阅“激活 SSL”

  3. 配置管理服务器以连接到启用 SSL 的 iPlanet Directory Server。

    有关信息,请参阅通过 iPlanet Console 管理服务器

  4. 对于要进行 SSL 验证的所有客户机而言,也可确保 iPlanet Directory Server 的每位用户都获取并安装该客户机的个人证书。

    有关信息,请参阅“配置 LDAP 客户机以使用 SSL”

有关 SSL、Internet 安全和证书的完整说明,请参阅通过 iPlanet Console 管理服务器



获取和安装服务器证书



本部分介绍以下过程:创建证书数据库、获取并安装 iPlanet Directory Server 所用的证书,以及将 iPlanet Directory Server 配置为信任证书授权机构 (CA) 的证书。

该过程是您在目录中打开 SSL 以前必须执行的第一步。如果已完成这些任务,请参阅“激活 SSL”

获取并安装证书包括以下步骤:

您需要使用“证书请求向导”生成证书请求(步骤 1),然后将该请求发送到证书授权机构(步骤 2)。之后,请使用“证书安装向导”来安装证书(步骤 3),同时信任证书授权机构的证书(步骤 4)。

这些向导将自动执行创建证书数据库和安装密钥对的过程。


步骤 1:生成证书请求

要生成证书请求并将该请求发送到 CA:

  1. 在 iPlanet Directory Server Console 上,选择“任务”选项卡,然后单击“管理证书”。

    此时出现“管理证书”窗口。

  2. 选择“服务器证书”选项卡,然后单击“请求”按钮。

    此时出现“证书请求向导”。

  3. 单击“下一步”。

  4. 在空白文本字段中输入“请求方信息”,然后单击“下一步”。

    输入以下信息:

    服务器名。输入 iPlanet Directory Server 在 DNS 查找中所用的全限定主机名(例如: dir.siroe.com)。

    组织。输入公司或机构的法律名称。大多数 CA 会要求用营业执照副本等法律文件来证实该信息。

    组织单元。(可选)。为公司内的组织输入具有说明性的名称。

    地区。(可选)。输入公司所在城市的名称。

    州或省。输入公司所在州或省的全称(不要缩写)。

    国家。为国家名称选择两个字符的缩写(ISO 格式)。美国的国家代码为 US。在 iPlanet Directory Server 模式参考指南 中包含 ISO 国家代码的完整列表。

  5. 输入要用于保护专用密钥的口令,然后单击“下一步”。

    提供口令之前,“下一步”字段将一直变灰。单击“下一步”,出现“请求提交”对话框。

  6. 选择“复制到剪贴板”或“保存到文件”,从而保存必须发送到证书授权机构的证书请求信息。

  7. 单击“完成”以关闭“证书请求向导”。

生成请求后,即可将该请求发送给 CA。


步骤 2:发送证书请求

执行下列步骤可将证书信息发送给 CA:

  1. 使用电子邮件程序创建新的电子邮件。

  2. 将证书请求信息从剪贴板或保存的文件中复制到邮件正文内。

    其内容类似于下例:

    -----BEGIN NEW CERTIFICATE REQUEST-----
    MIIBrjCCARcCAQAwbjELMAkGA1UEBhMCVXMxEzARBgNVBAgTCkNBTElGT1JOSUExLD
    AqBgVBAoTI25ldHNjYXBlIGNvbW11bmljYXRpb25zIGNvcnBvcmF0aW9uMRwwGgYDV
    QQDExNtZWxsb24ubmV0c2NhcGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQK
    BgQCwAbskGh6SKYOgHy+UCSLnm3ok3X3u83Us7ug0EfgSLR0f+K41eNqqWRftGR83e
    mqPLDOf0ZLTLjVGJaH4Jn4l1gG+JDf/n/zMyahxtV7+mT8GOFFigFfuxJaxMjr2j7I
    vELlxQ4IfZgWwqCm4qQecv3G+N9YdbjveMVXW0v4XwIDAQABoAAwDQYJKoZIhvcNAQ
    EEBQADgYEAZyZAm8UmP9PQYwNy4Pmypk79t2nvzKbwKVb97G+MT/gw1pLRsI1uBoKi
    nMfLgKp1Q38K5Py2VGW1E47K7/rhm3yVQrIiwV+Z8Lcc=
    -----END NEW CERTIFICATE REQUEST-----

  3. 向 CA 发送电子邮件。

通过电子邮件发出请求后,必须等待 CA 对证书做出响应。请求的响应时间会各有不同。例如,如果 CA 在您公司内部,则可能只需一两天时间便会对请求做出响应。如果所选的 CA 在公司外部,则可能需要数周才会对请求做出响应。

当 CA 做出响应时,请务必将信息保存到文本文件中。安装证书时将需要该数据。

同时,应将证书数据备份到安全的地方。如果系统一旦丢失证书数据,则可使用备份文件来重新安装证书。

收到证书后,即可在服务器的证书数据库中安装该证书。


步骤 3:安装证书

要安装服务器证书:

  1. 在 iPlanet Directory Server Console 上,选择“任务”选项卡,然后单击“管理证书”。

    此时出现“管理证书”窗口。

  2. 选择“服务器证书”选项卡,然后单击“安装”。

    此时出现“证书安装向导”。

  3. 选择以下证书位置选项之一,然后单击“下一步”。

    本文件中。在该字段中输入证书的绝对路径。

    在下列编码文本块中。将文本从 CA 电子邮件或所创建的文本文件复制并粘贴到该字段中。例如:

    -----BEGIN CERTIFICATE-----
    MIICMjCCAZugAwIBAgICCEEwDQYJKoZIhvcNAQEFBQAwfDELMAkGA1UEBhMCVVMx
    IzAhBgNVBAoTGlBhbG9va2FWaWxsZSBXaWRnZXRzLCBJbmMuMR0wGwYDVQQLExRX
    aWRnZXQgTWFrZXJzICdSJyBVczEpMCcGA1UEAxMgVGVzdCBUZXN0IFRlc3QgVGVz
    dCBUZXN0IFRlc3QgQ0EwHhcNOTgwMzEyMDIzMzU3WhcNOTgwMzI2MDIzMzU3WjBP
    MQswCQYDVQQGEwJVUzEoMCYGA1UEChMfTmV0c2NhcGUgRGlyZWN0b3J5IFB1Ymxp
    Y2F0aW9uczEWMBQGA1UEAxMNZHVgh49dq2itLmNvbTBaMA0GCSqGSIb3DQEBAQUA
    A0kAMEYCQQCksMR/aLGdfp4m0OiGcgijG5KgOsyRNvwGYW7kfW+8mmijDtZRjYNj
    jcgpF3VnlsbxbclX9LVjjNLC57u37XZdAgEDozYwNDARBglghkgBhvhCAQEEBAMC
    APAwHwYDVR0jBBgwFoAU67URjwCaGqZuUpSpdLxlzweJKiMwDQYJKoZIhvcNAQEF
    BQADgYEAJ+BVem3vBOP/BveNdLGfjlb9hucgmaMcQa98A/db8qimKT/ue9UGOJqL
    bwbMKBBopsD56p2yV3PLJIsBgrcuSoBCuFFnxBnqSiTS/7YiYgCWqWaUAExJFmD66hBLseqkSWulk+hXHN7L/NrViO+7zNtKcaZLlFPf7d7j2MgX4Bo=
    -----END CERTIFICATE-----

  4. 检查显示的证书信息是否正确,然后单击“下一步”。

  5. 指定证书的名称,然后单击“下一步”。

  6. 提供用于保护私用密钥的口令以核查证书。

    该口令与“步骤 1:生成证书请求”中所提供的口令相同。

安装完证书后,需要将服务器配置为信任颁发服务器证书的证书授权机构。


步骤 4:信任证书授权机构

将 iPlanet Directory Server 配置为信任证书授权机构的过程由两部分组成:获取 CA 证书;将证书安装到服务器的证书数据库中。该过程因使用的证书授权机构而异。某些商业性 CA 提供网站,供自动下载证书。其它 CA 则会在收到请求后以电子邮件的方式将证书发送出去。

获得 CA 证书后,即可使用“证书安装向导”将 iPlanet Directory Server 配置为信任证书授权机构。

  1. 在 iPlanet Directory Server Console 上,选择“任务”选项卡,然后单击“管理证书”。

    此时出现“管理证书”窗口。

  2. 转到“CA 证书”选项卡,然后单击“安装”。

    此时出现“证书安装向导”。

  3. 如果已将 CA 证书保存到文件中,则在所提供的字段中输入路径。如果是通过电子邮件收到的 CA,则将证书连同标题一起复制并粘贴到所提供的文本字段中。单击“下一步”。

  4. 检查显示的证书信息是否正确,然后单击“下一步”。

  5. 指定证书的名称,然后单击“下一步”。

  6. 选择信任该证书授权机构的目的(可两个全选):

    接受来自客户机的连接(客户机验证)。服务器将检查信任的证书授权机构是否已向客户机颁发证书。

    接受到其它服务器的连接(服务器验证)。该服务器将检查信任的证书授权机构是否已向正在连接的目录(例如:用于复制更新)颁发证书。

  7. 单击“完成”以关闭向导。

安装完证书并信任 CA 证书后,即可激活 SSL。但是,首先应确保已正确安装证书。


步骤 5:确认已安装新的证书

  1. 在 iPlanet Directory Server Console 上,选择“任务”选项卡,然后单击“管理证书”。

    此时出现“管理证书”窗口。

  2. 选择“服务器证书”选项卡。

    此时将显示服务器上所有已安装证书的列表。

  3. 滚动列表。找到自己安装的证书。

    现在,服务器上已可以激活 SSL。



激活 SSL

大多数情况下,您会希望服务器在运行时启用 SSL。如果临时禁用 SSL,则在处理需要保密、验证或数据完整性的事务以前,务必重新启用 SSL。

激活 SSL 之前,必须如“获取和安装服务器证书”中所述创建证书数据库,获取并安装服务器证书并信任 CA 证书。

要激活 SSL 通信:

  1. 设置希望服务器用于 SSL 通信的安全端口。请参见第 36 页上的“更改 Directory Server 端口号”

    指定的加密端口号不得与常规 LDAP 通信所用的端口号相同。默认情况下,标准端口号为 389,而安全端口号为 636。

  2. 在 iPlanet Directory Server Console 上,选择“配置”选项卡,然后选择左侧窗口导航树中最上面的条目。

  3. 在右侧窗口中,选择“加密”选项卡。

    选项卡上将显示当前服务器的加密设置。

  4. 选中“启用该服务器的 SSL”复选框,即指示想启用加密功能。

  5. 选中“使用该加密系列”复选框。

  6. 从下拉菜单中选择所要使用的证书。

  7. 单击“加密设置”。

    此时出现“加密首选项”对话框。

  8. 选中所要使用的密码旁边的复选框,然后单击“确定”以关闭“加密首选项”对话框。

    有关特定密码的详细信息,请参阅“设置安全性首选项”

  9. 设置客户机验证的首选项。

    不允许客户机验证。选中该选项时,服务器将忽略客户机的证书。这并不意味着绑定失败。

    允许客户机验证。此为默认设置。选中该选项时,将在客户机发出请求时执行验证。有关基于证书的验证的详细信息,请参阅“使用基于证书的验证”

    要求客户机验证。选中该选项时,服务器将请求进行客户机验证。



    注意 如果是将基于证书的验证与复制一起使用,则必须将客户服务器配置为允许或要求进行客户机验证。



  10. 如果在与 iPlanet Directory Server 通讯时希望 iPlanet Console 使用 SSL,则在 iPlanet Console 中选择“使用 SSL”。

  11. 单击“保存”。

  12. 重新启动 iPlanet Directory Server。

    有关详细信息,请参见第 39 页上的“在启用 SSL 的情况下启动服务器”



设置安全性首选项

选择要用于 SSL 通讯的密码类型。密码是一种加密算法。有的密码比其它密码更安全或功能更强大。一般而言,密码在加密时使用的位数越多,就越难进行密钥解密。有关算法及其功能强大性的完整说明,请参阅通过 iPlanet Console 管理服务器

当客户机启动与服务器的 SSL 连接时,客户机会告诉服务器它优先选用什么密码对信息加密。在双向加密过程中,双方必须使用相同的密码。可用的密码有许多。服务器需要能使用客户机应用程序连接服务器时所用的密码。

iPlanet Directory Server 提供下列 SSL 3.0 密码:

  • 带 40 位加密和 MD5 消息验证的 RC4 密码。

  • 带 40 位加密和 MD5 消息验证的 RC2 密码。

  • 不加密,只进行 MD5 消息验证。

  • 带 56 位加密和 SHA 消息验证的 DES。

  • 带 128 位加密和 MD5 消息验证的 RC4 密码。

  • 带 168 位加密和 SHA 消息验证的三元 DES。

  • 带 56 位加密和 SHA 消息验证的 FIPS DES。该密码符合 FIPS 140-1 美国政府就加密模块的实施标准。

  • 带 168 位加密和 SHA 消息验证的 FIPS 三元 DES。该密码符合 FIPS 140-1 美国政府就加密模块实施制订的标准。

要选择服务器所用的密码:

  1. 确保服务器已启用 SSL。

    有关信息,请参阅“激活 SSL”

  2. 在 iPlanet Directory Server Console 上,选择“配置”选项卡,然后选择左侧窗口导航树中最上面的条目。

  3. 在右侧窗口中,选择“加密”选项卡。

    此时出现当前服务器的加密设置。

  4. 单击“加密设置”。

    此时出现“加密首选项”对话框。

  5. 在“加密首选项”对话框中,通过从列表中选择密码来指定服务器所要使用的密码,然后单击“确定”。

    除非因安全原因而未使用特定的密码,否则应选择所有密码,但 none,MD5 除外。

  6. 在“加密”选项卡上,单击“保存”。



    警告

    请勿选择 none,MD5 密码。这是因为如果客户机上无其它密码可用,则服务器将使用该选项。在这种情况下,由于没有使用加密,因此连接不安全。



为继续使用带 SSL 的 iPlanet Console,必须至少选择下列密码之一:

  • 带 40 位加密和 MD5 消息验证的 RC4 密码。

  • 不加密,只进行 MD5 消息验证。

  • 带 56 位加密和 SHA 消息验证的 DES。

  • 带 128 位加密和 MD5 消息验证的 RC4 密码。

  • 带 168 位加密和 SHA 消息验证的三元 DES。



使用基于证书的验证

iPlanet Directory Server 允许将基于证书的验证与命令行工具(LDAP 客户机)和复制通信配合使用。基于证书的验证可发生在下列对象之间:

  • 连接 iPlanet Directory Server 的 LDAP 客户机

  • 一台连接到另一台 iPlanet Directory Server(复制链接)的 iPlanet Directory Server。


设置基于证书的验证

要设置基于证书的验证,您必须:

  1. 为客户机和服务器创建证书数据库,或者为复制过程所涉及的两台服务器创建证书数据库。

    在 iPlanet Directory Server 上,证书数据库是在安装证书时自动创建的。有关创建客户机证书数据库的信息,请参阅“配置 LDAP 客户机以使用 SSL”

  2. 在客户机和服务器上,或者在复制过程所涉及的两台服务器上获取并安装证书。

  3. 在服务器上,或者在复制过程所涉及的两台服务器上启用 SSL。

    有关启用 SSL 的信息,请参阅“激活 SSL”



    注意 如果 iPlanet Console 通过 SSL 连接到 iPlanet Directory Server,则选择“要求客户机验证”将禁用通讯功能。这是因为虽然 iPlanet Console 支持 SSL,但它没有用于客户机验证的证书。



  4. 将证书的特异名称映射为目录已知的特异名称。

    这样,在使用该证书进行绑定的情况下,可以设置客户机的访问控制。该映射过程的说明见通过 iPlanet Console 管理服务器


允许/请求客户机验证

如果已将 iPlanet Console 配置为使用 SSL 连接 iPlanet Directory Server,且 iPlanet Directory Server 请求进行客户机验证,则不能再使用 iPlanet Console 来管理任何 iPlanet 服务器。 相反,此时必须使用相应的命令行实用程序。

但是,如果以后想将目录配置更改为不再要求而是允许进行客户机验证,从而可以使用 iPlanet Console,则必须执行以下步骤:

  1. 停止 iPlanet Directory Server。

    有关从命令行停止和启动服务器的信息,请参阅第 35 页上的“从命令行启动/停止服务器”

  2. nsSSLClientAuth 属性的值从 required 更改为 allowed,从而对 cn=encryption, cn=config 条目进行修改。

    有关从命令行修改条目的信息,请参阅第 2 章“创建目录项”

  3. 启动 iPlanet Directory Server。

    现在即可启动 iPlanet Console。



配置 LDAP 客户机以使用 SSL

如果希望 iPlanet Directory Server 的所有用户在利用 LDAP 客户机应用程序进行连接时都使用 SSL 或基于证书的验证,则确保他们执行以下任务:

  • 创建证书数据库。

  • 信任发放服务器证书的证书授权机构 (CA)。

如果想确保 LDAP 客户机能识别服务器的证书,则执行这些操作已足够。但是,如果还想让 LDAP 客户机使用自己的证书进行目录验证,则应确保所有目录用户都已获取并安装了个人证书。



注意 有些客户机应用程序不会验证服务器是否有信任的证书。



以下过程说明如何使用 Netscape Communicator 4.7 来执行该任务。

  1. 要创建证书,则启动 Netscape Communicator 4.7 即可。

    如果尚未存在,则将创建证书数据库。

  2. 使用 Communicator 连接到证书授权机构。

    如果是使用内部部署的 iPlanet 证书服务器,则将转到以下 URL:

    https://hostname:444

    某些证书授权机构所提供的链接允许下载 CA 证书。

  3. 信任证书授权机构。

    该任务因 CA 而异。某些情况下(例如连接 iPlanet 证书服务器时),Communicator 将自动提示您确定是否信任 CA。

这些步骤足以确保客户机应用程序接受与 iPlanet Directory Server 的连接,因为客户机可识别出 iPlanet Directory Server 证书系由信任的 CA 发放。

但是,如果还希望 iPlanet Directory Server 使用客户机证书来验证客户机,则必须执行以下附加步骤:

  1. 在客户机系统上,从 CA 获取客户机证书。

  2. 在客户机系统上,安装客户机证书。

    不管采用哪种方式接收证书(电子邮件或 web 页),都应有供单击后用于安装证书的链接。单击该链接并按照 Communicator 所示的各种对话框进行操作。

    确保已将通过文件发送来的证书信息记录下来。特别是必须知道证书的主题 DN,因为您必须配置服务器以便将其映射到目录项。客户机证书将类似于:

    -----BEGIN CERTIFICATE-----
    MIICMjCCAZugAwIBAgICCEEwDQYJKoZIhvcNAQEFBQAwfDELMAkGA1UEBhMCVVMx
    IzAhBgNVBAoTGlBhbG9va2FWaWxsZSBXaWRnZXRzLCBJbmMuMR0wGwYDVQQLExRX
    aWRnZXQgTWFrZXJzICdSJyBVczEpMCcGA1UEAxMgVGVzdCBUZXN0IFRlc3QgVGVz
    dCBUZXN0IFRlc3QgQ0EwHhcNOTgwMzEyMDIzMzU3WhcNOTgwMzI2MDIzMzU3WjBP
    MQswCQYDVQQGEwJVUzEoMCYGA1UEChMfTmV0c2NhcGUgRGlyZWN0b3J5IFB1Ymxp
    Y2F0aW9uczEWMBQGA1UEAxMNZHVgh49dq2itLmNvbTBaMA0GCSqGSIb3DQEBAQUA
    A0kAMEYCQQCksMR/aLGdfp4m0OiGcgijG5KgOsyRNvwGYW7kfW+8mmijDtZRjYNj
    jcgpF3VnlsbxbclX9LVjjNLC57u37XZdAgEDozYwNDARBglghkgBhvhCAQEEBAMC
    APAwHwYDVR0jBBgwFoAU67URjwCaGqZuUpSpdLxlzweJKiMwDQYJKoZIhvcNAQEF
    BQADgYEAJ+BVem3vBOP/BveNdLGfjlb9hucgmaMcQa98A/db8qimKT/ue9UGOJqL
    bwbMKBBopsD56p2yV3PLJIsBgrcuSoBCuFFnxBnqSiTS/7YiYgCWqWaUAExJFmD66hBLseqkSWulk+hXHN7L/NrViO+7zNtKcaZLlFPf7d7j2MgX4Bo=
    -----END CERTIFICATE-----

  3. 必须使用 certutil 实用程序将客户机证书转换为二进制格式。为此:

    1. http://www.iplanet.com 下载 certutil 实用程序。

      在 iPlanet 主页上,搜索 certutil。下载最新的 PKCS 软件包。它将包含 certutil 实用程序。

    2. 按如下方式运行 certutil

      certutil -L -d cert7.db_path -n user_cert_name -r > user_cert.bin

      其中 cert7.db_path 指证书数据库的位置, user_cert_name 是安装证书数据库时赋予证书的名称,而 user_cert.bin 则指必须为包含二进制证书的输出文件指定的名称。

  4. 在服务器上,通过编辑 certmap.conf 文件,将所获取证书的主题 DN 映射为相应的目录项。

    有关该过程的说明,请参阅通过 iPlanet Console 管理服务器 确保 certmap.conf 文件中的 verifyCert 参数设置为 on



    注意 注意:如果该参数未设置为 on, 则 iPlanet Directory Server 将只搜索目录中与 certmap.conf 文件中的信息相匹配的条目。如果搜索成功,它将不实际检查 userCertificate 属性的值即授予访问权。



  5. 在 iPlanet Directory Server 上,必须对那些拥有客户机证书的用户的目录项进行修改,以便添加 userCertificate 属性。

    1. 选择“目录”选项卡,然后导航到用户条目。

    2. 双击用户条目,然后使用属性编辑器按二进制子类型来添加 userCertificate 属性。

      添加该属性时,服务器将提供“设置值”按钮,而非可编辑的字段。

    3. 单击“设置值”。

      此时显示文件选择器。使用该选择器可以选择步骤 6 中所创建的二进制文件。

    有关使用 iPlanet Directory Server Console 编辑条目的信息,请参阅第 45 页上的“修改目录条目”


上一页      目录      索引      文档主页      下一页     
版权所有 © 2001 Sun Microsystems, Inc.。部分版权所有 © 2001 Netscape Communications Corp.。保留所有权利。

最近更新时间 2002 年 2 月 15 日