tomcat配置https | 自签发证书配置

未配置证书的访问:
 
生成证书:
 
Keytool:
 
生成数字证书:自签名X509证书
PS F:\开发工具\apache-tomcat-9.0.11\conf> keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36
000 -alias org.windwant.com -keystore windwant.store
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
  [Unknown]:   org.windwant.com
您的组织单位名称是什么?
  [Unknown]:  ca
您的组织名称是什么?
  [Unknown]:  ca
您所在的城市或区域名称是什么?
  [Unknown]:  ca
您所在的省/市/自治区名称是什么?
  [Unknown]:  ca
该单位的双字母国家/地区代码是什么?
  [Unknown]:  ca
CN= org.windwant.com, OU=ca, O=ca, L=ca, ST=ca, C=ca是否正确?
  [否]:  y
 
输入 < org.windwant.com> 的密钥口令
        (如果和密钥库口令相同, 按回车):
再次输入新口令:
genkeypair:生成秘钥;keyalg:秘钥算法;keysize:秘钥长度;sigalg:数字签名算法;validity:有效期;alias:别名;keystore:存储位置
 
注意:标黑位置,证书授予者使用的域名或ip,如访问使用:https://org.windwant.com:8443
     
          org.windwant.com 需要在host文件里进行配置;127.0.0.1 org.windwant.com
 
导出:
PS F:\开发工具\apache-tomcat-9.0.11\conf> keytool -exportcert -alias org.windwant.com -keystore windwant.store -file win
dwant.cer -rfc
输入密钥库口令:
存储在文件 <windwant.cer> 中的证书
 
openssl:
 
创建随机数:
[root@zookeeper cert]# openssl rand -out private/.rand 1000
 
生成私钥:
[root@zookeeper cert]# openssl genrsa -aes256 -out private/ca.key.pem 2048
openssl使用PEM编码格式(privacy enbanced mail)存储私钥;genrsa:生成RSA私钥;aes256:使用aes(256位秘钥)对私钥加密
 
根证书签发申请:
[root@zookeeper cert]# openssl req -new -key private/ca.key.pem -out private/ca.csr
...
Country Name (2 letter code) [XX]:cn
State or Province Name (full name) []:bj
Locality Name (eg, city) [Default City]:bj
Organization Name (eg, company) [Default Company Ltd]:localhost
Organizational Unit Name (eg, section) []:localhost
Common Name (eg, your name or your server's hostname) []:localhost
Email Address []:localhost
...
req:产生证书签发申请命令;new:新请求;key:秘钥;
 
localhost:证书授予者使用的域名或ip
 
签发根证书:
[root@zookeeper cert]# openssl x509 -req -days 10000 -sha1 -extfile /etc/pki/tls/openssl.cnf -extensions v3_ca -signkey private/ca.key.pem -in private/ca.csr  -out certs/ca.cer
x509:签发x509格式证书命令;req:证书输入请求;days:有效期;sha1:证书摘要算法;extfile:配置文件;extensions:添加扩展 使用v3_ca扩展;signkey:自签名秘钥;in:签发申请文件;out:证书文件
 
秘钥库使用两种方式:
 
>1 证书转换为pkcs12(个人信息交换文件)格式,可以作为秘钥库或者信任库使用: tomcat配置keystoreFile="conf/ca.p12"
[root@zookeeper cert]# openssl pkcs12 -export -cacerts -inkey private/ca.key.pem  -in certs/ca.cer -out certs/ca.p12
[root@zookeeper cert]# keytool -list -keystore certs/ca.p12   //查看秘钥库信息
Enter keystore password:  
 
Keystore type: JKS
Keystore provider: SUN
 
Your keystore contains 1 entry
 
1, Aug 28, 2018, PrivateKeyEntry,
Certificate fingerprint (SHA1): A9:34:42:EE:AC:9C:06:E0:2B:AF:91:64:20:7F:10:FB:0A:40:07:DD
 
>2 生成keystore:tomcat配置keystoreFile="conf/ca.store"
[root@zookeeper cert]# keytool -genkey -keystore ca.store
[root@zookeeper cert]# keytool -list -keystore .\windwant.store  //查看秘钥库信息
输入密钥库口令:
 
密钥库类型: JKS
密钥库提供方: SUN
 
您的密钥库包含 1 个条目
 
org.windwant.com, 2018-8-28, PrivateKeyEntry,
证书指纹 (SHA1): CE:CD:6B:07:29:19:77:B1:2B:B6:4C:6B:1E:B5:76:C7:42:E3:08:14
 
导入openssl生成的证书:
[root@zookeeper cert]# keytool -importcert -trustcacerts -alias localhost -file ca.cer -keystore ca.store
 
配置tomcat:
 
对于端口8443 添加如下配置:秘钥库路径,密码
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" sslProtocal="TLS" keystoreFile="conf/windwant.store" keystorePass="123456">
        <!-- <SSLHostConfig>
            <Certificate certificateKeystoreFile="D:/tmp/cert/windwant.cer"
                         type="RSA" />
        </SSLHostConfig> -->
    </Connector>
 
浏览器导入证书:
 
注意:添加到受信任的根证书颁发机构
 
访问:不再提示证书问题
 

猜你喜欢

转载自www.cnblogs.com/niejunlei/p/9549831.html