徒然なるままに

ぽんこつエンジニアの記憶を記します

Start SSL

      2016/02/10

Start SSL 無料SSLサーバ証明書を発行

無償で発行できるStart SSLのCLASS1証明書を実際に発行してみたいと思います。

最近StartSSLのWebサイトデザインが変わりましたので、画面キャプチャ付きで流れを残します。

※この記事を書いているのは2016年2月です。

StartSSL

StartSSLのサイトはこちらです。

残念ながら、日本語サイトは無いので英語で頑張ります。

StartSSL

サインアップ

まずはサインアップを行います。画面上部の"Sing-Up"を選択します。

サインアップ画面がでますので、注意書きを読んでいただいた上で登録フォームに国名と管理者のメールアドレスを入力します。

Sing-Up Form

CountryEmailに必要事項を入力し、Send verification codeを選択します。

記入したメールアドレス宛にVerification Codeが届きますので、フォームに入力します。

Verification Codeを入力すると、ブラウザにログイン用SSL証明書がダウンロードされますのでインストールします。

これで、今後はログイン用証明書をインストールしたブラウザから、SSL証明書を利用してログインが可能です。

ログイン

登録、メンテナンスでログインすることもありますので、ログインの仕方もメモします。

StartSSL TOPページの上部にあるLoginを選択します。

StartSSL_Login

Autenticateを選択すると、ブラウザ上にログインに利用するSSL証明書選択画面がでますので、サインアップ時に保存した証明書を選択します。

ログインするとコントロールパネルが表示され、Welcomeメッセージと各種プランの説明がでます。

ササッと登録に移りたいところですが、ドメイン認証をしないと手戻りが発生しますので、まずはドメイン認証を行います。

ドメイン認証

コントロールパネルのメインウィンドウにあるメニューバーからValidations Wizard(認証ウィザード)を選択します。

StartSSL_Menubar

Validations Wizard(認証ウィザード)に移行すると、認証種別選択に移ります。

StartSSL_Validations_Wizard

今回発行するCLASS1証明書はドメイン認証が必要となりますので、Domain Validation(ドメイン認証)を選択します。

StartSSL_Domain_Validations_01

ここで認証するのはドメインとなります。ホスト名ではありませんので注意ください。

例)証明書を発行したいサーバ名(FQDN):  www.hogehoge.com

○  hogehoge.com
×  www.hogehoge.com

ドメイン名を入力すると、ドメイン認証の確認コード送付さきとなるEmailアドレス選択画面となります。

StartSSL_Domain_Validations_02

受信可能なメールアドレスを選択すると、Verification code(認証コード)が送信されます。

※2016年2月現在ですと、webmaster, postmaster, hostmasterから選択が可能です。

選択したメールアドレス宛にVerification Codeが届きますので、フォームに入力します。

StartSSL_Domain_Validations_03

この画面がでてくると、ドメイン認証が完了です。

状況確認

各種状況はコントロールパネルの右側にステータスが表示されます。

StartSSL_Widits

例えばドメイン認証が完了していると、Domain Validations(ドメイン認証)にチェックがつきます

StartSSLのサーバ証明書種別

続いてSSLサーバ証明書の取得にすすめます。

今回はStartSSL CLASS1認証(ドメイン認証)のSSLサーバ証明書を取得します。

StartSSLのサービス内容を簡単にサマリします。

証明書種別 CLASS1 CLASS2 CLASS3 CLASS4
費用 無料 US$59.9 US$119.80 US$199.90
用途 個人、または非商用利用 個人 企業・団体利用 企業・団体利用
EV SSLサーバ証明書 - - - EV SSL対応証明書(100ドメインまで)
SSLサーバ証明書 ホスト用サーバ証明書
(1年有効、無制限)
ホスト用サーバ証明書
(2年有効、無制限)
ワイルドカード証明書
(最大100ドメインまで)
ホスト用サーバ証明書
(3年有効、無制限)
ワイルドカード証明書
(最大100ドメインまで)
ホスト用サーバ証明書
(3年有効、無制限)
ワイルドカード証明書
(100ドメインまで)
電子署名(S/MIME)用証明書 クライアント用(無制限) クライアント用(無制限) クライアント用(無制限) クライアント用(無制限)
コード署名証明書 なし 1つ発行可能 1つ発行可能(カーネルモード対応) 1つ発行可能(カーネルモード対応)
ドメイン認証方法 Email認証 Email認証 Email認証 Email認証
実在証明方法 - 2つ最新の法的な身分証明書
(パスポート+運転免許証か公的IDカード)
・申請者の2つ最新の法的な身分証明書
(パスポート+運転免許証か公的IDカード)
・ビジネスライセンス
・登記簿
・税務申告書の抜粋
・StartCOMフォーマットのドキュメント
(組織の代表者による委任状)
・申請者の2つ最新の法的な身分証明書
(パスポート+運転免許証か公的IDカード)
・ビジネスライセンス
・登記簿
・税務申告書の抜粋
・銀行口座証明かVOIDチェック
(VOIDと記入した小切手)
・StartCOMフォーマットのドキュメント
(2種類のフォームのいずれか
組織の代表者による承諾書と委任状、
または承諾書と弁護士による意見書)
・登録商標(可能であれば)
・DUNS番号(可能であれば)

