AWS EC2環境に無料SSLを構築メモ

前回に引き続きAWS環境構築メモ。今回は無料SSL証明書のLet’s Encryptを使用してSSL対応を行います。

mod_sslインストール

前回のapacheイントール時にmod_sslを入れてなかったので、mod_sslをインストールします。apache2.4をインストールしましたので、mod_sslのインストールコマンドは下記になります。

sudo yum install mod24_ssl

Certbotのインストールと実行

CertbotはLet’s EncryptのSSL証明書の取得・更新、サーバーへの設置・設定を自動で行うプログラムです。インストールはGitHubからクローンを行いますので、まずはgitのインストールを行います。

sudo yum install git

次にCertbotをインストールします。今回はユーザーのホームディレクトリにインストールして実行します。

cd ~
# Certbotインストール
git clone https://github.com/certbot/certbot
cd ~/certbot
# Certbot実行
./certbot-auto --debug

AWS環境で行うには–debugオプションが必須のようです。

Certbot実行中に複数回入力を求められます。

Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): 
緊急の更新とセキュリティ通知のためのメールアドレスを入力します。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: 
利用規約を読んで同意する場合は A を入力します。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o:
Electronic Frontier Foundationというところにメールアドレスを共有してもいいかどうか。ニュースやキャンペーン情報が送られてくるみたいです。とりあえず Y を入力。
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: sawara.me
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel): 
どのホストでSSLを有効にするか選択します。サーバーのホストの一覧が表示されますので、表示されている数字を入力します(表示されているホストはバーチャルホストの設定「/etc/httpd/conf.d/*.conf」を見てるっぽい)。今回はこのブログに設定するので 1 を選択。
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
サーバーへのリクエストをhttpsにリダイレクトするか否か。今回はリダイレクトしたいので、 2 を入力します。

以上でインストールは完了です。これだけの手順でSSLが有効になり、https://sawara.meが使用できるようになりました。

有効期限と更新

Let’s Encryptで発行した証明書の有効期限は90日間になっています。

証明書を更新するには下記コマンドを入力します。証明書の更新は有効期限まで30日以内で実行可能です。

cd ~/certbot
./certbot-auto renew

以上でEC2環境へのSSL対応が完了です。あとは更新を忘れないように気をつけないと。

コメントを残す