12.0-RELEASE にしたら /usr/src/crypto/openssl の openssl 1.0.2o -> 1.1.1a の影響を受けて
Signature Algorithm: md5WithRSAEncryption
の証明書がサーバー側で弾かれるようになった。
VERIFY ERROR: depth=0, error=CA signature digest algorithm too weak: CN=XX
サーバー側で対応したい。
参考。 https://github.com/fabio-d/openvpn-MD5-hack ありがとうございます。
サーバー側の設定ファイルに tls-cert-profile "legacy_md5" を足して
# cat /usr/ports/security/openvpn/files/patch-src_openvpn_ssl__openssl.c
--- src/openvpn/ssl_openssl.c.orig 2019-02-20 12:28:23 UTC
+++ src/openvpn/ssl_openssl.c
@@ -499,6 +499,10 @@ tls_ctx_set_cert_profile(struct tls_root_ctx *ctx, con
SSL_CTX_set_security_level(ctx->ctx, 3);
SSL_CTX_set_cipher_list(ctx->ctx, "SUITEB128");
}
+ else if (0 == strcmp(profile, "legacy_md5"))
+ {
+ SSL_CTX_set_security_level(ctx->ctx, 0);
+ }
else
{
msg(M_FATAL, "ERROR: Invalid cert profile: %s", profile);
もちろんクライアント側の証明書を配布しなおせればよいんですけど。