2013年4月14日日曜日

StartSSL更新を行う

先日、StartComの証明書を更新したのですが、忘れないように手順を残しておきます。

コントロールパネルログイン用の証明書の更新

StartComで作成した証明書の有効期限2週間前になるとメールが来ます。
メールは「コントロールパネルログイン用の証明書」と「サーバーのSSL証明書」の期限が来るのですが、文面が似ているので「コントロールパネルログイン用の証明書」の更新を忘れないようにしましょう。

認証

StartSSL™ Certificates & Public Key Infrastructureのページに行き、Authenticateからログインします。証明書がインストールされていない場合

その際ブラウザに一年前に作成した「コントロールパネルログイン用の証明書」がインストールされている必要があります。 証明書がインストールされていないと、次のような画面が表示されます。
Operaには証明書がインストールされていなかったので、この画面が出てちょっと焦った。
証明書がインストールされていない場合

証明書がインストールされているブラウザで開くと証明書の要求ダイアログが出ますのでOKを選択します。証明書がインストールされている場合

無事認証が完了すると下記の画面が表示されますので”Control Panel”をクリックして進みます。認証後の画面

“Control Panel”画面に進むと下記の画面になりますので、”Validations Wizard”を選択します。Control Panel画面

Email Address Validation

“Select Validation”画面が表示されますので、Email Address Validation を選択します。
Select Validation画面

“Enter Email Address”画面に移りますので、自分のメールアドレスを入力しContiuneを押下します。Enter Email Addres画面

“Complete Validation”画面が表示された後しばらくして、入力したメールアドレスにメールが送信されますComplete Validation画面

送信されたメールにはVerification Codeが送られてきます。

