Appleが2017年の1月から全てのアプリでATSを必須にするっぽい、ということで今更ながらSSL対応することに。
以前から目をつけていた、Let’s Encryptを使ってみようということで、そのメモです。
Let’s EncryptはInternet Security Research Group (ISRG) が提供している無料の認証局です。
すでに独自ドメインにてwebサーバーが稼働しているサーバー(CentOS6+apache2.2)を対象に一気にSSL化します。
cd /usr/local/ git clone https://github.com/certbot/certbot cd certbot/ ./certbot-auto ./certbot-auto certonly --webroot \ -w /path/to/www \ -d example.com \ -m info@example.com \ --agree-tos
これで
/etc/letsencrypt/
以下に必要なファイルができるので、httpd.confに
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
などと加えて完了。後は、
・ファイヤウォール等で443を開けてやる
・apacheにmod_ssl等が無ければ加える
・httpd.confで443をLISTENする
あたりを忘れずに。
あと、証明書の有効期限が90日程度なので、定期的に更新する必要があるようです。
更新のテスト
/usr/local/certbot/certbot-auto renew --force-renew --dry-run
crontabに登録
crontab -e 00 05 01 * * /usr/local/certbot/certbot-auto renew --force-renew && /etc/init.d/httpd2 restart
割と簡単♪
安全性のチェックなど
SSL Server Test – QUALYS SSL LABS
メジャーなHTTPサーバー向けに最適なSSL configを生成してくれる
Mozilla SSL Configuration Generator
参考
Let’s Encrypt サーバー証明書の取得と自動更新設定メモ – あぱーブログ
Let’s Encrypt で手軽に HTTPS サーバを設定する – Qiita
Let’s Encrypt の使い方
Webに接続するiOSアプリは2017年1月からHTTPSの使用が絶対条件になる、デベロッパーはご注意を = TechCrunch