Certbotは、LinuxシステムでLet’sEncryptSSL証明書を管理するためのコマンドラインユーティリティです。これにより、新しいSSL証明書を要求し、認証を行い、SSL設定用にWebサーバーを構成できます。また、Let’sEncrypt認証局によって発行された証明書を更新するのにも役立ちます。
このチュートリアルは、Let’sEncryptクライアントをUbuntu20.04LTSLinuxシステムにインストールするのに役立ちます。
前提条件
次の条件を満たす必要があります。
- sudo特権アカウントアクセスを備えた実行中のUbuntu20.04システム。
- 実ドメインまたはサブドメインで構成された仮想ホストを備えたApacheWebサーバー。
- ドメインまたはサブドメインは、WebサーバーのIPアドレスを正しく指している必要があります。
ステップ1-Certbotのインストール
Certbotは、Let’s Encryptから証明書を取得し、Webサーバーで構成するためのツールです。スナップパッケージは、Ubuntuシステムにcertbotをインストールするための最も簡単な方法です。
ターミナルを開き、以下のコマンドを実行してcertbotをインストールします。
sudo snap install --classic certbot
ステップ2–SSL証明書を生成する
これで、Let'sEncryptからWebサーバーに基づいてSSL証明書を要求できます。
- Apache – Apache Webサーバーを実行しているシステムは、次のコマンドを実行します。これにより、Webサーバーで構成されているすべてのドメイン/サブドメインが一覧表示されます。証明書をリクエストするには、適切な番号を選択してください。
sudo certbot --apache
- Nginx – Nginx Webサーバーを実行しているシステムの場合、以下のコマンドを使用してSSL証明書を要求します。
sudo certbot --nginx
- その他のWebサーバー– ApacheまたはNginx以外のWebサーバーが実行されているシステムの場合。次に、証明書のみを取得して手動で構成できます。
このコマンドは、ドメイン名とドメインのドキュメントルートを要求します。
sudo certbot certonly --webroot
- Webサーバーなし– システムにはWebサーバーが実行されておらず、SSL証明書を要求することもできます。以下のコマンドは、ドメイン名の入力を求め、ポート80で一時的なWebサーバーを起動して、検証を完了します。
sudo certbot certonly --standalone
上記のすべての場合において、ドメインはDNSからサーバーを指している必要があります。また、/。well-known/acme-challengeがWebサーバーによって提供されることを確認してください。
ステップ3–SSLのテスト
SSL証明書がWebサーバーにインストールされたら、Webブラウザでhttps://your-domain.com/にアクセスし、URLバーでSSLロックアイコンを探します。 https://www.ssllabs.com/ssltest/でSSL設定のセキュリティスキャンを実行することもできます。
ステップ3–SSL証明書を更新する
証明書の暗号化は3か月間のみ発行されます。有効期限の30日前に証明書を更新できます。 Certbotを使用すると、1つのコマンドを実行するだけで手間のかからない更新が可能になります。
以下のコマンドを実行して、そのシステム上のすべての証明書を更新します。
sudo certbot renew
実際に更新せずにドライランを実行することもできます。これは、SSL更新が適切に実行されるかどうかをテストするのに役立ちます。
sudo certbot renew --dry-run
結論
このチュートリアルでは、Ubuntuシステムにcertbotをインストールする方法を学びました。また、Webサーバーの新しい証明書を作成するのにも役立ちました。