This mail is intended for the person who requested verification of email ownership at StartSSL™ (http://www.startssl.com).
		
Your verification code is XXXXXXXXXXXXXXXX  
Copy and paste this code now into the form at your open browser window.
	
Thank you!
	
StartCom Ltd.  
StartSSL™ Certification Authority

ここに記載されているコードをVerification Codeに入力します。Verification Codeを入力

Verification Successの画面が出たら終了です。
Email Address Validationは30日間有効なので、その間にDomain Name Validationを行いクライアント証明書を入手する必要があります。Verification Success画面

Domain Name Validation

“Validations Wizard”を選択し”Select Validation”画面を表示させます。今度はDomain Name Validationを選択します。Domain Name Validationを選択

次にドメイン名を入力します。ここではトップレベルのドメイン名を入力します。たとえば foo.invalid.com の場合はinvalid.comを入力します。ドメイン名の入力

Verification Codeを送るメールアドレスを選択してContinueを押下します。(なんか文字化けしてるものがありますね。)ドメイン名の入力

“Complete Validation”画面が表示された後しばらくして、Email Address Validationと同様に選択したメールアドレスにメールが送信されますComplete Validation画面

送信されたメールにはVerification Codeが送られてきます。

This mail is intended for the person who requested verification of domain control at 
StartSSL™ (http://www.startssl.com).

Your verification code is OOOOOOOOOOOO
Copy and paste this code now into the form at your open browser window.

Thank you!

StartCom Ltd.
StartSSL™ Certification Authority

ここに記載されているコードをVerification Codeに入力します。Verification Codeを入力

Verification Successの画面が出たら終了です。
Domain Name Validationも30日間有効なので、30日以内にクライアント証明書を入手する必要があります。Verification Success画面

クライアント証明書の更新

Cerifications Wizardを選択してSelect Cretificate Purpose画面を表示させ、”S/MIME and Authentication Certificate”の選択し次に進みます。Select Cretificate Purpose画面

Generate Private Key画面で”高強度の暗号化”を選んで次に進みます。Generate Private Key画面

Select Email Address画面ではSecure Hash Algorithmを”SHA2”にして次に進みます。Select Email Address画面
これで成功すれば、Congratulations!画面になり、ブラウザにクライアント証明書が自動的にインストールされます。Congratulations画面

クライアント証明書のバックアップ

クライアント証明書が失われてしまった場合に、startSSLにログイン出来なくなりますので証明書のバックアップをしておきます。 Firefoxの詳細画面を表示して「証明書の表示」を押下します。

Firefox詳細画面

先ほどインストールされた証明書を選択して、「バックアップ」押下しファイルへ保存します。

証明書マネージャー画面

サーバー証明書の更新

Cerifications Wizardを選択してSelect Cretificate Purpose画面を表示させ、”Web Server SSL/TLS Certificate”の選択し次に進みます。Select Cretificate Purpose画面

Generate Private Key画面では、Private Keyは以前サーバ上で作成したキーを再利用しますのでskipを押下して次に進みます。Select Cretificate Purpose画面

Submit Certificate Request画面では、以前作成した証明書署名要求ファイルserver.csrをフォームにコピペする。Select Cretificate Purpose画面
作成したファイルが見つからない場合は下記のようにして証明書署名要求ファイルserver.csrを再度作成します。

証明書要求の作成 手順(server.csr)

$ su
# cd /etc/ssl/private
サーバー秘密鍵の作成 (server.key)
# openssl genrsa -out server.key -aes256 4096
パスフレーズを削除
# openssl rsa -in server.key -out server.key
証明書要求の作成(server.csr)
# openssl req -new -key server.key -out server.csr
#

証明書署名要求ファイルに問題が無ければ下記の画面が出ますので次にいきます。Select Cretificate Purpose画面

証明書に紐付けるドメインを選んで次にいきます。Select Cretificate Purpose画面

証明書に紐付けるサブドメインを選んで次にいきます。Select Cretificate Purpose画面

確認画面が出ますので次にいきます。Select Cretificate Purpose画面

作成されたサーバー証明書が、テキストアリアの中に表示されますので、コピーしてfoobar.com.crtとファイル名を付けてセーブします。FinishをクリックするとThank you画面に遷移して終了です。

Select Cretificate Purpose画面

サーバー側の設定

証明書の作成が終了したならば、サーバー側のファイルを新しい証明書を使って更新します。

以前のファイルをバックアップ

$ su
# cd /etc/ssl/startssl
# cp foobar.jp.crt foobar.jp.crt.old
# cp imapd.pem imapd.pem.old
# cp postfix.pem postfix.pem.old
#

新しいサーバー証明書のコピー

# mv ~/foobar.jp.crt /etc/ssl/startssl

startSSLの証明書が無い場合はダウンロードしておくこと。

# cd /etc/ssl/startssl
# wget https://www.startssl.com/certs/ca.pem
# mv ca.pem startssl.ca.pem
# wget https://www.startssl.com/certs/sub.class1.server.ca.pem
# mv sub.class1.server.ca.pem starssl.sub.class1.server.ca.pem
# wget https://www.startssl.com/certs/ca-bundle.pem
# mv ca-bundle.pem startssl.ca-bundle.pem
#

postfixの設定

# cat foobar.jp.crt startssl.sub.class1.server.ca.pem startssl.ca.pem > postfix.pem

/etc/postfix/main.cfには次の記述

smtpd_tls_cert_file = /etc/ssl/startssl/postfix.pem
smtpd_tls_key_file  = /etc/ssl/private/server.key

リスタートして接続確認

# /etc/rc.d/postfix restart
# openssl s_client -connect localhost:smtps -CAfile /etc/ssl/startssl/startssl.sub.class1.server.ca.pem

imapの設定

# cat /etc/ssl/private/server.key foobar.com.crt startssl.sub.class1.server.ca.pem startssl.ca.pem > imapd.pem

/etc/courier/imapd-sslには次の記述

TLS_CERTFILE=/etc/ssl/startssl/imapd.pem

リスタートして接続確認

# /etc/rc.d/courier_imap_ssl restart
# openssl s_client -connect localhost:imaps -CAfile /etc/ssl/startssl/startssl.sub.class1.server.ca.pem

0 コメント:

コメントを投稿