序章
Let’s Encryptは、無料の TLS / SSL証明書の取得とインストールを容易にする認証局(CA)であり、これによりWebサーバーで暗号化されたHTTPSを有効にします。 必要な手順のほとんど(すべてではないにしても)を自動化しようとするソフトウェアクライアントCertbotを提供することにより、プロセスを簡素化します。 現在、証明書の取得とインストールのプロセス全体は、ApacheとNginxの両方で完全に自動化されています。
このガイドでは、 Certbot を使用してUbuntu20.04でApacheの無料SSL証明書を取得し、この証明書が自動的に更新されるように設定されていることを確認します。
このチュートリアルでは、Let’s Encryptによって保護されるWebサイトをセットアップするために、Apacheのデフォルトの構成ファイルの代わりに別の仮想ホストファイルを使用します。 サーバーでホストされているドメインごとに新しいApache仮想ホストファイルを作成することをお勧めします。これは、よくある間違いを回避し、フォールバックセットアップとしてデフォルトの構成ファイルを維持するのに役立ちます。
前提条件
このチュートリアルに従うには、次のものが必要です。
-
このUbuntu20.04チュートリアルの初期サーバーセットアップに従ってセットアップされた1つのUbuntu20.04サーバー。これには、sudo非rootユーザーとファイアウォールが含まれます。
-
完全に登録されたドメイン名。 このチュートリアルでは、全体を通して例としてyour_domainを使用します。 Namecheap でドメイン名を購入するか、 Freenom で無料でドメイン名を取得するか、選択したドメイン登録事業者を使用できます。
-
次の両方のDNSレコードがサーバー用に設定されています。 それらを追加する方法の詳細については、このDigitalOceanDNSの紹介に従ってください。
- サーバーのパブリックIPアドレスを指す
your_domain
のAレコード。 - サーバーのパブリックIPアドレスを指す
www.your_domain
のAレコード。
- サーバーのパブリックIPアドレスを指す
-
Ubuntu20.04にApacheをインストールする方法に従ってApacheをインストールします。 ドメインに仮想ホストファイルがあることを確認してください。 このチュートリアルでは、例として
/etc/apache2/sites-available/your_domain.conf
を使用します。
ステップ1—Certbotをインストールする
Let’s EncryptでSSL証明書を取得するには、まずサーバーにCertbotソフトウェアをインストールする必要があります。 そのためにデフォルトのUbuntuパッケージリポジトリを使用します。
certbot
とpython3-certbot-apache
の2つのパッケージが必要です。 後者はCertbotとApacheを統合するプラグインであり、単一のコマンドで証明書の取得とWebサーバー内のHTTPSの構成を自動化することができます。
- sudo apt install certbot python3-certbot-apache
Y
、ENTER
の順に押すと、インストールの確認を求められます。
これで、Certbotがサーバーにインストールされました。 次のステップでは、Apacheの構成を検証して、仮想ホストが適切に設定されていることを確認します。 これにより、certbot
クライアントスクリプトがドメインを検出し、新しく生成されたSSL証明書を自動的に使用するようにWebサーバーを再構成できるようになります。
ステップ2—Apache仮想ホスト構成を確認する
WebサーバーのSSLを自動的に取得して構成できるようにするには、CertbotはApache構成ファイル内で正しい仮想ホストを見つける必要があります。 サーバードメイン名は、VirtualHost
構成ブロック内で定義されたServerName
およびServerAlias
ディレクティブから取得されます。
Apacheインストールチュートリアルの仮想ホストのセットアップ手順に従った場合は、/etc/apache2/sites-available/your_domain.conf
のドメインにServerName
を使用してVirtualHostブロックをセットアップする必要があります。 X194X]