Sun Java System Messaging Server 6 2005Q4 管理指南

基本的 S/MIME 配置

S/MIME 的配置文件 smime.conf 包含每个 S/MIME 参数的描述性注释和示例。Messaging Server 附带有 smime.conf 文件,该文件位于目录 msg-svr-base/config/ 中,其中 msg-svr-base 是安装 Messaging Server 的目录。

以下过程包含配置 S/MIME 功能必需的最少步骤:

Procedure配置 S/MIME

步骤
  1. 安装 Messaging Server 之后,验证 Communications Express Mail 的基本功能是否可以正常工作。

  2. 如果尚未执行此操作,请为有权使用 S/MIME 功能的所有邮件用户创建或获取专用-公共密钥对和标准 X.509 v3 格式的证书。

  3. 如果使用智能卡存储密钥和证书,则请执行以下操作:

    1. 将智能卡分发到邮件用户。

    2. 确保已在从中访问 Communications Express Mail 的每台客户机上正确地安装了智能卡读卡设备和软件。

  4. 如果使用浏览器的本地密钥库存储密钥和证书,请指导邮件用户如何将密钥对和证书下载到本地密钥库。

  5. 确保客户机上具有正确的库,以支持智能卡或本地密钥库。请参见客户机的密钥访问库

  6. 设置 LDAP 目录以支持 S/MIME:

    1. 使用证书授权机构的标识名将 CA 的所有证书存储在 Directory Server 可以访问的 LDAP 目录中。这些证书的 LDAP 属性为 cacertificate;binary。请记下存储这些内容的目录信息。在后面的步骤中将用到这些信息。

      有关指定 LDAP 目录信息的示例,请参见表 20–3 中的 trustedurl;有关搜索 LDAP 目录的信息,请参见管理证书

    2. 在 Directory Server 可以访问的 LDAP 目录中存储公共密钥和证书。公共密钥和证书的 LDAP 属性为 usercertificate;binary。请记下存储这些内容的目录信息。在后面的步骤中将用到这些信息。

      有关指定 LDAP 目录信息的示例,请参见表 20–3 中的 certurl;有关搜索 LDAP 目录的信息,请参见管理证书

    3. 确保发送或接收 S/MIME 邮件的所有用户都可以通过其用户条目中的 LDAP 过滤器使用 S/MIME。过滤器是通过 mailAllowedServiceAccessmailDomainAllowedServiceAccess LDAP 属性来定义的。

      注释:默认情况下,如果未使用 mailAllowedServiceAccessmailDomainAllowedServiceAccess,则将允许所有包括 smime 的服务。如果要使用这些属性明确指定服务,则必须指定服务 httpsmtpsmime,以授予邮件用户使用 S/MIME 功能的权限。

      有关更多信息,请参见授予使用 S/MIME 功能的权限

  7. 用任何可用的文本编辑器来编辑 smime.conf 文件。有关参数的语法,请参见文件开头的注释。

    smime.conf 中的所有文本和示例参数前面都带有注释字符 (#)。可以将所需参数添加到 smime.conf 中,或将参数示例复制到文件的其他部分并更改参数示例的值。如果要复制并编辑示例,请确保删除示例行开头的 # 字符。

    将这些参数添加到文件中各自对应的行中:

    1. trustedurl(请参见表 20–3)—设置为 LDAP 目录信息,以查找 CA 的证书。使用在步骤 a 中保存的信息。

    2. certurl表 20–3)—设置为 LDAP 目录信息,以查找公共密钥和证书。使用在步骤 b 中保存的信息。

    3. usersertfilter(请参见表 20–3)—设置为 smime.conf 文件中的示例的值。该示例值通常都是指必需的过滤器。复制示例并删除示例行开头的 # 字符。

      该参数指定 Communications Express Mail 用户的主、备用和等效电子邮件地址的过滤器定义,以确保在将用户的专用-公共密钥对分配给其他邮件地址时可以找到这些密钥对。

    4. sslrootcacertsurl(请参见表 20–3)—如果要将 SSL 用作 S/MIME Applet 和 Messaging Server 之间的通信链路,则应使用 LDAP 目录信息设置 sslrootcacertsurl 以查找 CA 的证书(这些证书用于验证 Messaging Server 的 SSL 证书)。有关更多信息,请参见使用 SSL 确保 Internet 链路的安全

      checkoverssl(请参见表 20–3)—如果不将 SSL 用作 S/MIME Applet 和 Messaging Server 之间的通信链路,则设置为 0

    5. crlenable(请参见表 20–3)—设置为 0 将立即禁用 CRL 检查,因为执行 CRL 检查可能会要求向 smime.conf 文件添加其他参数。

    6. logindnloginpw表 20–3)—如果需要进行验证才能访问包含公共密钥和 CA 证书的 LDAP 目录,则请将这些参数设置为具有读权限的 LDAP 条目的标识名和密码。

      注释:无论何时使用由 crlmappingurlsslrootcacertsurltrustedurl 参数指定的 LDAP 信息访问 LDAP 目录,都要使用 logindnloginpw 的值。有关更多信息,请参见smime.conf 文件的参数使用证书访问 LDAP 中的公共密钥、CA 证书和 CRL

      如果访问 LDAP 目录时不需要进行验证,请勿设置 logindnloginpw

  8. 使用 configutil 设置 Messaging Server 选项:

    1. local.webmail.smime.enable—设置为 1

    2. local.webmail.cert.enable—如果要根据 CRL 验证证书,则设置为 1

      有关更多信息,请参见Messaging Server 选项

  9. 现在已将 Communications Express Mail 配置为可以使用 S/MIME 功能。请执行以下步骤验证 S/MIME 功能是否可以正常工作:

    1. 重新启动 Messaging Server。

    2. 检查 Messaging Server 日志文件 msg-svr-base/log/http,以了解与 S/MIME 相关的诊断消息。

    3. 如果检测到任何有关 S/MIME 的问题,则诊断消息将帮助您确定如何使用配置参数来解决这些问题。

    4. 更正必要的配置参数。

    5. 重复步骤 a. 到 d.,直至 Messaging Server 的日志文件中不再出现任何有关 S/MIME 的诊断消息。

    6. 执行以下步骤检查 S/MIME 功能是否可以正常工作:

      1. 从客户机上登录到 Messaging Server。用 "Yes" 或 "Always" 回答 S/MIME applet 的特定提示问题。请参见管理证书

      2. 撰写一条发送给您自己的短消息。

      3. 通过选中“撰写”窗口底部的“加密”复选框(如果尚未选中)来对消息进行加密。

      4. 单击“发送”以将加密消息发送给您自己。这将检验密钥和证书的大多数机制。

      5. 如果发现加密消息存在问题,则问题最有可能出在 smime.conf 文件中用于 LDAP 目录信息的值上和/或在 LDAP 目录中存储密钥和证书的方式上。请检查 Messaging Server 日志以获得更多诊断消息。

        下表中总结的其他 S/MIME 参数提供了许多选项,您可以使用这些选项进一步配置 S/MIME 环境。有关这些参数的更多信息,请参见smime.conf 文件的参数

        S/MIME 必需的参数 

        用于智能卡和本地密钥库的参数 

        用于 CRL 检查的参数 

        用于初始设置和安全链路的参数 

        certurl* 

        platformwin 

        checkoverssl 

        alwaysencrypt 

        logindn 

         

        crlaccessfail 

        alwayssign 

        loginpw 

         

        crldir 

        sslrootcacertsurl 

        trustedurl* 

         

        crlenable 

         

        usercertfilter* 

         

        crlmappingurl 

         
           

        crlurllogindn 

         
           

        crlurlloginpw 

         
           

        crlusepastnextupdate 

         
           

        readsigncert 

         
           

        revocationunknown 

         
           

        sendencryptcert 

         
           

        sendencryptcertrevoked 

         
           

        readsigncert 

         
           

        sendsigncertrevoked 

         
           

        timestampdelta 

         

        * 必须为这些参数指定值,因为它们都没有默认值。