無料のSSLLet’s Encryptをインストールして使ってみる

SSLといえば有料で購入するというイメージがあります。有名どころではGMOグローバルサイン、シマンテック(旧ベリサイン)、ジオトラストなどがあります。年間で毎年何万円もかかるため懸念されがちであります。

実際にSSLの価格を調べて見る

  • グローバルサイン:クイック認証¥34,800
  • シマンテック:Secure Site¥49,800
  • ジオトラスト:クイックSSL¥11,880

有名どころではやはり高いです。シマンテックは年間5万円近くかかります。各サイトの一番グレードの低いSSLですが、各企業により基準などが異なるためどれが一番良いかなどは言えません。例えばシマンテックの一番低いグレードはグローバルサインの企業認証と同等かもしれませんがこのあたりはわかりません。

SSLのほうで全て同じ基準なのはEVSSLになりますが今回は触れません。

格安SSLの価格を調べてみる

最近は共用サーバーでも格安なSSLを導入されるようになったりしています。格安SSLで有名どころはラピットSSL、kingSSLなどがあります。

  • ラピッドSSL:¥4,300
  • アルファSSL:¥6,000
  • KinkSSL:¥900

ラピッドSSLはジオトラストでアルファSSLとKingSSLはグローバルサイン系列みたいです。格安SSLはグローバルサインでいうところのドメイン認証と同じレベルの認証となります。価格だけで言えば年間1万円いかないで安いです。

無料のSSLも存在する

無料のSSLも存在します。それがStartSSLLet’s Encryptです。StartSSLは1年間有効ですがインストールや設定が面倒なのでやっていませんでした。今回Let’s Encryptを選んだのは設定がStartSSLよりも楽になるからです。ただし有効期限が90日と短いので更新を定期的にしないといけません。

CentOS6、7でも可能

実際にPhotoshoplabではCentOS6、Apache2.4.18で動いています。基本的にApacheやnginxが対応していればOSは何を使っていても多分問題ないかと思います。

実際にインストールしてみる

作業は基本的に全てrootユーザーとなります。また、SSL用のポート(443)は開いている前提となります。

事前準備

# yum -y install httpd openssl mod_ssl
# yum -y install git

gitとSSLをインストールします。

Let’s Encrypt Client のインストール

# git clone https://github.com/letsencrypt/letsencrypt
# cd letsencrypt
# ./letsencrypt-auto --help
./letsencrypt-auto certonly --webroot -w /var/www/html -d www.photoshoplab.jp

今回は公開ディレクトリをデフォルトの/var/www/htmlを指定しています。ドメインはphotoshoplab.jpを指定しています。しかしphotoshoplabはwww付きを普段からつかっているためドメイン名にはwwwがありで登録しています。

pic01

↑インストール途中にメールアドレスを聞かれるので入力して了解をクリックします。

pic02

↑利用規約になります。Agreeを押します。

インストールすると以下のようなメッセージがでます。

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/aruse.top/fullchain.pem. Your cert will
   expire on 2016-07-12. To obtain a new version of the certificate in
   the future, simply run Let's Encrypt again.
 - If you lose your account credentials, you can recover through
   e-mails sent to xxxxx@gmail.com.
 - Your account credentials have been saved in your Let's Encrypt
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Let's
   Encrypt so making regular backups of this folder is ideal.
 - If you like Let's Encrypt, please consider supporting our work by:
 
   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

証明書の設定

証明書の設定をしていきます。

# vi /etc/httpd/conf.d/ssl.conf
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
 
SSLCertificateFile /etc/letsencrypt/live/www.photoshoplab.jp/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.photoshoplab.jp/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/www.photoshoplab.jp/chain.pem

設定が終わったら今度はApacheの設定を変更します。

Apacheの設定

# vi /etc/httpd/conf.d/photoshoplab.conf
<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/www.photoshoplab.jp/cert.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/www.photoshoplab.jp/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/www.photoshoplab.jp/chain.pem
 
    ServerAdmin root@photoshoplab.jp
    DocumentRoot /var/www/html
    ServerName photoshoplab.jp
    ServerAlias www.photoshoplab.jp
</VirtualHost>

ServerAliasを設定することでwww.でアクセスしたときでもアクセスできるようになります。

Apacheの再起動

/etc/init.d/httpd restart

で再起動します。

参考サイト:http://www.websec-room.com/2015/12/04/2380