Let’s Encryptを使ったSSL証明書の所得方法

環境

Amazon Linux + Apache

Certbot クライアントのインストール

Amazon Linuxの場合、wgetでソースを落とし、直接インストールする必要がある。

$ wget https://dl.eff.org/certbot-auto

ここで、このような文章が出てくる。

Requesting to rerun ./certbot-auto with root privileges...
FATAL: Amazon Linux support is very experimental at present...
if you would like to work on improving it, please ensure you have backups
and then run this script again with the --debug flag!
Alternatively, you can install OS dependencies yourself and run this script
again with --no-bootstrap.

これは大まかに言うと,Amazon linuxではCertbotは実験段階で、バックアップをとっておくことをおすすめしますよといった内容が書いてある。

$ ./certbot-auto --debug

–debugオプションを付けることでバックアップをとっておく。

これでCertbotクライアントのインストールは完了だ。

証明書の所得

./certbot-auto certonly --webroot -w [ドキュメントルート] -d [ドメイン]

上記のコマンドを打ち、証明書を入手する。この時、–webrootコマンドを打つことにより、サーバーを停止させることなく所得できる。

所得が完了すると、

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/[ドメイン名]/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/[ドメイン名]/privkey.pem
   Your cert will expire on 2018-02-14. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again. To non-interactively renew *all* of your certificates, run
   "certbot-auto renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

この表示が表れる。どこのパスにあるかは、

$ cd /etc/letsencrypt/live/[ドメイン名]/
$ ls

上記のコマンドを入力すると出てくる。

cert.pem  chain.pem  fullchain.pem  privkey.pem  README

このようなコードが出てきていれば、証明書ファイルの生成は完了だ。

mod_SSL

次に、Apacheにmod_SSLをインストールする。

$ yum install -y mod24_ssl

ssl.confを修正する

$ vi /etc/httpd/conf.d/ssl.conf 
以下を記述
SSLCertificateFile /etc/letsencrypt/live/[ドメイン名]/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/[ドメイン名]/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/[ドメイン名]/chain.pem

最後に、

service httpd restart

Apacheを再起動して完了だ。

この手順を踏むことによってSSL証明書を所得することができる。