Use https (jks) en el proyecto Spring Boot

Tabla de contenido

Una configuración de SpringBoot HTTPS

2. Genera tú mismo la RSC

1 Descomprima el paquete de compresión de certificados descargado para obtener el archivo "xxx.pem" y el archivo xxx.key

2 Use la herramienta OpenSSL para convertir el certificado de formato pem al certificado de formato PFX para obtener el archivo "server.pfx"

3 Use la herramienta Keytool para convertir el archivo de certificado de formato PFX a formato JKS para obtener el archivo "xxx.jks".

Tres configuraciones en SpringBoot

1 Coloque xxx.jks en la carpeta de recursos

2 Iniciar la prueba

4. Se puede acceder tanto a http como a https al mismo tiempo

1 nueva configuración

2 Agregue la clase de inicio SpringBoot

cinco referencias


Una configuración de SpringBoot HTTPS

En el trabajo, encontrará la configuración de https durante mucho tiempo. SpringBoot viene con el archivo .jks generalmente utilizado por el servidor tomcat para configurar el cifrado SSL.

Se utilizarán dos herramientas en el proceso: OpenSSL y Keytool.

OpenSSL: Dirección de descarga: http://slproweb.com/products/Win32OpenSSL.html

La herramienta keytool, que es una herramienta que viene con jdk, se puede encontrar en el directorio /bin de jdk.

2. Genera tú mismo la RSC

Los proveedores de https no entregarán archivos .jks directamente. Por lo tanto, necesitamos convertir el archivo encriptado en el archivo jks requerido.

1 Descomprima el paquete de compresión de certificados descargado para obtener el archivo "xxx.pem" y el archivo xxx.key

El archivo "server.pem" incluye dos códigos de certificado "-----BEGIN CERTIFICATE-----" y "-----END CERTIFICATE-----", que son el certificado del servidor y el certificado de CA intermedio, respectivamente. .

2 Use la herramienta OpenSSL para convertir el certificado de formato pem al certificado de formato PFX para obtener el archivo "server.pfx"

Busque el directorio bin de openssl, busque el archivo openssl.exe, haga clic con el botón derecho para ejecutar como administrador, abra la línea de comando e ingrese el comando:

pkcs12 -export -out D:\xxx.pfx -in D:\xxx.pem -inkey D:\xxx.key

Ingrese la contraseña dos veces según sea necesario. En este momento, el archivo xxx.pfx se genera en el disco d. Recuerde la contraseña del certificado PFX ingresada aquí. La configuración posterior de la contraseña JKS debe ser coherente con la contraseña PFX establecida aquí; de lo contrario, es posible que Tomcat no se inicie.

3 Use la herramienta Keytool para convertir el archivo de certificado de formato PFX a formato JKS para obtener el archivo "xxx.jks".

keytool -importkeystore -srckeystore D:\xxx.pfx -destkeystore D:\xxx.jks -srcstoretype PKCS12 -deststoretype JKS

Ingrese la contraseña del certificado JKS dos veces como se le solicite

La tercera solicitud para ingresar la contraseña del almacén de claves de origen: Ingrese la contraseña del certificado PFX establecida en el xxx.pfx generado

Compruebe si xxx.jks se genera en la unidad D

Una vez completada la generación, cree un nuevo archivo "keystorePass.txt" y guarde la contraseña JKS en este archivo.

Tres configuraciones en SpringBoot

1 Coloque xxx.jks en la carpeta de recursos

#配置jks存放位置
server.ssl.key-store=classpath:xxx.jks
#https端口号
server.port=8090
#是否启用SSL证书
server.ssl.enabled=true
#密钥库密码
server.ssl.key-store-password=jks密码
#密钥库类型(JKS类型)
server.ssl.key-store-type=JKS

2 Iniciar la prueba

4. Se puede acceder tanto a http como a https al mismo tiempo

1 nueva configuración

#http端口号
http.port=18092

2 Agregue la clase de inicio SpringBoot

// 获取配置端口
@Value("${http.port}")
    private Integer httpPort;

@Bean
    public ServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
        // 添加http
        tomcat.addAdditionalTomcatConnectors(createStandardConnector());
        return tomcat;
    }

/**
     * 配置http
     *
     * @return connector
     */
    private Connector createStandardConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setPort(httpPort);
        return connector;
    }

 

cinco referencias

https://www.caojingbin.com/post/40

https://www.cnblogs.com/yangchongxing/p/13834467.html

 

 

 

Supongo que te gusta

Origin blog.csdn.net/u013380694/article/details/116302790
Recomendado
Clasificación