Kon's DX Lab - Case Study

Day 87|無料でHTTPS!Let's EncryptでSSL化

Published on 2025-06-27

🔬 Case Study Summary
Problem

(ここに課題を記述)

Result

(ここに具体的な成果を記述)


Tech & Process

(ここに採用技術とプロセスを記述) コードを詳しく見る »

こんにちは、こんです🦊

今回は、ConoHa VPSにSSL証明書を導入して、あなたのサイトを安全なHTTPS化する方法を解説します!


1. 導入:この記事でできるようになること

この記事では、Let's Encrypt(無料SSL)を使って、あなたのVPSにHTTPS(暗号化通信)を導入します。

  • http://yourtool.xyz → https://yourtool.xyz に!

  • ブラウザの「保護されていない通信 ⚠️」警告がなくなる!

  • certbot を使って証明書を自動更新できるようになる!

💡 なぜ必要?

  • HTTPSは今やWebの標準。Google検索やSEOにも影響する

  • Slackアプリのように、認証URLやWebhookでHTTPSが必須なケースが多い

  • Let's Encryptを使えば無料で安全に導入できる!


2. 背景・基礎知識

🔒 SSLとは?HTTPSとは?

  • HTTP:通常の通信。データが暗号化されず、途中で見られるリスクがある

  • HTTPS:SSL/TLSを使って通信を暗号化 → 安全!

📦 例えると:

  • HTTP:ハガキを送る(誰でも読める)

  • HTTPS:封筒に入れて鍵付きで送る(途中で盗み見されない)


✅ Let's Encryptとは?

  • 無料で使えるSSL証明書を発行してくれる公益プロジェクト

  • certbot(自動化ツール)を使えば、面倒な更新作業も自動化できる


3. 実践パート

🔹 前提

  • nginxが稼働している

  • ドメインが Aレコード でVPSに向いている

  • 80番(HTTP)ポートが開いている


✅ ステップ1:certbotのインストール

sudo apt update sudo apt install certbot python3-certbot-nginx

✅ ステップ2:nginx設定を確認

server_name が正しいか確認:

server { listen 80; server_name yourtool.xyz www.yourtool.xyz; ... }

server_name に自分のドメインが設定されているか確認!


✅ ステップ3:Let's Encrypt証明書を取得

sudo certbot --nginx

対話形式で質問に答えるだけ:

  • メールアドレスを入力

  • 利用規約に同意

  • wwwあり・なしの両方に証明書を発行するか選択


✅ ステップ4:自動HTTPSリダイレクトの確認

certbot が nginx 設定を自動で修正してくれます。
http:// にアクセスしても https:// に転送されるか確認!


✅ ステップ5:自動更新を設定する(cron)

証明書は90日で期限が切れるので、自動更新が必須。

以下でテスト:

sudo certbot renew --dry-run

問題なければ cron で毎日チェックされる仕組みが自動で組まれます(/etc/cron.d)。


4. つまずきポイントと対処法(FAQ)


5. まとめと次回予告

✅ 今回は、無料でHTTPS化する方法(Let's Encrypt+certbot) をマスターしました!
これでブラウザの警告もなくなり、SlackアプリのWebhookやAPIも安全に公開できます。

🔜 次回は、Slack連携のリダイレクトURLやWebhookを独自ドメイン+HTTPSで運用する方法を詳しく掘り下げます!


6. 参考リンク・補足資料