Let’s Encrypt 無料SSLを試す!certbotで簡単設定

Server

sslを更新しようかと考えていてユーザーデータや課金データを扱うサイトではないので無料のSSLを試してみようかと Lets Encrypt https://letsencrypt.org を利用してみることにしました。

SSLの種類?無料で大丈夫?

SSLの認証の種類には

  1. ドメイン認証
  2. 組織認証
  3. EV

があり、

ドメイン認証は、ドメインを持っていることだけの認証、

組織認証は、組織が実在していることの認証、

EVは所在地の認証も行います。EVではブラウザのアドレスバーに組織名が表示されます。銀行や金融関連などを利用する時はフィッシング詐欺を避けるためアドレスバーの組織名も確認してみてください。

通信の暗号化のみを利用する場合は、ドメイン認証。ショッピングサイトなどサイトの信頼性・実在をユーザーに見せて安心感を持ってもらうには組織認証を利用するという使い分けになるかと思います。とりあえず、暗号化のみで問題ないサイトについてはドメイン認証のみの無料SSLを利用してみようと思います。

Let’s Encrypt https://letsencrypt.org は無料で、寄付で運用されているため状況によっては、いつまで利用できるかはわかりません。難しい状況になったら有料のSSLに切り替えます。

例えば有料のSSLでも https://www.ssls.com/ などでは、一番安いドメイン認証 2年契約で1年あたり3.77USDとなっています。1年契約では 5.88USD (2019/09現在)。いくつかのサイトを運営するには問題ない金額かと思います。信頼性重視のサイトでは国内に窓口のある組織認証を利用した方が良いでしょうね

certbotで簡単設定・自動更新!

https://certbot.eff.org/instructions こちらから、httpdのソフトウェアとサーバーを選択するとそのままコマンドの説明が表示されます!そのままでほぼ問題なく

certbot instructions

certbot install

# wget https://dl.eff.org/certbot-auto --no-check-certificate
# sudo mv certbot-auto /usr/local/bin/certbot-auto
# sudo chown root /usr/local/bin/certbot-auto
# sudo chmod 0755 /usr/local/bin/certbot-auto

centos6 は python3 をインストールしておく必要があります。 そして –no-bootstrap を付けて実行

# sudo /usr/local/bin/certbot-auto certonly --nginx --no-bootstrap

 Saving debug log to /var/log/letsencrypt/letsencrypt.log
 Plugins selected: Authenticator nginx, Installer nginx
 

 Which names would you like to activate HTTPS for?
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 1: groundroad.com
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Select the appropriate numbers separated by commas and/or spaces, or leave input
 blank to select all options shown (Enter 'c' to cancel): 1
 Obtaining a new certificate
 

 IMPORTANT NOTES:
  - Congratulations! Your certificate and chain have been saved at:
    /etc/letsencrypt/live/bbtune.com/fullchain.pem
    Your key file has been saved at:
    /etc/letsencrypt/live/bbtune.com/privkey.pem
    Your cert will expire on 2019-12-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

以下のファイルが生成されます。

# ls /etc/letsencrypt/live/groundroad.com/
 README  cert.pem  chain.pem  fullchain.pem  privkey.pem

こちらをnginxのconfigに反映させます。 sslの部分だけですがこのような形になります。

server { #
   ssl on;
   listen       443; 

   server_name  groundroad.com;
   ssl_certificate     /etc/letsencrypt/live/groundroad.com/fullchain.pem;
   ssl_certificate_key /etc/letsencrypt/live/groundroad.com/privkey.pem;
}

nginxを再起動すると無事SSLが有効になりました。

certbot 更新設定

/usr/local/bin/certbot-auto renew をcronに設定します。 証明書は90日間有効なので90日以内に更新します。 renewは60日経過しないと実行されないので毎日実行していても問題ありません。 とても簡単に設定できました。

ちなみにさくらのレンタルサーバーはletsencryptの無料SSLを簡単に利用できるようです。 独自のSSLのところもあるようですのでいろいろチェックしてみてください。

お気軽にコメントください!

スパム対応のためコメント認証に数日かかることがありますが、お気軽にコメントいただけると嬉しいです^^

コメント

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