クライアント認証とは、鍵がなければ見れないコンテンツを作成する場合に使います。

パスワード等を使用して開くサイト等よりも強力で、作成した鍵を持っていない第三者からコンテンツを守る為に使用されます。 また、サーバーで鍵を簡単に無効にすることが出来る為、何かあった時にすぐに対応できます。

 

1.

作業用フォルダを作成する。[AAAA]

認証フォルダ作成
/etc/ssl/AAAA
/etc/sslから、AAAAを作成
mkdir AAAA

作成したAAAAにて以下の作業を行う

2.

秘密鍵作成
openssl genrsa -out private.pem 1024

3.

署名要求書作成(Appachサーバ起動時にパスワードを聞かれないように、パスワード無しで作成する。Common NameをCA認証局の情報と一致させること)
openssl req -new -key private.pem -out request.pem

Country Name (2 letter code) [JP]:
State or Province Name (full name) [Osaka]:
Locality Name (eg, city) []:Osaka
Organization Name (eg, company) [xxkaisya]:
Organizational Unit Name (eg, section) []:soft1
Common Name (eg, YOUR name) []:Taro
Email Address []:このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。

4.

署名要求書をCA認証局により署名する(デフォルトポリシーにて署名 10年分)
openssl ca -days 3650 -policy policy_anything -out ./cert-ca.pem -infiles request.pem

 

5.

PKCS12形式作成  ブラウザにて登録する為に必要

openssl pkcs12 -export -inkey private.pem -in cert-ca.pem -out client.p12

 

6.

Appacheサーバ設定

Listen 443

<VirtualHost _default_:443>

SSLEngine on
SSLCertificateFile "/etc/ssl/AAAA/cert-ca.pem"
SSLCertificateKeyFile "/etc/ssl/AAAA/private.pem"
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL

SSLCACertificatePath "/etc/ssl/CA2"
SSLCACertificateFile "/etc/ssl/CA2/cacert.pem"     <-CA認証局作成にて作成した証明書

</VirtualHost>

 

おまけ.

証明書の無効化
openssl ca -revoke /etc/ssl/AAAA/cert-ca.pem

 

Joomla templates by a4joomla