考え方†
- クライアント証明には(自己認証局であっても)CA の裏付けが必要
- クライアント用の証明書の作成(発行)には認証局の証明書、鍵が必要
- クライアント証明書には SSLCACertificateFile を追加で apache2 に指定する必要あり
- SSLCACertificateFile = CA中間証明書 + root証明書
- kgb.hmuna.com には第三者証明書が登録済み
openssl バージョンの確認†
munakata@mvc:~$ openssl version -a
OpenSSL 1.1.1 11 Sep 2018
built on: Thu Jun 20 17:36:28 2019 UTC
platform: debian-amd64
options: bn(64,64) rc4(8x,int) des(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -Wa,--noexecstack -g -O2 -fdebug-prefix-map=/build/openssl-cn9tZy/openssl-1.1.1=.
-fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -
DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM
-DRC4_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPADLOCK_ASM -DPOLY1305_ASM -DNDEBUG -
Wdate-time -D_FORTIFY_SOURCE=2
OPENSSLDIR: "/usr/lib/ssl"
ENGINESDIR: "/usr/lib/x86_64-linux-gnu/engines-1.1"
Seeding source: os-specific
Apache バージョン確認†
munakata@mvc:~$ apache2 -v
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2019-08-26T13:41:23
Apache mod-ssl の確認†
munakata@mvc:~$ sudo apache2ctl -M | grep ssl
ssl_module (shared)
munakata@mvc:~$ cat /etc/apache2/mods-available/ssl.load
# Depends: setenvif mime socache_shmcb
LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
munakata@mvc:~$ file /usr/lib/apache2/modules/mod_ssl.so
/usr/lib/apache2/modules/mod_ssl.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=683bb4e55c962655e5267000caad85252a63bfa3, stripped
kgb.hmuna.com 証明書情報†
- COMODO により発行されているもの

自己認証局(CA) の作成†
クライアント証明書の作成†
参考 URL†