CLASS1証明書は無料ということで不安に思うかもしれませんが、StartSSL発行の証明書は現行のブラウザであれば問題なく使えます。CLASS4のEV SSL証明書を取得すれば、ブラウザでのEV SSL証明書として認識されます。(IEであればグリーンラベルになります)

但し、1点だけ注意点があります。StartSSLの中間証明書がSHA1で署名されているとChrome系ブラウザで警告が出ます。

今後の手順でSHA2で署名された中間証明書を利用することにより回避が可能です。

StartSSL CLASS1証明書取得準備(CSR)

StartSSLコントロールパネルからCertificate Wizardを選択します。

Certificate WizardではWeb Server SSL/TLS Certificateを選択します。

StartSSL_CLASS1_01

SSLサーバ証明書を取得するホスト名(FQDN)を入力します。

StartSSL_CLASS1_02

続いて署名リクエスト(Certificate Signing Request:CSR)を作成します。

サーバコンソール上でopensslで作成しても良いのですが、今回はStartSSLのサイト上で進めます。

StartSSL_CLASS1_03

サーバ側でCSRを作成した際は、作成したCSRをフォームに貼り付けます。

StartSSLのサイト上で作成する場合は、Generated by PKI systemを選択します。

StartSSL_CLASS1_04

Keysize(キーサイズ)の選択とパスワード入力フォームが現れますので、適切に入力選びます。

StartSSL CLASS1 秘密鍵

入力すると秘密鍵(Private Key)が作成されますので、ダウンロードします。

StartSSL_CLASS1_05

この秘密鍵(Private Key)が漏えいすると通信を暗号化しても複合できますので、必ず厳密に管理してください。

StartSSL CLASS1公開鍵

続いて、公開鍵をダウンロードします。

ブラウザで画面右側のメニューからSSL/TLS Serverを開き、先ほど申請をしたドメイン名を選択します。

StartSSL_Widits

ホスト名を選択するとZIP形式で固められたSSL証明書一式をダウンロードできますので、操作している端末上の適切な場所に保管します。

このZIPファイルを展開すると、下記4つのさらにZIP形式で固められたSSL証明書一式がありますので、操作している端末上の適切な場所に保管します。

  • IISServer.zip
  • ApaheServer.zip
  • NgnixServer.zip
  • OtherServer.zip

利用する環境に応じて利用します。

StartSSL CLASS1 SSLサーバ証明書(CentOS 7 + Apacheでの例)

それではサーバ上でSSL証明書利用の準備を行います。

今回はDTI VPS(CentOS 7)上でApacheを使う前提でのメモとなります。

サーバのコンソールに入り、root権限になり証明書保管ディレクトリに移動します。

先ほどダウンロードしたファイル(ApacheServer.zip)の内容を上記ディレクトリに展開します。

続いて、同一ディレクトリ(/etc/pki/tls/certs)サーバ秘密鍵(Private Key)を設置します。

ファイル名は任意ですが、今回はserver.keyとします。

続いて、ApacheのSSL設定を行います。

一般的なCentOS 7 + Apacheの環境では、SSL設定ファイルは/etc/httd/conf.d/ssl.confとなります。

テキストでぃたでファイルを編集し、設定ファイルに下記を反映させます。

続いて証明書のパーミッションを変更します。

設定ファイルを保存したうえで、サーバへの適用を行います。

apachectlコマンドでapacheのコンフィグ確認&再起動を実施すれば反映です。

これで、StartSSL CLASS1 証明書の適用は完了です。

ブラウザにてSSLでアクセスし、SSL適用が確認できれば完了です。

(おまけ)既存サーバでの中間証明書更新

実は私もはまりましたが、以前StartSSLでSSLサーバ証明書を発行した場合、Chrome系ブラウザではSHA1で署名された中間証明書を利用しているため警告が出ることがあります。

その際の中間証明書更新をメモします。

まずStartSSLのルート証明書、中間証明書をダウンロードします。

最新のファイルリンクについてはStartSSLの証明書ダウンロードサイトで確認ください。

新規でセットアップする際はSHA2で署名された物を利用してください。
※以前作成された事例などで記載されたリンクはSHA1で証明されたものの可能性があります

続いてWebサーバのSSL設定を変更します。

今回はCentOS 7系統でApacheを利用するを想定します。

 

上記環境の一般的な環境ではSSL設定は/etc/httd/conf.d/ssl.confかと思います。

設定ファイルに下記を反映させます。

続いて証明書のパーミッションを変更します。

続いて、Webサーバへの適用を行います。

apachectlコマンドでapacheのコンフィグ確認&再起動を実施すれば反映です。

 

 

 

 

 - VPS, サーバ構築