序章

Let’s Encryptは認証局(CA)であり、無料の TLS / SSL証明書を簡単に取得してインストールし、Webサーバーで暗号化されたHTTPSを有効にします。 必要な手順のほとんど(すべてではないにしても)を自動化しようとするソフトウェアクライアントCertbotを提供することにより、プロセスを簡素化します。 現在、証明書の取得とインストールのプロセス全体は、ApacheとNginxの両方で完全に自動化されています。

このチュートリアルでは、Certbotを使用してDebian 9でNginxの無料のSSL証明書を取得し、証明書を自動的に更新するように設定します。

このチュートリアルでは、デフォルトファイルの代わりに別のNginxサーバーブロックファイルを使用します。 ドメインごとに新しいNginxサーバーブロックファイルを作成することをお勧めします。これは、よくある間違いを回避し、フォールバック構成としてデフォルトファイルを維持するのに役立ちます。

前提条件

このチュートリアルに従うには、次のものが必要です。

  • このDebian9 チュートリアルの初期サーバー設定と、sudo非rootユーザーおよびファイアウォールに従って設定された1台のDebian9サーバー。

  • 完全に登録されたドメイン名。 このチュートリアルでは、全体を通してexample.comを使用します。 Namecheap でドメイン名を購入するか、 Freenom で無料でドメイン名を取得するか、選択したドメイン登録事業者を使用できます。

  • 次の両方のDNSレコードがサーバー用に設定されています。 それらを追加する方法の詳細については、このDigitalOceanDNSの紹介に従ってください。

    • サーバーのパブリックIPアドレスを指すexample.comのAレコード。
    • サーバーのパブリックIPアドレスを指すwww.example.comのAレコード。
  • Debian9にNginxをインストールする方法に従ってインストールされたNginx。 ドメインにサーバーブロックがあることを確認してください。 このチュートリアルでは、例として/etc/nginx/sites-available/example.comを使用します。

ステップ1—Certbotをインストールする

Let’s Encryptを使用してSSL証明書を取得するための最初のステップは、サーバーにCertbotソフトウェアをインストールすることです。

Certbotは非常に活発に開発されているため、Debianが現在の安定版リリースで提供しているCertbotパッケージは古くなっている傾向があります。 ただし、[X11X]