证书生成 和Tomcat配置

7 篇文章 0 订阅
5 篇文章 0 订阅

证书生成

一、生成服务器端证书

1 .jks文件(tomcat引用文件)数字证书库

keytool –genkey

–keyalg RSA

–dname

"cn=服务器名,

ou=中国未来网络,

o=CDN,

l=南京,

st=江苏,

c=cn"

-alias 别名

-keypass 密码

-keystore 证书库名.jks-storepass 密码

-validity 3650

 

说明:       利用密钥和证书用具keytool工具生成证书,连贯书写命令不要中间回车空行

参数说明:   -keyalg:算法、-dname:唯一判别名、cn:服务器名(一定要设置为域名地址,例如IP地址)、ou:组织单位名、o:组织名、l:城市名、st:省/市/自治区名称、c:国家双字母代码、-alias:别名、–keypass:密码、-keystore:文件名、-validity:有效时间天为单位。

详细参数说明:请在命令行中输入keytool –genkey –help 帮助查询

重要配置:    密码、别名(-alias)、cn的值为域名

 

命令举例:   keytool -genkey -keyalg RSA-dname "cn=192.168.28.211,ou=fnic,o=cdn,l=nanjing,st=jiangsu,c=cn"-alias server -keypass asd123 -keystore server.jks -storepass asd123 -validity3650

(连贯书写)

                    

2 .cer 文件(浏览器必须安装的服务端文件)

keytool -keystore 证书库.jks-export -alias 别名 -storepass 密码 -file 证书名.cer

命令举例:keytool -keystore server.jks -export -alias server-storepass asd123 -file server.cer

(连贯书写)

 

二、生成客户端证书

1 .p12文件(双向认证时安装文件)

keytool -genkey -keyalg 算法 -dname"cn=服务器名,ou=中国未来网络,o= CDN,l=南京,st=江苏,c=cn" -alias 别名 -storetype 密钥库类型 -keypass 密码 -keystore 证书名.p12 -storepass 密码 -validity 有效天数

参数说明:同服务端证书参数说明

命令举例:keytool -genkey -keyalg RSA -dname "cn=192.168.28.211,ou=fnic,o=cdn,l=nanjing,st=jiangsu,c=cn" -alias custom -storetype PKCS12 -keypass asd123-keystore custom.p12 -storepass asd123 -validity 3650

(连贯书写)

 

2 .cer文件(为了导入密钥库过度的文件)

keytool -export -alias 别名 -file cer证书名.cer-keystore  p12证书名.p12-storepass 密码 –storetype 密钥类型输出样式

命令举例: keytool -export -alias custom -file custom.cer -keystore  custom.p12 -storepass asd123 -storetypePKCS12 -rfc

(连贯书写)

 

三、添加客户端证书到服务器中

命令说明:keytool-import -v -alias 别名 -file cer文件名.cer -keystore  证书库文件名.jks-storepass 密码

 

命令举例:keytool -import -v -alias custom -file custom.cer -keystore  server.jks -storepass asd123

(连贯书写)

 

 

根据命令举例完成所有操作总共生成四个文件

server.jks   证书库文件,供tomcat引用

server.cer   浏览器安装该证书到“受信任根证书颁发机构”下

custom.p12  双向认证安装证书到“您的证书”下

custom.cer  过度证书

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Tomcat配置

tomcat service.xml , %CATALINA_HOME%/CONF/service.xml

解开注释或者添加代码

 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"  

      maxThreads="150" scheme="https" secure="true"  

      clientAuth="false" sslProtocol="TLS"  

      keystoreFile="D:/server.jks" keystorePass="password"  

      truststoreFile="D:/server.jks" truststorePass="password"  

/>

说明:keystoreFile 服务端证书库文件路径、keystorePass 密码、clientAuth 设置双向认证还是单向认证,clientAuth="true"表示双向认证,clientAuth="false"表示单向认证


web.xml文件<web-app></web-app>中添加强制使用htmls代码:

<login-config>  

   <auth-method>CLIENT-CERT</auth-method>  

   <realm-name>Client Cert Users-only Area</realm-name>  

</login-config> 

 <security-constraint>  

   <web-resource-collection >  

        <web-resource-name >SSL</web-resource-name>  

        <url-pattern>/*</url-pattern>  

   </web-resource-collection>  

   <user-data-constraint>  

        <transport-guarantee>CONFIDENTIAL</transport-guarantee>  

   </user-data-constraint>  

</security-constraint>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值