概要
LDAP の認証方法でキャプティブポータル (カスタム認証画面) を選択した場合、Web アクセスを行うと、以下のようなブラウザの証明書エラーが表示されることがあります。
キャプティブポータル利用時に証明書エラーを表示させないようにするには、以下の手順で新たに秘密鍵と証明書を生成し、既存のものと置き換えてください。
キャプティブポータル利用時に証明書エラーを表示させないようにするには、以下の手順で新たに秘密鍵と証明書を生成し、既存のものと置き換えてください。
証明書 (キーストア) の生成
証明書に Subject Alternative Name (SAN) が指定されていないと、ブラウザ側で証明書が不正と判断され、エラーとなる場合があります。たとえば Google Chrome では、Subject Alternative Name (SAN) が指定されていない証明書に対して、「NET::ERR_CERT_COMMON_NAME_INVALID」のエラーメッセージでアクセスを拒否します。
本動作を回避するには、証明書を作成する前に、以下の手順を追加で実施してください。
- openssl.cnf をバックアップした後に vi で開いて編集します。
--------------------------------------------------
# cp /etc/pki/tls/openssl.cnf /etc/pki/tls/openssl.cnf.org
# vi /etc/pki/tls/openssl.cnf
-------------------------------------------------- - [alternate_names] セクションを追加して、以下のように IWSS/IWSVA のホスト名を追加します。
--------------------------------------------------
[alternate_names]
DNS.1 = iwsva.example.com <--- IWSS/IWSVA のホスト名を指定します。
DNS.2 = example.com <--- 他のホスト名が存在する場合は、DNS.2、DNS.3 と続けて指定します。
-------------------------------------------------- - [v3_ca] セクションに「subjectAltName = @alternate_names」を追加します。
--------------------------------------------------
[v3_ca]
subjectAltName = @alternate_names
--------------------------------------------------
- 初期設定の秘密鍵と証明書をバックアップします。
# cd /var/iwss/https/captive_portal/
# mv captive_portal.cert captive_portal.cert.orginal
# mv captive_portal.pkey captive_portal.pkey.orginal
# mv captive_portal.cert captive_portal.cert.orginal
# mv captive_portal.pkey captive_portal.pkey.orginal
- 新たに秘密鍵と証明書を作成します。
# openssl req -x509 -newkey rsa:2048 -keyout captive_portal.pkey -out captive_portal.cert -sha256
例) 1年間 (365日) 有効な証明書を作成する
# openssl req -x509 -newkey rsa:2048 -keyout captive_portal.pkey -out captive_portal.cert -sha256 -days 365
Generating a 2048 bit RSA private key
.................................................................................................................................+++
...........................+++
writing new private key to 'captive_portal.pkey'
Enter PEM pass phrase: ← パスワードを入力
Verifying - Enter PEM pass phrase: ← パスワードを再入力
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]: ← 国名を入力
State or Province Name (full name) []: ← 都道府県名を入力
Locality Name (eg, city) [Default City]: ← 市町村区を入力
Organization Name (eg, company) [Default Company Ltd]: ← 国名を入力
Organizational Unit Name (eg, section) []: ← 組織名を入力
Common Name (eg, your name or your server's hostname) []: ← IWSS/IWSVAのホスト名を入力
Email Address []: ← Eメールアドレス入力
#
例) 1年間 (365日) 有効な証明書を作成する
# openssl req -x509 -newkey rsa:2048 -keyout captive_portal.pkey -out captive_portal.cert -sha256 -days 365
Generating a 2048 bit RSA private key
.................................................................................................................................+++
...........................+++
writing new private key to 'captive_portal.pkey'
Enter PEM pass phrase: ← パスワードを入力
Verifying - Enter PEM pass phrase: ← パスワードを再入力
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]: ← 国名を入力
State or Province Name (full name) []: ← 都道府県名を入力
Locality Name (eg, city) [Default City]: ← 市町村区を入力
Organization Name (eg, company) [Default Company Ltd]: ← 国名を入力
Organizational Unit Name (eg, section) []: ← 組織名を入力
Common Name (eg, your name or your server's hostname) []: ← IWSS/IWSVAのホスト名を入力
Email Address []: ← Eメールアドレス入力
#
- 作成された秘密鍵と証明書のパーミッションを変更し、所定のディレクトリに上書きします。
# chown iscan:iscan captive_portal.pkey
# chown iscan:iscan captive_portal.cert
# chmod 644 captive_portal.pkey
# chmod 644 captive_portal.cert
# chown iscan:iscan captive_portal.cert
# chmod 644 captive_portal.pkey
# chmod 644 captive_portal.cert
- 手順2で設定したパスワードに対し、暗号化したパスワードを生成します。
# /usr/iwss/bin/encpw {手順2のパスワード}
例) passwordという文字列を暗号化する場合
[root@iwsva65shup iscan]# /usr/iwss/bin/encpw password
!CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396A
例) passwordという文字列を暗号化する場合
[root@iwsva65shup iscan]# /usr/iwss/bin/encpw password
!CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396A
- /etc/iscan/intscan.iniをviエディタなどで開き、手順4で生成した暗号化したパスワードをcaptive_portal_certpwd列に設定します。
# vi /etc/iscan/intscan.ini
例) !CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396Aを設定する場合
- 変更前:
captive_portal_certpwd=!CRYPT!2092C89A582D52C4223A9CBFB62280F1B0E4B6E7C3E
- 変更後:
captive_portal_certpwd=!CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396A
例) !CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396Aを設定する場合
- 変更前:
captive_portal_certpwd=!CRYPT!2092C89A582D52C4223A9CBFB62280F1B0E4B6E7C3E
- 変更後:
captive_portal_certpwd=!CRYPT!20BB1F54BB80FB01A1EF9E99DB195ED57244822396A
- HTTP サービスを再起動します。
# /etc/iscan/S99ISproxy stop
# /etc/iscan/S99ISproxy start
# /etc/iscan/S99ISproxy start
- HTTP サービス再起動中は Web アクセスが中断されます。
ブラウザへの証明書のインストール
以下は Internet Explorer 8 の場合の手順です。
- Internet Explorer を開いて Web アクセスを行います。証明書エラー画面が表示されたら、「このサイトの閲覧を続行する (推奨されません)。」をクリックします。
- キャプティブポータルが表示されたら、アドレスバーの横にある [証明書エラー] をクリックして、証明書を表示させます。
- 「発行先」が IWSS のホスト名 (FQDN) になっていることを確認し、[証明書のインストール] をクリックして、証明書をインストールします。
証明書ストアは必ず「信頼されたルート証明機関」を指定してください。
ブラウザへの証明書のインストール後も証明書エラーが表示されてしまう場合の対処方法
IWSSまたはIWSVAでは、HTTPS サイトへアクセスした場合に一旦IWSSまたはIWSVA自身の CA 証明書で署名した証明書をクライアントへ送信し、最終的にキャプティブポータルの画面にリダイレクトさせます。
そのため、"https復号化"機能が有効/無効にかかわらず、IWSSまたはIWSVA の CA 証明書が"ブラウザの信頼する証明機関"にインポートされていない場合、証明書の警告メッセージが表示されます。
本問題を解決するためには、[CA公開鍵の取得]からIWSSまたはIWSVA の CA 証明書をクライアントのブラウザにインストール必要があります。
詳細な手順につきましては、こちらの製品Q&Aをご参照ください。
そのため、"https復号化"機能が有効/無効にかかわらず、IWSSまたはIWSVA の CA 証明書が"ブラウザの信頼する証明機関"にインポートされていない場合、証明書の警告メッセージが表示されます。
本問題を解決するためには、[CA公開鍵の取得]からIWSSまたはIWSVA の CA 証明書をクライアントのブラウザにインストール必要があります。
詳細な手順につきましては、こちらの製品Q&Aをご参照ください。