Ubuntu16.04でLet'sEncryptを使用してApacheを保護する方法

前書き ###

このチュートリアルでは、ApacheをWebサーバーとして実行しているUbuntu 16.04サーバーで[Let's Encrypt](https://letsencrypt.org/)のTLS / SSL証明書を設定する方法を示します。

SSL証明書は、サーバーとクライアント間のトラフィックを暗号化するためにWebサーバーで使用され、アプリケーションにアクセスするユーザーに追加のセキュリティを提供します。 Let's Encryptは、信頼できる証明書を無料で取得してインストールする簡単な方法を提供します。

前提条件

このガイドを完了するには、次のものが必要です。

先に進む準備ができたら、sudo対応のアカウントでサーバーにログインします。

ステップ1-Let'sEncryptクライアントをインストールする

サーバー上で実行されているクライアントソフトウェアを介して暗号化証明書を取得しましょう。公式クライアントはCertbotと呼ばれ、その開発者は最新バージョンを使用して独自のUbuntuソフトウェアリポジトリを維持しています。 Certbotはこのように活発に開発されているため、デフォルトでこのリポジトリを使用して、Ubuntuが提供するよりも新しいバージョンをインストールする価値があります。

まず、リポジトリを追加します。

sudo add-apt-repository ppa:certbot/certbot

受け入れるには ENTERを押す必要があります。次に、パッケージリストを更新して、新しいリポジトリのパッケージ情報を取得します。

sudo apt-get update

最後に、 apt-getを使用して新しいリポジトリからCertbotをインストールします。

sudo apt-get install python-certbot-apache

certbot Let'sEncryptクライアントを使用する準備が整いました。

ステップ2-SSL証明書を設定する

Certbotを使用してApacheのSSL証明書を生成するのは非常に簡単です。クライアントは、パラメータとして指定されたドメインに有効な新しいSSL証明書を自動的に取得してインストールします。

インタラクティブインストールを実行し、単一のドメインのみをカバーする証明書を取得するには、次の certbotコマンドを実行します。ここで、example.comはドメインです。

sudo certbot --apache -d example.com

複数のドメインまたはサブドメインに有効な単一の証明書をインストールする場合は、それらを追加のパラメーターとしてコマンドに渡すことができます。パラメータリストの最初のドメイン名は、Let's Encryptが証明書を作成するために使用する基本ドメインになるため、リストの最初にネイキッドトップレベルドメインを作成し、その後に他のサブドメインまたはエイリアスを作成することをお勧めします。

sudo certbot --apache -d example.com -d www.example.com

この例では、** Basic **ドメインは example.comになります。

複数の仮想ホストがある場合は、仮想ホストごとに1回「certbot」を実行して、仮想ホストごとに新しい証明書を生成する必要があります。複数のドメインとサブドメインを仮想ホスト全体に任意の方法で分散できます。

依存関係がインストールされると、カスタム証明書オプションのステップバイステップガイドが提供されます。キーの紛失の回復と通知のためにメールアドレスを入力するように求められます。httphttpsのアクセスを有効にするか、すべてのリダイレクトリクエストを httpsに強制するかを選択できます。暗号化されていない httpトラフィックが特に必要でない限り、通常は httpsをリクエストするのが最も安全です。

インストールが完了すると、生成された証明書ファイルが / etc / testsencrypt / liveにあるはずです。次のリンクを使用してSSL証明書のステータスを確認できます(example.comを基本ドメインに置き換えることを忘れないでください)。

https://www.ssllabs.com/ssltest/analyze.html?d=example.com&latest

これで、 httpsプレフィックスを使用してWebサイトにアクセスできるようになります。

ステップ3-Certbotが自動的に更新されることを確認します

Let'sEncryptの証明書は90日間しか持続できません。ただし、インストールしたcertbotパッケージは、 certbot renewを実行し、systemdタイマーを使用して1日2回実行することで、この問題を解決します。非システムディストリビューションでは、この機能は / etc / cron.dに配置されたcronスクリプトによって提供されます。このタスクは1日2回実行され、有効期限が切れてから30日以内に証明書を更新します。

更新プロセスをテストするには、 certbotを使用して次の操作を実行できます。

sudo certbot renew --dry-run

エラーが表示されない場合は、セットアップが完了しています。必要に応じて、Certbotは証明書を更新し、Apacheをリロードして変更を取得します。自動更新プロセスが失敗した場合、暗号化により、指定した電子メールにメッセージが送信され、証明書の有効期限が近づくと警告が表示されます。

結論として ##

このガイドでは、ApacheでホストされているWebサイトを保護するために、Let'sEncryptから無料のSSL証明書をインストールする方法を学びました。重要な更新については、公式の[Let's Encrypt Blog](https://letsencrypt.org/blog/)を時々確認し、Certbotクライアントの詳細については[Certbot Documentation](https://certbot.eff.org/docs/)を読むことをお勧めします。

その他のUbuntuチュートリアルについては、[Tencent Cloud + Community](https://cloud.tencent.com/developer?from=10680)にアクセスして詳細を確認してください。


参照:「Ubuntu16.04で暗号化してApacheを保護する方法」

Recommended Posts

Ubuntu16.04でLet'sEncryptを使用してApacheを保護する方法
Ubuntu20.04でLet'sEncryptを使用してApacheを保護する
CentOS8でLet'sEncryptを使用してApacheを保護する
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にApacheをインストールする方法
Let'sEncryptを使用してCentOS8でNginxを保護する方法
Ubuntu18.04にApacheKafkaをインストールする方法
Ubuntu20.04にApacheMavenをインストールする方法
Ubuntu16.04にApacheTomcat8をインストールする方法
Ubuntu14.04にDockerを使用してPrometheusをインストールする方法
Ubuntu14.04でRancherを使用してJenkinsを管理する方法
UbuntuでPython3を楽しくプレイする方法
Ubuntu14.04でApacheコンテンツキャッシングを構成する方法
Ubuntu14.04でHexoを使用してブログを開始する方法
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にMemcachedをインストールする方法
Ubuntu20.04にJavaをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVirtualBoxをインストールする方法
Ubuntu20.04にElasticsearchをインストールする方法
UbuntuにProtobuf3をインストールするための詳細なチュートリアル
Ubuntu20.04にGitをインストールする方法
Ubuntu16.04にNode.jsをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVagrantをインストールする方法
Ubuntu14.04にBacula-Webをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu18.04にAnaconda3をインストールする方法
Ubuntu18.04にMemcachedをインストールする方法
Ubuntu16.04にJenkinsをインストールする方法
Ubuntu14.04にMemSQLをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu16.04にMongoDBをインストールする方法
Ubuntu14.04にMailpileをインストールする方法
Ubuntu16.04にPrestaShopをインストールする方法
Ubuntu14.04でPHP7にアップグレードする方法
Ubuntu20.04にSkypeをインストールする方法
Ubuntu20.04にJenkinsをインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
Ubuntu18.04にKVMをインストールする方法
Ubuntu20.04にKVMをインストールする方法
ubuntu14.04にopencv3.0.0をインストールする方法
Ubuntu20.04にAnacondaをインストールする方法
Ubuntu16.04にPrometheusをインストールする方法
Ubuntu18.04にJenkinsをインストールする方法
Ubuntu14.04にDjangoをデプロイする方法
Ubuntu20.04にRをインストールする方法
Ubuntu16.04にMoodleをインストールする方法
Ubuntu14.04にSolr5.2.1をインストールする方法
Ubuntu16.04にTeamviewerをインストールする方法
Ubuntu14.04でNginxを保護する方法
Ubuntu20.04にMariaDBをインストールする方法
Ubuntu20.04にNginxをインストールする方法
Ubuntu20.04にMonoをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu20.04にZoomをインストールする方法
Ubuntuでソフトウェアをアンインストールする方法
Ubuntu16.04にNginxをインストールする方法
CentOS8にApacheをインストールする方法
Ubuntu20.04にOpenCVをインストールする方法
Ubuntu20.04にSpotifyをインストールする方法