TL;DR
今回はmod_sslのクライアント認証の設定方法についてです。
LPIC 303において、mod_sslをクライアント認証が出題範囲となっているので、実際にクライアント証明書を作成し、mod_sslを入れたApacheでクライアント認証を実践してみるといいかと思います。
今回も参考書はこちらです。mod_sslの設定はこちらを参考にしています。
また、クライアント証明書の作成とインストールについてはこちらのブログを参考にさせていただきました。
https://blog.apar.jp/linux/14057/
クライアント認証の流れ
クライアント認証の流れ
クライアント認証のためのssl.confの設定
例のごとく/etc/httpd/conf.d/ssl.confにディレクティブを追加していきます。
SSLCACertificateFile /etc/pki/tls/crt/crt.pem
SSLCARevocationFile /etc/pki/tls/certs/crl.pem
SSLVerifyClient require
SSLVerifyDepth 1
クライアント認証のためのmod_sslの主なディレクティブ
ディレクティブ | 設定値 | 値の説明 |
SSLCACertificateFile | クライアント証明書を発行した認証局の証明書ファイルを指定。 | |
SSLCARevocationFile | クライアント証明書のCRLのファイルを指定。 | |
SSLVerifyClient | none | クライアント証明書を必要としない。 |
optional | クライアントは有効なクライアント証明書を提示可能。 | |
require | クライアントは有効なクライアント証明書の提示が必要。 | |
optional_no_ca | クライアントは有効なクライアント証明書を提示することができるが、有効である必要はない。 | |
SSLVerifyDepth | クライアント証明書を確認する深さを指定。 中間認証局の災害数まで指定可能。 0の場合は自己署名されたクライアント証明書のみ利用可能。 1の場合は自己署名されたクライアント証明書、もしくは直接認証局で署名されたサーバー証明書となる。 |
今回は以上です。お疲れ様でした。