gpt4 book ai didi

java - 自签名的 tomcat 和 mysql/mariadb

转载 作者:行者123 更新时间:2023-11-28 23:26:06 26 4
gpt4 key购买 nike

大家好

尝试使用证书来保护 Tomcat 8.x 和 mysql/mariadb 之间的连接。我将使用自签名证书。以下是我认为我应该去的地方,感谢您参与并纠正我。

创建后端(数据库)证书

-sudo openssl genrsa 4096 > ca-key.pem

-sudo openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca-cert.pem

-sudo openssl req -newkey rsa:4096 -days 3600 -nodes -keyout server-key.pem -out server-req.pem

-sudo openssl rsa -in server-key.pem -out server-key.pem

-sudo openssl x509 -req -in server-req.pem -days 3600 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

更新mysql cnf

ca-key.pem
server-key.pem
server-cert.pem

好的,这是我不知道如何继续的地方。我想我必须使用 JAVA keytool。

我从这里去哪里?

一个OSP

最佳答案

假设您正在寻找一种单向 SSL,其中 MySQL 是服务器,Tomacat 是需要基于 ssl 的 JDBC 的客户端。

  1. 在MySQL环境下,在配置文件my.cnf中设置CA和服务器证书的路径

    ssl-ca=<PATH>/ca-cert.pem
    ssl-cert=<PATH>server-cert.pem
    ssl-key=<PATH>server-key.pem
  2. 在 Tomcat 环境中导入您的 MySQL CA 证书。

    keytool -import -alias mysqlcacert -file ca-cert.pem -keystore truststore

  3. 如果尚未完成,请在 catalina.sh/bat 中设置信任库路径

     JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.keyStore=<PATH>keystore"
    JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.keyStorePassword=<password>"
  4. JDBC 网址

    url="jdbc:mysql://host:port/db?autoReconnect=true&verifyServerCertificate=true&useSSL=true&requireSSL=true";

关于java - 自签名的 tomcat 和 mysql/mariadb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886214/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com