CentOS の Apache でクライアント証明書認証

<追記>
ちょっと修正しましたので新しい記事はこちらです。
CentOS の Apache でクライアント証明書認証(修正版)
CentOSのApacheでクライアント証明書認証をしてみる。前にDebianでやったので基本は同じだけど、ファイルのパスが違ったりするので再度メモ
作業は「/var/www/ssl」で行い、独自認証局のフォルダは「/var/www/ssl/hogeCA」に作ります。また証明書の期限は30年(10950日)にしてあります。
◆作業準備
作業フォルダ作成

mkdir -p  /var/www/ssl

opensslの設定
/etc/pki/tls/openssl.cnf (CentOS5)
/usr/share/ssl/openssl.cnf (CentOS4)

> dir             = ./demoCA              # Where everything is kept
< dir             = ./hogeCA              # Where everything is kept

証明書のポリシーを変えたい場合(デフォルトはcountryName,stateOrProvinceName,organizationNameがCAと一致しないとだめなのでCA組織外に発行する場合に困る)<br />

policy          = policy_match

policy_matchを直下に定義してある「policy_anything 」に変えるとか、「policy_match」自体を変更するとか(下の例)
変更前

[ policy_match ]
countryName             = match
stateOrProvinceName     = match
organizationName        = match
organizationalUnitName  = optional
commonName              = supplied
emailAddress            = optional

変更後

[ policy_match ]
countryName             = supplied
stateOrProvinceName     = supplied
organizationName        = supplied
organizationalUnitName  = optional
commonName              = supplied
emailAddress            = optional

ちなみに

match    CAと同じじゃないとダメ
supplied 入力必須
optional あってもなくてもいい

CA作成スクリプトコピー

cp -p /etc/pki/tls/misc/CA /var/www/ssl/ (CentOS5)
cp -p /usr/share/ssl/misc/CA /var/www/ssl/ (CentOS4)

/var/www/ssl/CA

DAYS="-days 10950"
CADAYS="-days 10956"
CATOP=/var/www/ssl/hogeCA

◆認証局CAの作成

cd /var/www/ssl
./CA -newca
CA certificate filename (or enter to create)
止まるので改行をいれる
Making CA certificate ...
Generating a 1024 bit RSA private key
.............++++++
.......++++++
writing new private key to '/var/www/ssl/hogeCA/private/./cakey.pem'
Enter PEM pass phrase: CAの秘密鍵のパスフレーズ
Verifying - Enter PEM pass phrase: CAの秘密鍵のパスフレーズ確認

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA