本章介绍证书管理并说明如何安装自签名证书和来自“证书授权机构”的证书。
本章说明以下主题:
Sun Java System Portal Server Secure Remote Access 软件为远程用户提供基于证书的验证。SRA 使用“安全套接字层”(SSL) 来实现安全通信。SSL 协议可在两台机器之间实现安全通信。
SSL 证书使用公共和私有密钥对提供加密和解密功能。
证书的两种类型为:
自签名证书(也称为根 CA 证书)
由证书授权机构 (CA) 签发的证书
默认情况下,当安装网关时,将会生成并安装自签名证书。
在安装后,您可随时生成、获取或替换证书。
SRA 还支持用“个人数字证书”(Personal Digital Certificates, PDC) 进行客户机验证。PDC 是一个通过 SSL 客户机验证来验证用户的机制。进行 SSL 客户机验证时,SSL 信号交换将在网关结束。网关提取用户的 PDC 并将其传递给已验证的服务器。该服务器使用 PDC 验证用户。要将 PDC 与验证链一起配置,参见使用验证链。
SRA 提供了一个名为 certadmin 的工具,可使用它来管理 SSL 证书。参见 certadmin 脚本。
在 SSL 应用程序中,证书弹出式窗口很常见。建议用户接受警告并继续进行。
证书相关文件位于 /etc/opt/SUNWportal/cert/ gateway-profile-name。默认情况下,此目录包含 5 个文件。
证书文件列出了这些文件及其说明。
表 10–1 证书文件
文件名 |
类型 |
描述 |
---|---|---|
cert8.db、key3.db、secmod.db |
二进制 |
包含证书、密钥和加密模块的数据。 可使用 certadmin 脚本处理。 如有必要,可在 Portal Server 主机和网关组件或网关之间共享这些文件。 |
.jsspass |
隐藏文本文件 |
包含 SRA 密钥数据库的加密密码。 |
.nickname |
隐藏文本文件 |
以 token-name:certificate-name 格式存储网关需要使用的令牌和证书的名称。 如果您使用的是默认令牌(默认内部软件加密模块上的令牌),则省略令牌名。多数情况下,.nickname 文件仅存储证书名。 作为管理员,您可在此文件中修改证书名。您指定的证书此时由网关使用。 |
证书的信任属性表明以下信息:
该证书(如客户机或服务器证书)是否由“委托 CA”发放。
证书(如根证书)是否可受委托作为服务器或客户机证书的签发人。
按如下顺序表示每一证书的三种可用委托类别:“SSL、电子邮件、对象签名”。对于网关,仅第一种类别有用。在每一类别位置中,将使用多个或不使用任何信任属性代码。
类别的属性代码以逗号分隔,并且整个属性组由引号括在其中。例如,在网关安装期间生成并安装的自签名证书被标记为 "u,u,u",它表示该证书是服务器证书(用户证书),而不是根 CA 证书。
证书的信任属性列出了可能的属性值及每个值的含义。
表 10–2 证书的信任属性
属性 |
描述 |
---|---|
p |
有效同级 |
P |
委托同级(暗示 p) |
c |
有效 CA |
T |
签发客户机证书的委托 CA(暗示 c) |
C |
签发服务器证书的委托 CA(仅限 SSL)(暗示 c) |
u |
证书可用于验证或签名 |
w |
发送警告(当证书在该环境中使用时,与其他属性一起使用以包括警告) |
证书数据库中包括大多数众所周知的公共 CA。有关修改公共 CA 的信任属性的信息,参见修改证书的信任属性。
CA 信任属性列出了最常见“证书授权机构”及其信任属性。
表 10–3 公共证书授权机构
证书授权机构名 |
信任属性 |
Verisign/RSA Secure Server CA |
CPp,CPp,CPp |
VeriSign Class 4 Primary CA |
CPp,CPp,CPp |
GTE CyberTrust Root CA |
CPp,CPp,CPp |
GTE CyberTrust Global Root |
CPp,CPp,CPp |
GTE CyberTrust Root 5 |
CPp,CPp,CPp |
GTE CyberTrust Japan Root CA |
CPp,CPp,CPp |
GTE CyberTrust Japan Secure Server CA |
CPp,CPp,CPp |
Thawte Personal Basic CA |
CPp,CPp,CPp |
Thawte Personal Premium CA |
CPp,CPp,CPp |
Thawte Personal Freemail CA |
CPp,CPp,CPp |
Thawte Server CA |
CPp,CPp,CPp |
Thawte Premium Server CA |
CPp,CPp,CPp |
American Express CA |
CPp,CPp,CPp |
American Express Global CA |
CPp,CPp,CPp |
Equifax Premium CA |
CPp,CPp,CPp |
Equifax Secure CA |
CPp,CPp,CPp |
BelSign Object Publishing CA |
CPp,CPp,CPp |
BelSign Secure Server CA |
CPp,CPp,CPp |
TC TrustCenter, Germany, Class 0 CA |
CPp,CPp,CPp |
C TrustCenter, Germany, Class 1 CA |
CPp,CPp,CPp |
TC TrustCenter, Germany, Class 2 CA |
CPp,CPp,CPp |
TC TrustCenter, Germany, Class 3 CA |
CPp,CPp,CPp |
TC TrustCenter, Germany, Class 4 CA |
CPp,CPp,CPp |
ABAecom (sub., Am. Bankers Assn.) Root CA |
CPp,CPp,CPp |
Digital Signature Trust Co. Global CA 1 |
CPp,CPp,CPp |
Digital Signature Trust Co. Global CA 3 |
CPp,CPp,CPp |
Digital Signature Trust Co. Global CA 2 |
CPp,CPp,CPp |
Digital Signature Trust Co. Global CA 4 |
CPp,CPp,CPp |
Deutsche Telekom AG Root CA |
CPp,CPp,CPp |
Verisign Class 1 Public Primary Certification Authority |
CPp,CPp,CPp |
Verisign Class 2 Public Primary Certification Authority |
CPp,CPp,CPp |
Verisign Class 3 Public Primary Certification Authority |
CPp,CPp,CPp |
Verisign Class 1 Public Primary Certification Authority - G2 |
CPp,CPp,CPp |
Verisign Class 2 Public Primary Certification Authority - G2 |
CPp,CPp,CPp |
Verisign Class 3 Public Primary Certification Authority - G2 |
CPp,CPp,CPp |
Verisign Class 4 Public Primary Certification Authority - G2 |
CPp,CPp,CPp |
GlobalSign Root CA |
CPp,CPp,CPp |
GlobalSign Partners CA |
CPp,CPp,CPp |
GlobalSign Primary Class 1 CA |
CPp,CPp,CPp |
GlobalSign Primary Class 2 CA |
CPp,CPp,CPp |
GlobalSign Primary Class 3 CA |
CPp,CPp,CPp |
ValiCert Class 1 VA |
CPp,CPp,CPp |
ValiCert Class 2 VA |
CPp,CPp,CPp |
ValiCert Class 3 VA |
CPp,CPp,CPp |
Thawte Universal CA Root |
CPp,CPp,CPp |
Verisign Class 1 Public Primary Certification Authority - G3 |
CPp,CPp,CPp |
Verisign Class 2 Public Primary Certification Authority - G3 |
CPp,CPp,CPp |
Verisign Class 3 Public Primary Certification Authority - G3 |
CPp,CPp,CPp |
Verisign Class 4 Public Primary Certification Authority - G3 |
CPp,CPp,CPp |
Entrust.net Secure Server CA |
CPp,CPp,CPp |
Entrust.net Secure Personal CA |
CPp,CPp,CPp |
Entrust.net Premium 2048 Secure Server CA |
CPp,CPp,CPp |
ValiCert OCSP Responder |
CPp,CPp,CPp |
Baltimore CyberTrust Code Signing Root |
CPp,CPp,CPp |
Baltimore CyberTrust Root |
CPp,CPp,CPp |
Baltimore CyberTrust Mobile Commerce Root |
CPp,CPp,CPp |
Equifax Secure Global eBusiness CA |
CPp,CPp,CPp |
Equifax Secure eBusiness CA 1 |
CPp,CPp,CPp |
Equifax Secure eBusiness CA 2 |
CPp,CPp,CPp |
Visa International Global Root 1 |
CPp,CPp,CPp |
Visa International Global Root 2 |
CPp,CPp,CPp |
Visa International Global Root 3 |
CPp,CPp,CPp |
Visa International Global Root 4 |
CPp,CPp,CPp |
Visa International Global Root 5 |
CPp,CPp,CPp |
beTRUSTed Root CA |
CPp,CPp,CPp |
Xcert Root CA |
CPp,CPp,CPp |
Xcert Root CA 1024 |
CPp,CPp,CPp |
Xcert Root CA v1 |
CPp,CPp,CPp |
Xcert Root CA v1 1024 |
CPp,CPp,CPp |
Xcert EZ |
CPp,CPp,CPp |
CertEngine CA |
CPp,CPp,CPp |
BankEngine CA |
CPp,CPp,CPp |
FortEngine CA |
CPp,CPp,CPp |
MailEngine CA |
CPp,CPp,CPp |
TraderEngine CA |
CPp,CPp,CPp |
USPS Root |
CPp,CPp,CPp |
USPS Production 1 |
CPp,CPp,CPp |
AddTrust Non-Validated Services Root |
CPp,CPp,CPp |
AddTrust External Root |
CPp,CPp,CPp |
AddTrust Public Services Root |
CPp,CPp,CPp |
AddTrust Qualified Certificates Root |
CPp,CPp,CPp |
Verisign Class 1 Public Primary OCSP Responder |
CPp,CPp,CPp |
Verisign Class 2 Public Primary OCSP Responder |
CPp,CPp,CPp |
Verisign Class 3 Public Primary OCSP Responder |
CPp,CPp,CPp |
Verisign Secure Server OCSP Responder |
CPp,CPp,CPp |
Verisign Time Stamping Authority CA |
CPp,CPp,CPp |
Thawte Time Stamping CA |
CPp,CPp,CPp |
E-Certify CA |
CPp,CPp,CPp |
E-Certify RA |
CPp,CPp,CPp |
Entrust.net Global Secure Server CA |
CPp,CPp,CPp |
Entrust.net Global Secure Personal CA |
CPp,CPp,CPp |
您可使用 certadmin 脚本完成以下证书管理任务:
您需要为每个服务器与网关之间的 SSL 通信生成证书。
以超级用户身份,在您要为其生成证书的网关机器上运行 certadmin 脚本:
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10) Quit choice: [10] 1 |
选择证书管理菜单上的选项 1。
证书管理脚本询问您是否要保留现有数据库文件。
输入组织特定信息、令牌名和证书名。
对于通配符证书,在主机的全限定 DNS 名中指定一个 *。例如,如果主机的全限定 DNS 名为 abc.sesta.com,则将其指定为 *.sesta.com。现在,生成的证书对 sesta.com 域中的所有主机名均有效。
What is the fully-qualified DNS name of this host? [host_name.domain_name] What is the name of your organization (ex: Company)? [] What is the name of your organizational unit (ex: division)? [] What is the name of your City or Locality? [] What is the name (no abbreviation please) of your State or Province? [] What is the two-letter country code for this unit? [] Token name is needed only if you are not using the default internal (software) cryptographic module, for example, if you want to use a crypto card (Token names could be listed using: modutil -dbdir /etc/opt/SUNWportal/cert/gateway-profile-name -list); Otherwise, just hit Return below. Please enter the token name. [] Enter the name you like for this certificate? Enter the validity period for the certificate (months) [6] A self-signed certificate is generated and the prompt returns. |
令牌名(默认值为空)和证书名存储在 /etc/opt/SUNWportal/cert/ gateway-profile-name 下面的 .nickname 文件中。
重新启动网关以使证书生效:
./psadmin start-sra-instance -u amadmin -f passwordfile -N profilename -t gateway |
需先生成包含 CA 所需信息的证书签名请求,方可从 CA 定购证书。
以超级用户身份,运行 certadmin 脚本:
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10) Quit choice: [10] 2 |
选择证书管理菜单上的选项 2。
脚本会提示您输入组织特定信息、令牌名以及 Web 站点管理员的电子邮件和电话号码。
确保指定主机的全限定 DNS 名。
What is the fully-qualified DNS name of this host? [snape.sesta.com] What is the name of your organization (ex: Company)? [] What is the name of your organizational unit (ex: division)? [] What is the name of your City or Locality? [] What is the name (no abbreviation please) of your State or Province? [] What is the two-letter country code for this unit? [] Token name is needed only if you are not using the default internal (software) cryptographic module, for example, if you want to use a crypto card (Token names could be listed using: modutil -dbdir /etc/opt/SUNWportal/cert -list); Otherwise, just hit Return below. Please enter the token name [] Now input some contact information for the webmaster of the machine that the certificate is to be generated for. What is the email address of the admin/webmaster for this server [] ? What is the phone number of the admin/webmaster for this server [] ? |
键入全部所需信息。
请勿将 Web 站点管理员的电子邮件和电话号码留为空白。此信息对于获取有效 CSR 是必需的。
会产生 CSR 并将其存储在 portal-server-install-root /SUNWportal/bin/csr.hostname.datetimestamp 文件中。CSR 也会打印在屏幕上。当您从 CA 定购证书时,可直接复制并粘贴 CSR。
如果客户机站点所提交的经 CA 签名的证书不为网关证书数据库所知,则 SSL 握手将会失败。
为防止出现此情况,您需要向证书数据库中添加根 CA 证书。这将确保使 CA 为网关所知。
浏览到 CA 的 Web 站点并获取该 CA 的根证书。当您使用 certadmin 脚本时,要指定根 CA 证书的文件名和路径。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10) Quit choice: [10] 3 |
选择证书管理菜单上的选项 3。
输入包含根证书的文件名,并输入证书名。
根 CA 证书会被添加到证书数据库。
在安装网关过程中,默认情况下将创建并安装自签名证书。在安装之后,您可随时安装由供应商(提供官方证书授权机构 (CA) 服务)或您公司的 CA 签名的 SSL 证书。
此项任务涉及三个步骤:
在生成证书签名请求 (CSR) 后,您需要使用 CSR 从 CA 定购证书。
转到证书授权机构的 Web 站点,并定购您的证书。
提供 CA 所需的 CSR。提供 CA 所需的其他信息(如果需要)。
您会收到来自 CA 的证书。将其保存到文件中。在文件中需包括连同证书在内的 "BEGIN CERTIFICATE" 和 "END CERTIFICATE" 行。
以下示例省略了实际的证书数据。
-----BEGIN CERTIFICATE----- The certificate contents... ----END CERTIFICATE----- |
使用 certadmin 脚本,在 /etc/opt/SUNWportal/cert/ gateway-profile-name 下的本地数据库文件中安装从 CA 获取的证书。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 4 |
选择证书管理菜单上的选项 4。
脚本要求您输入证书文件名、证书名和令牌名。
What is the name (including path) of file that contains the certificate? Please enter the token name you used when creating CSR for this certificate. [] |
提供全部所需的信息。
证书被安装在 /etc/opt/SUNWportal/cert/gateway-profile-name 中,并且返回屏幕提示。
重新启动网关以使证书生效:
./psadmin start-sra-instance -u amadmin -f passwordfile -N profilename -t gateway |
通过使用证书管理脚本可删除证书。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root/SUNWportal/bin/certadmin -n |
其中,gateway-profile-name 是网关实例名。
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 5 |
选择证书管理菜单上的选项 5。
输入要删除证书的名称。
证书的信任属性需要修改的一种情况便是,同时使用客户机验证和网关。PDC(个人数字证书)是客户机验证的一个示例。签发 PDC 的 CA 必须要受网关委托,并且必须将 CA 证书标记为 "T" 以满足 SSL。
如果安装网关与 HTTPS 站点进行通信,则 HTTPS 站点服务器证书的 CA 必须要受网关委托,并且必须将 CA 证书标记为 "C" 以满足 SSL。
以超级用户身份,运行 certadmin 脚本。
gateway-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
其中,gateway-profile-name 是网关实例名。
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 6 |
选择证书管理菜单上的选项 6。
输入证书名。例如,Thawte Personal Freemail CA。
Please enter the name of the certificate? Thawte Personal Freemail CA |
输入证书的信任属性。
Please enter the trust attribute you want the certificate to have [CT,CT,CT] |
证书信任属性将被更改。
通过使用证书管理脚本可查看所有根 CA 证书。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
其中,gateway-profile-name 是网关实例名。
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 7 |
选择证书管理菜单上的选项 7。
显示所有根 CA 证书。
通过使用证书管理脚本可查看所有证书及其相应的信任属性。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root /SUNWportal/bin/certadmin -n gateway-profile-name |
其中,gateway-profile-name 是网关实例名。
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 8 |
选择证书管理菜单上的选项 8。
显示所有 CA 证书。
通过使用证书管理脚本可打印证书。
以超级用户身份,运行 certadmin 脚本。
portal-server-install-root/SUNWportal/bin/certadmin -n gateway-profile-name |
其中,gateway-profile-name 是网关实例名。
显示证书管理菜单。
1) Generate Self-Signed Certificate 2) Generate Certificate Signing Request (CSR) 3) Add Root CA Certificate 4) Install Certificate From Certificate Authority (CA) 5) Delete Certificate 6) Modify Trust Attributes of Certificate (e.g., for PDC) 7) List Root CA Certificates 8) List All Certificates 9) Print Certificate Content 10)Quit choice: [10] 9 |
选择证书管理菜单上的选项 9。
输入证书名。