springboot集成本地ssl

springboot集成本地ssl

1、生成ssl:

命令一:

keytool -genkey -alias tomcat -keypass 12345678 -keyalg RSA -keysize 2048 -validity 365 -keystore ./tomcat.keystore -storepass 12345678

命令二:

keytool -genkey -alias client -keypass 12345678 -keyalg RSA -keysize 2048 -validity 365 -storetype PKCS12 -keystore ./client.p12 -storepass 12345678

2、导入项目:

存放路径:

 

 配置文件新增代码:(这里是application.yml)

server:
  port: 8043
  ssl:
    key-store: classpath:client.p12
    key-store-password: 12345678
    key-store-type: PKCS12
    key-alias: client
    enabled: true

启动类增加代码,以支持http和https访问:

@Bean
    public ServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
        tomcat.addAdditionalTomcatConnectors(createHTTPConnector());
        return tomcat;
    }

    private Connector createHTTPConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        connector.setSecure(false);
        connector.setPort(8081);
        connector.setRedirectPort(8043);
        return connector;
    }

3、启动测试:

http 对应 8081

https 对应 8043

 

可参考链接:https://blog.csdn.net/mrs_haining/article/details/116162100

posted @ 2022-08-25 16:41  subtlman  阅读(179)  评论(0)    收藏  举报