创建有效期为 10 年的 CA 证书。使用 CA 证书签署服务器证书。服务器证书的有效期应为 1 年或更短。
在您的应用程序中包含 CA 证书并将其添加到您的自定义 TrustManager 中。现在您只需在 CA 证书到期时每 10 年发布一次新应用程序。您的 TrustManager 应该接受所有由您的 CA 证书签名的证书。
详细步骤:
1. 创建 CA 密钥
sudo openssl genrsa -out CA/rocketCA.key 1024
- 创建 CA 证书请求
openssl req -new -key CA/rocketCA.key -out CA/rocketCA.csr
- 自签名 CA 证书
sudo openssl x509 -req -days 3650 -in CA/rocketCA.csr -out CA/rocketCA.crt -signkey CA/rocketCA.key
- 验证 CA 证书内容
openssl x509 -in CA/hitenCA.crt -text
- 使用完全限定的 DNS 名称(例如 Rocket.example.com)或使用 IPAddress 创建 Web 服务器私钥。当系统提示您输入密码时,输入您能记住的密码。
sudo openssl genrsa -des3 -out server/keys/rocket.example.com.key 1024
- 使用与私钥相同的完全限定 DNS 名称/IP 创建 Web 服务器证书请求
openssl req -new -key server/keys/rocket.example.com.key -out server/requests/rocket.example.com.csr
- 使用 CA 密钥签署 Web 服务器证书
sudo openssl ca -days 3650 -in server/requests/rocket.example.com.csr -cert CA/rocketCA.crt -keyfile CA/rocketCA.key -out server/certificates/rocket.example.com.crt
- 要验证 Web 服务器证书内容,请使用以下命令
openssl x509 -in server/certificates/rocket.example.com.crt -text
要查找的关键值是:
Subject CN=rocket.example.com
Issuer CN=rocketCA
详细步骤参考:(不需要Mutual Auth部分)
http://www.cafesoft.com/products/cams/ps/docs32/admin/ConfiguringApache2ForSSLTLSMutualAuthentication.html