ApacheやVsftpdなど、SSLを利用する際に証明書を機関に発行してもらうと費用が発生するので、今回は自己署名証明書を作成するための認証局を構築する。
まず最初にCAを作成するために、コンフィグファイルを変更する。
この設定をしておかないとCAの証明書にEnd Entity制限が付いてしまうので,CAが発行するWebサーバの証明書の検証に失敗する。
# cd /etc/pki/tls/ ←カレントディレクトリの変更 # cp openssl.cnf oepnssl.cnf.bak ←バックアップ # vi openssl.cnf ←OpenSSLのコンフィグファイルを変更 [ usr_cert ]の項の下記の部分を変更する - basicConstraints=CA:FALSE + basicConstraints=CA:TRUE
また、今回は/etc/pki/CAにファイルができてほしかったので、/etc/pki/tls/miscでCAを実行した。
# cd /etc/pki/tls/misc # ./CA -newca mkdir: ディレクトリ `../../CA' を作成できません: ファイルが存在します mkdir: ディレクトリ `../../CA/private' を作成できません: ファイルが存在します CA cretificate filename (or enter tocreate) <---上位CAがあれば指定 Making CA certificate ... Generating a 1024 bit RSA private key ...................................++++++ .....++++++ writing new private key to '../../CA/private/./cakey.pem' Enter PEM pass phrase: <---CAの秘密鍵を入力 Verifying - Enter PEM pass phrase: <---CAの秘密鍵を入力 ----- 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) [GB]:JP State or Province Name (full name) [Berkshire]:Tokyo Locality Name (eg, city) [Newbury]:Chiyoda Organization Name (eg, company) [My Company Ltd]:Cecily.JP Organizational Unit Name (eg, section) []:Certification Authority Common Name (eg, your name or your server's hostname) []:ca.cecily.jp Email Address []:[email protected] Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: <---空白でEnter An optional company name []: <---空白でEnter Using configuration from /etc/pki/tls/openssl.cnf Enter pass phrase for ../../CA/private/./cakey.pem: <---CAの秘密鍵を入力 Check that the request matches the signature Signature ok Certificate Details: Serial Number: 0 (0x0) Validity Not Before: May 3 06:53:04 2008 GMT Not After : May 3 06:53:04 2011 GMT Subject: countryName = JP stateOrProvinceName = Tokyo organizationName = Cecily.JP organizationalUnitName = Certification Authority commonName = ca.cecily.jp emailAddress = [email protected] X509v3 extensions: X509v3 Basic Constraints: CA:TRUE Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: 08:67:DF:6C:1D:6D:B1:A4:CB:C2:55:DB:3B:B0:00:59:D4:2F:28:15 X509v3 Authority Key Identifier: keyid:08:67:DF:6C:1D:6D:B1:A4:CB:C2:55:DB:3B:B0:00:59:D4:2F:28:15 Certificate is to be certified until May 3 06:53:04 2011 GMT (1095 days) Write out database with 1 new entries Data Base Updated
出来上がったファイルの名前がなんとなく気に入らないので修正しておく。
# mv /etc/pki/CA/cacert.pem /etc/pki/certs/ca.crt# mv /etc/pki/CA/private/cakey.pem /etc/pki/CA/private/ca.key
# mkdir /etc/pki/CA/csr/
# mv /etc/pki/CA/careq.pem /etc/pki/CA/csr/ca.csr
コメント