* クライアント証明書による認証 [#g7577a61]

** CAを作る [#fba01063]
 cp /usr/lib/ssl/misc/CA.sh .
 cp /usr/lib/ssl/openssl.cnf .
 SSLEAY_CONFIG="-config ./openssl.cnf" DAYS=3650 CATOP=myCA ./CA.sh -newca

*** openssl.cnf [#ned2f049]
 dir = ./myCA
 countryName_default     = JP
 stateOrProvinceName_default = .
 0.organizationName_default  = .

** サーバ証明書を作る [#x80ec24e]
 openssl genrsa -rand /var/log/maillog -out server.key 1024
 openssl req -config ./openssl.cnf -new -key server.key -out server.csr
 openssl ca -config ./openssl.cnf -in server.csr -out server.crt

** クライアント証明書を作る [#ic633236]
 openssl genrsa -rand /var/log/messages -out client.key 1024
 openssl req -config ./openssl.cnf -new -days 3650 -key client.key -out client.csr 
 openssl ca -config ./openssl.cnf -in client.csr -out client.crt
 openssl pkcs12 -export -inkey client.key -in client.crt -out client.p12 -name "Client Certificate"

** Apacheの設定を変更する [#c26e4e0b]
 SSLCertificateFile    /etc/apache2/ssl/server.crt
 SSLCertificateKeyFile /etc/apache2/ssl/server.key
 
 SSLCACertificatePath /etc/apache2/ssl/ca
 SSLCACertificateFile /etc/apache2/ssl/ca/cacert.pem
 
 SSLVerifyClient require
 SSLVerifyDepth  10

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS