versiones de Tomcat: Apache-Tomcat 9.0.27-
la versión del JDK: 1.8.0_212
navegador: Firefox
1. Generar un certificado
https protocolo requiere un certificado, la herramienta de desarrollo que podemos utilizar herramienta de claves que viene con el JDK generar un certificado para probar;
En primer lugar asegúrese de que no JDK entorno local, puede utilizar el java -version para ver, y luego ejecutar el siguiente código, apellido o algo que se puede llenar fácilmente.
keytool -genkeypair -alias testKey -keyalg RSA -storepass 123456 -keyalg RSA -keysize 2048 -validity 3650 -keystore ./testKey.jks
<!--
-alias testKey:证书项的名字,必填项
-keyalg RSA:证书签名算法,tomcat建议RSA
-storepass 123456:密钥库密码,也就是等下要生成的test.keystore的访问密码,妥善保管
-validity 3650:证书有效期,3650天,即10年
-keystore ./testKey.jks:要生成的文件的位置,./test.keystore表示存储在当前目录下
-->
A continuación podemos ver un mensaje, ejecutar el mensaje de código dentro de
keytool -importkeystore -srckeystore ./testKey.jks -destkeystore ./testKey.jks -deststoretype pkcs12
Podemos ver el certificado "testKey.jks" ya generados con éxito
2. Configuración del conector https
2.1 Los archivos de base de datos clave testKey.jks resultantes se copian en el directorio conf del servidor Tomcat
2.2 Modificar archivo server.xml, https conector de configuración
<!-- 注释掉http连接器 -->
<!--
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
-->
<!-- 释放https连接器 -->
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
type="RSA" />
</SSLHostConfig>
</Connector>
Modificar https número de puerto conector, un camino secreto archivo de base de datos clave, y la configuración de la contraseña de clave secreta (la contraseña se establece cuando la generación de los archivos de claves secretas)
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="conf/testKey.jks"
type="RSA" certificateKeystorePassword="123456" />
</SSLHostConfig>
</Connector>
3. Prueba
Uso de acceso http, vemos que es inaccesible éxito, se devuelve el mensaje de error
Utilizar https para el acceso, ya que poseemos se genera el certificado, por lo que el navegador para el mensaje,
Podemos ignorar, haga clic en Opciones avanzadas -> aceptar los riesgos siguen
Podemos ver una exitosa visita a la página a través de HTTPS