macOS 上の HAProxy
Certbot を使用するには、以下が必要です...
コマンドラインとは、テキストベースのコマンドを入力してコンピュータと対話し、テキストベースの応答を受け取る方法です。Certbot は、通常は Unix 系サーバー上のコマンドラインインターフェイスから実行されます。 Certbot をほとんどの目的で使用するには、通常は SSH 経由でアクセスする Web サーバーのコマンドラインに Certbot をインストールして実行できる必要があります。
コマンドラインとは、テキストベースのコマンドを入力してコンピュータと対話し、テキストベースの応答を受け取る方法です...
HTTP(Hypertext Transfer Protocol)は、Web ブラウザが Web サーバーから Web ページやその他のオンラインリソースのコンテンツを要求するための従来の、しかし安全ではない方法です。これはインターネット標準であり、通常は TCP ポート 80 で使用されます。世界のほぼすべての Web サイトは HTTP をサポートしていますが、Certbot またはその他の HTTPS 設定方法で設定された Web サイトは、ユーザーをサイトの HTTP バージョンから HTTPS バージョンに自動的にリダイレクトする場合があります。
HTTP(Hypertext Transfer Protocol)は、Web ブラウザが Web サーバーから Web ページやその他のオンラインリソースのコンテンツを要求するための従来の、しかし安全ではない方法です...
HTTP(Hypertext Transfer Protocol)は、Web ブラウザが Web サーバーから Web ページやその他のオンラインリソースのコンテンツを要求するための従来の、しかし安全ではない方法です。これはインターネット標準であり、通常は TCP ポート 80 で使用されます。世界のほぼすべての Web サイトは HTTP をサポートしていますが、Certbot またはその他の HTTPS 設定方法で設定された Web サイトは、ユーザーをサイトの HTTP バージョンから HTTPS バージョンに自動的にリダイレクトする場合があります。
それが
Certbot は通常、既存の HTTP サイトを HTTPS で動作するように切り替えるために使用されます(その後、必要に応じてサイトの HTTPS 証明書の更新を続けます)。 Certbot のドキュメントの中には、ポート 80 で HTTP を使用してすでにアクセスできる動作中の Web サイトがあることを前提としているか、推奨しているものがあります。つまり、たとえば、Web ブラウザを使用して http:// を使用してドメインにアクセスすると、Web サーバーが応答し、何らかのコンテンツが表示されます(サイトの最終バージョンではなく、デフォルトのウェルカムページであっても)。 Certbot を使用する方法の中には、これを前提条件としているものがあるため、HTTP でサイトをすでに設定している場合、よりスムーズなエクスペリエンスが得られます。(ポリシーの問題でサイトにこの方法でアクセスできない場合は、Certbot で証明書を取得するために DNS 検証を使用する必要があるでしょう。)
Certbot は通常、既存の HTTP サイトを HTTPS で動作するように切り替えるために使用されます(その後、必要に応じてサイトの HTTPS 証明書の更新を続けます)...
Certbot は通常、既存の HTTP サイトを HTTPS で動作するように切り替えるために使用されます(その後、必要に応じてサイトの HTTPS 証明書の更新を続けます)。 Certbot のドキュメントの中には、ポート 80 で HTTP を使用してすでにアクセスできる動作中の Web サイトがあることを前提としているか、推奨しているものがあります。つまり、たとえば、Web ブラウザを使用して http:// を使用してドメインにアクセスすると、Web サーバーが応答し、何らかのコンテンツが表示されます(サイトの最終バージョンではなく、デフォルトのウェルカムページであっても)。 Certbot を使用する方法の中には、これを前提条件としているものがあるため、HTTP でサイトをすでに設定している場合、よりスムーズなエクスペリエンスが得られます。(ポリシーの問題でサイトにこの方法でアクセスできない場合は、Certbot で証明書を取得するために DNS 検証を使用する必要があるでしょう。)
開いている
さまざまなインターネットサービスは、異なる TCP ポート番号を使用することで区別されます。暗号化されていない HTTP は通常 TCP ポート 80 を使用し、暗号化された HTTPS は通常 TCP ポート 443 を使用します。 certbot --webroot、certbot --apache、または certbot --nginx を使用するには、Certbot を使用するサーバーでホストされている、すでにオンラインになっている既存の HTTP Web サイトが必要です。このサイトは、ポート 80 でインターネットの他の部分からアクセスできる必要があります。 certbot --standalone を使用するには、既存のサイトは必要ありませんが、インターネットサービスプロバイダまたは Web ホスティングプロバイダによって実行されているファイアウォールを含め、サーバーのポート 80 への接続がファイアウォールによってブロックされていないことを確認する必要があります。わからない場合は、ISP またはホスティングプロバイダに確認してください。(DNS 検証では、Let's Encrypt がサーバーへのインバウンド接続を行う必要がないため、特にこの方法では、既存の HTTP Web サイトやポート 80 で接続を受信できる必要はありません。)
さまざまなインターネットサービスは、異なる TCP ポート番号を使用することで区別されます。暗号化されていない HTTP...
さまざまなインターネットサービスは、異なる TCP ポート番号を使用することで区別されます。暗号化されていない HTTP は通常 TCP ポート 80 を使用し、暗号化された HTTPS は通常 TCP ポート 443 を使用します。 certbot --webroot、certbot --apache、または certbot --nginx を使用するには、Certbot を使用するサーバーでホストされている、すでにオンラインになっている既存の HTTP Web サイトが必要です。このサイトは、ポート 80 でインターネットの他の部分からアクセスできる必要があります。 certbot --standalone を使用するには、既存のサイトは必要ありませんが、インターネットサービスプロバイダまたは Web ホスティングプロバイダによって実行されているファイアウォールを含め、サーバーのポート 80 への接続がファイアウォールによってブロックされていないことを確認する必要があります。わからない場合は、ISP またはホスティングプロバイダに確認してください。(DNS 検証では、Let's Encrypt がサーバーへのインバウンド接続を行う必要がないため、特にこの方法では、既存の HTTP Web サイトやポート 80 で接続を受信できる必要はありません。)
サーバーとは、インターネット上でウェブサイトや電子メールサービスなどのサービスを提供するコンピュータです。ほとんどのウェブサイト所有者は、データセンターに設置され、インターネット経由で管理されているサーバーの使用に対して、ホスティングプロバイダーに料金を支払っています。これは、物理的な専用サーバー、仮想プライベートサーバー(VPS)、または共有サーバーの場合があります。他のサーバーは、DNSサーバーなど、インターネットインフラストラクチャの他の部分を担っています。
サーバーとは、インターネット上でウェブサイトや電子メールサービスなどのサービスを提供するコンピュータです…。
サーバーとは、インターネット上でウェブサイトや電子メールサービスなどのサービスを提供するコンピュータです。ほとんどのウェブサイト所有者は、データセンターに設置され、インターネット経由で管理されているサーバーの使用に対して、ホスティングプロバイダーに料金を支払っています。これは、物理的な専用サーバー、仮想プライベートサーバー(VPS)、または共有サーバーの場合があります。他のサーバーは、DNSサーバーなど、インターネットインフラストラクチャの他の部分を担っています。
上でホストされており、
SSH(「セキュアシェル」の略)は、リモートサーバーに接続し、そのサーバーのコマンドラインにアクセスするための技術であり、多くの場合、サーバーを管理するために使用されます。サーバーの管理者は、他の人にSSHアクセスを許可したり、サーバーをリモートで管理するためにSSHアクセスを直接使用したりできます。SSHは通常、Unixライクなオペレーティングシステムを実行しているサーバーにアクセスするために使用されますが、SSHを使用するために自分のコンピュータがUnixを実行している必要はありません。通常は、ターミナルでコンピュータのコマンドラインから、ssh username@example.comなどのコマンドを入力してSSHを使用します。これは特に、自分のコンピュータがLinuxまたはmacOSを実行している場合に当てはまります。ログイン後、サーバーのコマンドラインにアクセスできます。コンピュータでWindowsを使用している場合は、PuTTYなどの専用のSSHアプリケーションを使用することもできます。ほとんどのCertbotユーザーは、SSH経由でリモートサーバーのコマンドプロンプトからCertbotを実行します。
SSH(「セキュアシェル」の略)とは、リモートサーバーに接続してアクセスするための技術です…。
SSH(「セキュアシェル」の略)は、リモートサーバーに接続し、そのサーバーのコマンドラインにアクセスするための技術であり、多くの場合、サーバーを管理するために使用されます。サーバーの管理者は、他の人にSSHアクセスを許可したり、サーバーをリモートで管理するためにSSHアクセスを直接使用したりできます。SSHは通常、Unixライクなオペレーティングシステムを実行しているサーバーにアクセスするために使用されますが、SSHを使用するために自分のコンピュータがUnixを実行している必要はありません。通常は、ターミナルでコンピュータのコマンドラインから、ssh username@example.comなどのコマンドを入力してSSHを使用します。これは特に、自分のコンピュータがLinuxまたはmacOSを実行している場合に当てはまります。ログイン後、サーバーのコマンドラインにアクセスできます。コンピュータでWindowsを使用している場合は、PuTTYなどの専用のSSHアプリケーションを使用することもできます。ほとんどのCertbotユーザーは、SSH経由でリモートサーバーのコマンドプロンプトからCertbotを実行します。
経由でアクセスできます。
sudoは、Unixライクなオペレーティングシステムで、特定のコマンドをroot(システム管理者)として実行するための最も一般的なコマンドです。root以外のユーザーとしてサーバーにログインしている場合は、Certbotコマンドの前にsudoを付けて、rootとして実行する必要がある可能性があります(たとえば、certbotではなくsudo certbot)。これは特に、ApacheやNginxなどのWebサーバーとCertbotの統合を使用している場合に当てはまります。(certbot-autoスクリプトは、必要に応じて、指定しなかった場合に自動的にsudoを実行します。)
sudoは、Unixライクなオペレーティングシステムで、特定のコマンドをrootとして実行するための最も一般的なコマンドです…。
sudoは、Unixライクなオペレーティングシステムで、特定のコマンドをroot(システム管理者)として実行するための最も一般的なコマンドです。root以外のユーザーとしてサーバーにログインしている場合は、Certbotコマンドの前にsudoを付けて、rootとして実行する必要がある可能性があります(たとえば、certbotではなくsudo certbot)。これは特に、ApacheやNginxなどのWebサーバーとCertbotの統合を使用している場合に当てはまります。(certbot-autoスクリプトは、必要に応じて、指定しなかった場合に自動的にsudoを実行します。)
権限を持つことができます。
ワイルドカード証明書とは、*.
で始まる1つ以上の名前を含む証明書です。ブラウザは、アスタリスク(*
)の代わりに任意のラベルを受け入れます。たとえば、*.example.com
の証明書は、www.example.com
、mail.example.com
、hello.example.com
、およびgoodbye.example.com
に対して有効です。
ただし、のみ名前*.example.com
を含むワイルドカード証明書は、example.com
に対しては有効ではありませ**ん**。代用されるラベルは空にできません。証明書をexample.com
に対して有効にする場合は、証明書にexample.com
(つまり、*.
部分のないもの)も含める必要があります。
さらに、アスタリスクは、*単一の*ラベルのみに置き換えることができ、*複数の*ラベルには置き換えることができません。たとえば、名前hello.goodbye.example.com
は、名前*.example.com
のみを含む証明書ではカバーされません。ただし、*.goodbye.example.com
ではカバーされます。ワイルドカード名に複数のアスタリスクを含めることはできません。たとえば、*.*.example.com
は無効です。
ワイルドカード証明書とは、*.
で始まる1つ以上の名前を含む証明書です。ブラウザは…
ワイルドカード証明書とは、*.
で始まる1つ以上の名前を含む証明書です。ブラウザは、アスタリスク(*
)の代わりに任意のラベルを受け入れます。たとえば、*.example.com
の証明書は、www.example.com
、mail.example.com
、hello.example.com
、およびgoodbye.example.com
に対して有効です。
ただし、のみ名前*.example.com
を含むワイルドカード証明書は、example.com
に対しては有効ではありませ**ん**。代用されるラベルは空にできません。証明書をexample.com
に対して有効にする場合は、証明書にexample.com
(つまり、*.
部分のないもの)も含める必要があります。
さらに、アスタリスクは、*単一の*ラベルのみに置き換えることができ、*複数の*ラベルには置き換えることができません。たとえば、名前hello.goodbye.example.com
は、名前*.example.com
のみを含む証明書ではカバーされません。ただし、*.goodbye.example.com
ではカバーされます。ワイルドカード名に複数のアスタリスクを含めることはできません。たとえば、*.*.example.com
は無効です。
DNS認証情報とは、DNSプロバイダーがDNSレコードの内容を変更するために使用することを許可しているパスワードまたはその他の種類のシークレット(APIキーなど)です。通常は、ドメインレジストラ(または、DNSプロバイダーがレジストラと同じでない場合は別のDNSプロバイダー)によって発行されます。DNS認証情報は、サイトを完全に乗っ取るために使用できるため、機密性の高い種類のシークレットです。これらの認証情報を公に、または権限のない人物と共有しないでください。Certbotがローカルマシンで実行されるため、Certbotにコピーを提供してDNS検証を自動的に実行させることは問題ありません。
DNS認証情報とは、DNSプロバイダーが…
DNS認証情報とは、DNSプロバイダーがDNSレコードの内容を変更するために使用することを許可しているパスワードまたはその他の種類のシークレット(APIキーなど)です。通常は、ドメインレジストラ(または、DNSプロバイダーがレジストラと同じでない場合は別のDNSプロバイダー)によって発行されます。DNS認証情報は、サイトを完全に乗っ取るために使用できるため、機密性の高い種類のシークレットです。これらの認証情報を公に、または権限のない人物と共有しないでください。Certbotがローカルマシンで実行されるため、Certbotにコピーを提供してDNS検証を自動的に実行させることは問題ありません。
これらの要件を満たしていませんか?
ご心配なく!一部のホスティングプロバイダーは、HTTPSプロセスを自動化しています。ホスティングプロバイダーの完全なリストをご覧ください、またはシステムのセットアップ方法の詳細をご覧ください。
- DNS プロバイダーがサポートされているかどうかを確認する
当社のドキュメントにあるリストを確認して、DNS プロバイダーが Certbot でサポートされているかどうかを確認してください。
サポートされていませんか?
DNS プロバイダーがサポートされていない場合は、ここで一時停止します。ドキュメントの手順に従って、手動プラグインを使用して Certbot を実行してください。
サポートされていますか?
DNS プロバイダーがサポートされている場合は、以下の残りの手順を続行してください。
- サーバーにSSH接続する
sudo権限を持つユーザーとして、HTTPウェブサイトを実行しているサーバーにSSH接続します。
- Homebrewをインストールする
Homebrewをインストールする必要があります。
Homebrewのサイトにあるこれらの手順に従って、Homebrewをインストールしてください。
- Certbotをインストールする
Certbotをインストールするには、マシンのコマンドラインでこのコマンドを実行します。
brew install certbot
- 正しい DNS プラグインをインストールする
<PLUGIN> を DNS プロバイダーの名前に置き換えて、次のコマンドを実行します。
brew install -<PLUGIN>
たとえば、DNS プロバイダーが Cloudflare の場合は、次のコマンドを実行します。
brew install -cloudflare
- 証明書を取得する
DNS プロバイダーの指示の「例」セクションにあるコマンドのいずれかを実行します。
- 証明書をインストールする
新しい証明書をウェブサーバーの設定ファイルにインストールする必要があります。
- 自動更新を設定する
デフォルトの crontab に cron ジョブを追加する次のコマンドを実行することをお勧めします。
echo "0 0,12 * * * root $(command -v python3) -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo $(command -v certbot) renew -q" | sudo tee -a /etc/crontab > /dev/null
- Certbot が動作したことを確認する
サイトが正しく設定されていることを確認するには、ブラウザで
https://yourwebsite.com/
にアクセスし、URL バーの鍵アイコンを探します。 - HAProxy に関する詳しい情報が必要ですか?
HAProxy での証明書のインストールは複雑です。以下のガイドで詳細を確認できます。
または、Greenhost による実験的なサードパーティの HAProxy プラグインの使用に興味があるかもしれません。