试图在openssl3环境中为mariadb生成ssl证书
这个post似乎也没有给我任何解决方案。
获取错误:
SSL error: Unable to get certificate from '/etc/certs/server-cert.pem'
2022-09-11 19:14:11 0 [Warning] Failed to setup SSL
2022-09-11 19:14:11 0 [Warning] SSL error: Unable to get certificate
2022-09-11 19:14:11 0 [Warning] SSL error: error:0A00018E:SSL routines::ca md too weak/etc/certs/server-cert.pem肯定在这里;与找到并填充的其他文件夹中的文件夹相同,所以我猜我的问题是使用md too weak
生成文件时没有错误;下面是从脚本生成的文件列表

我找了很多次,但没有找到明确的解决办法。每个人都说,您要么降低了openssl中的安全级别,要么使用了更好的算法,但我在网上找不到任何例子。我还添加了-sha256,但没有成功
这是我的剧本:
#bin/sh
# SERVER
# create a new CA key
openssl genrsa 4096 > ca-key.pem
# create the certificate
openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca-cert.pem -sha256 -subj "/C=EU/ST=EU/L=EU/O=EU/OU=vps/CN=server"
# create the certificate for the server
openssl req -newkey rsa:2048 -days 365000 -nodes -keyout server-key.pem -out server-req.pem -sha256 -subj "/C=EU/ST=EU/L=EU/O=EU/OU=vps/CN=serverreq"
# process the new certificate
openssl rsa -in server-key.pem -out server-key.pem
# sign the certificate
openssl x509 -req -in server-req.pem -days 365000 -CA ca-cert.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem
# CLIENT
# create client certificate
openssl req -newkey rsa:2048 -days 365000 -nodes -keyout client-key.pem -out client-req.pem -subj "/C=EU/ST=EU/L=EU/O=EU/OU=vps/CN=client"
# process key
openssl rsa -in client-key.pem -out client-key.pem
# sign certificate
openssl x509 -req -in client-req.pem -days 365000 -CA ca-cert.pem -CAkey ca-key.pem -sha256 -set_serial 01 -out client-cert.pem我的码头工
database:
container_name: mariadb
image: "mariadb:${MARIADB_VERSION}"
restart: always
env_file: .env
volumes:
- "${SQL_INIT}:/docker-entrypoint-initdb.d"
- type: bind
source: ${MARIADB_DATA_DIR}
target: /var/lib/mysql
- type: bind
source: ${MARIADB_LOG_DIR}
target: /var/logs/mysql
- type: bind
source: ${MARIADB_CERTS_DIR}
target: /etc/certs/
environment:
MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
MYSQL_DATABASE: "${MYSQL_DATABASE}"
MYSQL_USER: "${MYSQL_USER}"
MYSQL_PASSWORD: "${MYSQL_PASSWORD}"
ports:
- "3306:3306"
networks:
- app_network
command: [
"--character-set-server=utf8mb4",
"--collation-server=utf8mb4_unicode_ci",
"--bind-address=database",
"--require_secure_transport=ON",
"--ssl-ca=/etc/certs/ca-cert.pem",
"--ssl-cert=/etc/certs/server-cert.pem",
"--ssl-capath=/etc/certs/",
"--ssl-key=/etc/certs/server-key.pem",
"--default_authentication_plugin=mysql_native_password"
]发布于 2022-09-11 20:40:21
请仔细阅读错误消息: MD5 (但也包括SHA1)被认为是不安全的,最近几年以来一直被TLS库拒绝。
您应该使用安全密码重新生成CA和证书,因为当前的密码被认为不再安全。
维基百科:“2008年12月31日,CMU软件工程研究所得出结论,MD5本质上是”密码故障,不适合进一步使用“。
那是14年前..。
https://stackoverflow.com/questions/73682105
复制相似问题