cas入门之十九:https形式发布cas证书制作

cas 默认是以https 协议发布的,我一直对这个问题避而不谈,因为这个涉及到ssl协议,不是那么容易搞的。我在公司应用cas也是以http协议发布的,因为这个集成公司内网应用,没有必要弄一个证书,花钱出力不讨好。但是即然提到这个https,那么从学习的角度来看,我们也应当学习一下。下面以oracle jdk 1.7为例应用keytool自己制作一个
https证书(下面以单认证的方式进行认证,即只需要cas服务器提供证书)。
1.因为oracle jdk不支持以ip建立证书,所以只能虚拟一个域名cas.server.com
这个配置在C:\Windows\System32\drivers\etc\hosts中
192.168.0.104 cas.server.com

2.进行cmd窗口(开始-运行,输入cmd回车)
输入如下命令:
keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36500 -alias cas.server.com -keystore d:/tomcat.keystore -dname "CN=cas.server.com,OU=cas,O=cas,L=shanghai,ST=shanghai,C=CN"

各参数含义:
-genkeypair 生成密钥
-keyalg 指定密钥算法,这时指定RSA,
-keysize 指定密钥长度,默认是1024位,这里指定2048,长一点,我让你破解不了(哈哈...),
-siglag 指定数字签名算法,这里指定为SHA1withRSA算法
-validity 指定证书有效期,这里指定36500天,也就是100年,我想我的应用用不到那么长时间
-alias 指定别名,这里是cas.server.com
-keystore 指定密钥库存储位置,这里存在d盘

-dname 指定用户信息,不用一个一个回答它的问题了;


输入上述命令,下面密码我们输入 123456,然后一直回车,就在d盘生成了tomcat.keystore文件;


3.导出数字证书
在cmd下输入如下命令:
keytool -exportcert -alias cas.server.com -keystore d:/tomcat.keystore  -file d:/tomcat.cer -rfc
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
在 CentOS 系统下,可以使用 OpenSSL 工具来生成 CA 证书、服务器证书和客户端证书。下面是生成证书的详细步骤: 1. 安装 OpenSSL 工具: ```bash sudo yum install openssl ``` 2. 生成根证书: ```bash # 生成私钥 openssl genrsa -out ca.key 2048 # 生成根证书 openssl req -new -key ca.key -out ca.csr openssl x509 -req -days 3650 -extensions v3_ca -signkey ca.key -in ca.csr -out ca.crt ``` 3. 生成服务器证书: ```bash # 生成私钥 openssl genrsa -out server.key 2048 # 生成证书签名请求 openssl req -new -key server.key -out server.csr # 生成服务器证书 openssl x509 -req -days 3650 -extensions v3_req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt ``` 4. 生成客户端证书: ```bash # 生成私钥 openssl genrsa -out client.key 2048 # 生成证书签名请求 openssl req -new -key client.key -out client.csr # 生成客户端证书 openssl x509 -req -days 3650 -extensions v3_req -CA ca.crt -CAkey ca.key -CAcreateserial -in client.csr -out client.crt ``` 以上步骤中,需要根据实际情况填写证书信息。在生成证书的过程中,需要注意以下几点: - 在生成根证书时,使用 `-extensions v3_ca` 参数指定证书类型为根证书。 - 在生成服务器证书和客户端证书时,使用 `-extensions v3_req` 参数指定证书类型为服务器证书或客户端证书。 - 在生成服务器证书和客户端证书时,使用 `-CA` 参数指定签名证书为根证书,使用 `-CAkey` 参数指定签名证书的私钥为根证书的私钥,使用 `-CAcreateserial` 参数生成序列号。 生成完证书之后,需要将根证书 `ca.crt` 分发给需要验证证书的客户端。服务器证书 `server.crt` 和私钥 `server.key` 需要配置在 Nginx 服务器中,用于 HTTPS 通信。客户端证书 `client.crt` 和私钥 `client.key` 用于客户端身份验证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值