無料のSSL証明書

WebサイトでHTTPSを有効にするには、認証局(CA)から証明書を取得する必要があります。 Let's EncryptはCAです...そして無料は常に良いです!

C05348A3-9AB8-42C9-A6E0-81DB3AC59FEB
           

Let's Encryptは、非営利のInternet Security Research Group(ISRG)によって提供される、無料の自動化されたオープンな認証局です。

価格に加えて、このソリューションの魅力的な部分の1つは、証明書を取得するDNSドメインの所有権を証明する必要がないことです。そのホストを解決するDNS名がすでに存在する場合は、そのドメインとホスト名のSSL証明書を取得できます。独自のCAを使用する必要がある場合、これは実際には一部の組織にとって問題になる可能性があります。

そのホストへのsshアクセスとrootアクセスがある場合、 CertbotはLet'sEncryptを開始する最も簡単な方法です。 Webサイトの指示に従って、特定のOSにインストールします。ファイアウォール/セキュリティグループがポート80で着信トラフィックを許可していることを確認し、ポート80ですでにホストを実行している場合は、一時的にシャットダウンして次のコマンドを実行します。

sudo certbot certonly --standalone

Cerbotは、そのホストに関連付けられているDNS名を要求し、ポート80でリッスンするプロセスを開始します。サービスがインターネットからそのプロセスに到達できる場合、SSL証明書が発行されます。本当に簡単です!

☑クイックヒント、DNSにCloudflareを使用している場合は、必ず「プロキシ」モードをオフにしてください。オフにしないと、Cerbotがホストに到達できなくなります。

証明書を取得したら、Webサーバーが理解できる形式で証明書を連結する必要があります。この例では、サーバーとしてHAProxyを使用し、< your.dns.name >をDNSホスト名に置き換えます。


sudo mkdir -p / etc / haproxy / ssl /

 sudo cat /etc/letsencrypt/live/your.dns.name/fullchain.pem \
 /etc/letsencrypt/live/your.dns.name/privkey.pem \
 | sudo tee /etc/haproxy/ssl/cert.pem

Let's Encryptの証明書は90日間有効なので、更新プロセスを処理する準備ができている必要があります。

これをテストするには、次を実行できます。

sudo certbot renew --dry-run

更新が成功した場合は、システムのcrontabファイルに次のエントリを追加できます。

crontab -e

 43 6 * * * sudo certbot renew --deploy-hook

deploy-hookオプションを使用すると、Cerbotはスクリプトを実行できますが、証明書の更新が成功した場合に限ります。このスクリプトはカスタマイズできます。

sudo nano /etc/letsencrypt/renewal-hooks/deploy/start.sh
#!/ bin / sh
 sudo cat /etc/letsencrypt/live/your.dns.name/fullchain.pem \
 /etc/letsencrypt/live/your.dns.name/privkey.pem \
 | sudo tee /etc/haproxy/ssl/cert.pem
 sudo service haproxy restart
投稿コメント 0

Tagged with:
encryption