SSL 設定

■秘密鍵作成
openssl genrsa -des3 1024 > /usr/share/ssl/private/key.pem
※rand — 鍵生成時に用いるファイルで、ランダム性の十分なファイルを指定するとあるが、適当なログファイルなどでもOK。省略するとディフォルトで/dev/urandom,/dev/randomを使用する。
※des3 — 暗号化の方式で一番強力。ほかにdesやideaなどが指定できる。
※1024 — 生成する鍵のbit数。ディフォルト512。パフォーマンスに関わる。512~1024が妥当。

この後、起動時に利用するパスワード入力あり。

■参照時パスワード入力解除
openssl rsa -in /usr/share/ssl/private/key.pem -out /usr/share/ssl/private/key.pem
※inで指定したファイルをoutで書き出す。この場合上書き。
※これを行わない場合、Apache起動ごとにパスフレーズが要求される。
※これを行った場合、セキュリティーは低下する。

再度パスワード入力必要。

■CSR作成
openssl req -new -key /usr/share/ssl/private/key.pem -out /usr/share/ssl/csr.pem

この後、対話的な入力あり。

Country Name 国(例:JP)
State or Province Name 都道府県(例:Miyagi)
Locality Name 市区町村(例:Sendai)
Organization Name 組織(例:Syokunin Co.,Ltd.)
Organizational Unit Name 部署※
Common Name ドメイン
Email Address メールアドレス
A challenge password パスワード※
An optional company name 会社名※

※はEnterで省略

■証明書作成
openssl x509 -in /usr/share/ssl/csr.pem -out /usr/share/ssl/certs/httpsd.pem -req -signkey /usr/share/ssl/private/key.pem

※自分で作成する場合。

■httpd.conf編集例
<IfDefine HAVE_SSL>
Listen 443
SSLSessionCache shm:/var/cache/ssl_gcache_data(524288)
<VirtualHost _default_:443>
DocumentRoot /var/www/html/
SSLEngine on
SSLCertificateFile /usr/share/ssl/certs/httpsd.pem
SSLCertificateKeyFile /usr/share/ssl/private/key.pem
SSLVerifyClient 0
SSLVerifyDepth 10
<Files ~ “\.(cgi|shtml)$”>
SSLOptions +StdEnvVars
</Files>
<Directory /home/httpd/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
CustomLog /var/log/httpd/ssl_request_log \
“%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \”%r\” %b”
</VirtualHost>
</IfDefine>

■httpd再起動
/etc/rc.d/init.d/httpd restart

コメントを残す

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

CAPTCHA