【図解】初心者のためのhttps化~ZeroSSLからSSL サーバ証明書を発行・AWSのEC2にインストールする方法

【図解】初心者のためのhttps化~ZeroSSLからSSL サーバ証明書を発行・AWSのEC2にインストールする方法 テクノロジー
【図解】初心者のためのhttps化~ZeroSSLからSSL サーバ証明書を発行・AWSのEC2にインストールする方法

いちおう、備忘録的に書いている側面もあるので、「初心者のため」と言いつつも、ある程度の知識を有するユーザを想定しており、まったくの初心者だと、もしかしたら厳しいかもしれません。

ZeroSSL側の作業

アカウントへログインし「Dashboard」より「New Certificate」をクリックします。

アカウントへログインし「Dashboard」より「New Certificate」をクリックします。

ドメイン名を入力し、「Next Step」をクリックします。

ドメイン名を入力し、「Next Step」をクリックします。

証明書の有効期間を選択し、「Next Step」をクリックします。

証明書の有効期間を選択し、「Next Step」をクリックします。

「Auto-Generate CSR」をONにして、「Next Step」をクリックします。

「Auto-Generate CSR」をONにして、「Next Step」をクリックします。

基本的にはこのまま「Next Step」をクリックします。

基本的にはこのまま「Next Step」をクリックします。

ドメインの所有権を確認します。方法としては、

ドメインの所有権を確認します。方法としては、

Method 1: Email Verification
Method 2: DNS (CNAME)
Method 3: HTTP File Upload

の3つがありますが、ここでは「Method 2: DNS (CNAME)」を選択します。

Name:xxxxxxxx.domain.com(レコード名)
Point To:yyyyyyyyyyyyyyyyyyyyyyyyy.comodoca.com(値)

が表示されていると思いますが、これを次のステップに使います。

※ZeroSSL側の設定より「comodoca.com」以外のドメイン名が表示されることもありますが、気にする必要はありません。

AWSへでの作業

AWSのコンソールへログインします。

Route 53の ダッシュボードへアクセスすると、「DNS管理」のところに「ホストゾーン」が表示されているので、それをクリックします。

すると、ドメインの一覧が表示されるので、今回のドメインをクリックすれば、レコードのリストが表示されます。

まず、レコードタイプを「CNAME」にして、レコード名のところに、先ほどZeroSLLのName:xxxxxxxx.domain.com(レコード名)を入力します。

domain.comは既に表示されていると思いますので、「xxxxxxxx.」だけを入力します。「.」も忘れずに。

続いて、値のところには、Point Toのyyyyyyyyyyyyyyyyyyyyyyyyy.comodoca.com(値)を入力します。

最後にTTLは、「3600 (or lower)」という指示なので、それに従い設定します。

終わりましたら「レコードを作成」をクリックします。

xxxxxxxx.domain.com は正常に更新されました。
Route 53 は、60 秒以内にすべての Route 53 権威 DNS サーバーに変更を伝達します。[ステータスを表示] ボタンを使用して、伝達のステータスを確認します。

このメッセージが表示されれば、完了ですので、ZeroSSLに戻ります。

再びZeroSSLに戻る

「Next Step」をクリックし、更に「Verify Domain」をクリックします。

この画面が表示されれば、所有権の確認は完了されていますが、反映されるのに時間がかかる場合もありますので、時間を置いて再確認しましょう。

では、ここは「Default Format」のまま、Download Certificate(.zip)をクリックすれば、圧縮ファイルがダウンロードされます。

解凍してこの3つのファイルを手に入れましょう。

メモ帳でcertificate.crtを開き、後ろにca-bundle.crtの内容を追加しましょう(certificate.crt+ca-bundle.crtになります。)。

新しいcertificate.crtとprivate.keyの名前を変更します。

単一は問題ないが、複数のドメインの場合、

ここから、この2つのファイルをサーバにアップロードします。僕の場合は、それを統一に/etc/nginx/ssl/で管理しています。

アップロードしましたら、/etc/nginx/sites-available/default というファイルの当該ドメインの部分において、SSL証明書はどこにあるのかを記載します。

        ssl on;
        listen 443;
        ssl_certificate /etc/nginx/ssl/domain.com.crt;
        ssl_certificate_key     /etc/nginx/ssl/domain.com.key;

終わりましたら、apacheかnginx などを再起動させます。

うちは、nginx なので、

sudo service nginx restart

です。

再起動がうまく行かない場合は、

certificate.crtとca-bundle.crtの合併が正しく行われているか

certificate.crtとprivate.keyは正しい場所にアップロードされているか

設定ファイルは正しく記載されているか

を再確認しましょう。

問題がなければ、ZeroSLLにもどり「Check Installation」をクリックします。

この画面が出ていれば、成功したということになりますので、これ以降は、「https://」のURLでアクセスできるようになります。

コメント

タイトルとURLをコピーしました