PleskサーバーでHTTP / 2を有効にする方法

PleskはネイティブのHTTP / 2サポートを備えています。PleskでのHTTP / 2のロールアウトは他のコントロールパネルに比べてはるかに簡単ですが、その導入プロセスには慎重な計画が必要です。このガイドは、さまざまなオペレーティングシステムに適用されます。ここに記載されている手順は、十分なバージョンのPleskおよびOpenSSLがある限り機能します。これらの要件については、「ステップ1:要件の確認」で説明します。

SSL証明書を使用する場合、多くのブラウザはWebサイトでHTTP / 2のみをサポートすることを考慮に入れてください。SSL証明書を使用しない場合、コンテンツはHTTP / 2経由で提供されません。幸い、SSL証明書を取得する方法はたくさんあります。Let's Encrypt証明書の取得に興味がある場合は、Pleskで証明書を作成するための次のガイドを確認してください:Let's Encrypt on Plesk

ユーザーや訪問者がそれに気づかずに(そしてダウンタイムなしに)HTTP / 2を有効にできる可能性は十分にありますが、このメンテナンスをアナウンスする必要があります。SSL暗号スイートが正しく構成されていない場合、ダウンタイムが発生する可能性があります。幸い、Pleskの組み込みツールを使用して変更を元に戻すのは非常に簡単です。

一部の構成ファイルは上書きされるため、構成ファイルに直接変更が加えられていないことを確認してください。ただし、サポートされているメソッド(カスタムファイル内)のみを使用して変更を加えた場合でも、心配する必要はありません。

可能であれば、プレーンPleskインストールで別のVultrクラウドサーバを起動し、以下のコマンドを実行する必要があります。次に、その成功(または失敗)に基づいて、現在使用中の本番サーバーでの将来のHTTP / 2デプロイメントで発生する可能性のある問題を即座にデバッグおよび/または解決する手順を実行できます。

HTTP / 2を有効にする

ステップ1:要件の確認

箱から出して、PleskがデプロイされたリバースプロキシのHTTP / 2サポートを有効にすることができます。サーバーがリバースプロキシを使用しているかどうかわからない場合は、「Service Monitor」を確認してください。そこにApacheとNginxの両方がリストされている場合は、ご使​​用のシステムが現在リバースプロキシを使用していると想定しても安全です。ApacheまたはNginxのみが表示される場合は、単一のWebサーバーを使用している可能性があります。

コアには、HTTP / 2が機能するために絶対に必要な特定の要件が1つあります。これは、ALPNをサポートするOpenSSLバージョンです。

ただし、Pentkバージョン12.5.30以降がCentOS / RHEL 7、Ubuntu 14.04、Debian 8以降にインストールされている場合、Nginxは標準でALPNサポートを使用してデプロイされます。

Pleskまたはオペレーティングシステムのバージョンが古い場合は、一部のパッケージをアップグレードできます。ただし、私は��れをサポートまたは文書化しません。これらのバージョンとオペレーティングシステムは非常に古く、更新することをお勧めします。古いソフトウェアを使用する場合のセキュリティリスクも考慮してください。

Plesk上のHTTP / 2と互換性のあるオペレーティングシステムとバージョンを明示的に記載したドキュメントはありません。ただし、(このガイドが公開された時点で)最新バージョンを使用している場合は、要件を満たす必要があります。CentOS / RHEL 5などの古いオペレーティングシステムには互換性がないと考えて間違いありません。

OpenSSLバージョン要件は別として、Apacheは必ずしもHTTP / 2と互換性がある必要もないことに注意してください。ApacheのHTTP / 2サポートはバージョン2.4.17以降で利用可能ですが、リバースプロキシ(Pleskのデフォルト設定)を使用する場合は、Nginxバージョンのみで十分です。バックエンドサーバーであるApacheは、互換性がある必要はありません。Pleskの「サービスマネージャ」を参照して、リバースプロキシを使用していることを確認できます。Nginxがそこにリストされている場合、Nginxがフロントエンドサーバーとして機能するリバースプロキシセットアップとしてApacheとNginxがインストールされていると想定しても安全です。

次のコマンドは、Nginxがアクティブ化されているかどうかを示しています。

/usr/local/psa/admin/bin/nginxmng -s

OpenSSLの場合、少なくともバージョン1.0.1が必要です。次のコマンドを使用して確認できます。

rpm -qa | grep openssl

これは次のようなバージョンを出力します:

openssl-1.0.1e-42.el6_7.4.x86_64

OpenSSLのバージョンが1.0.1以降でない場合は、オペレーティングシステムを更新する必要があります。新しいオペレーティングシステムに導入されたPleskは、OpenSSL 1.0.1をそのまま使用します。

ステップ2:PleskでHTTP / 2を有効にする

使用するオペレーティングシステムに応じて、http2_prefツールを使用してHTTP / 2を有効にします。このコマンドはrootとして実行する必要があります。

CentOS / RHELでHTTP / 2を有効にする

実行: /usr/local/psa/bin/http2_pref enable

Ubuntu / DebianでHTTP / 2を有効にする

実行: /opt/psa/bin/http2_pref enable

ステップ3:暗号スイートを改善する

優れた暗号スイートを使用することは、セキュリティにとって非常に重要です。古いプロトコルをサポートすると、セキュリティ対策の効果を効果的に無効にできます。組み込みのPleskツールを使用して、利用可能なプロトコルと利用可能なTLSバージョンを必ず調整してくださいsslmng

たとえば、次の暗号とTLSバージョンを有効にすると、HTTP / 2との互換性が保証されます。有効にする暗号とバージョンがわからない場合は、次の設定を使用してください。

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

このコマンドはを変更し/etc/nginx/conf.d/ssl.confます。このファイルは直接変更できますが、上記のコマンドを使用すると、Pleskの更新全体で変更が保持されます。

別の暗号スイートを使用して「完全転送秘密」を取得するには、次の暗号を試すことができます。

ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS

利用可能な暗号スイートは多数ありますが、ニーズに最も適したものを選択する必要があります。ニーズに合った暗号スイートを収集するには、Cipherli.stなどのWebサイトを参照する必要があります。sslmngツールで指定することにより、暗号スイートが即座に使用されます。

クライアントとしてのブラウザのTLSサポートを確認するには、Qualys SSLツールを使用します。十分な暗号またはTLSバージョンを許可していない場合、一部のWebサイトが到達不能になる可能性があります。

ステップ4:HTTP / 2の互換性を確認する

HTTP / 2を有効にした後、WebサイトとWebサーバーがHTTP / 2経由で到達できるかどうかを確認する必要があります。これには非常に便利なWebベースのツール、HTTP / 2 Testがあります。

正確な結果を得るには、サーバーの前にあるすべてのリバースプロキシを無効にしてください。たとえば、HTTP / 2をサポートしていないCDNを使用している場合、サーバーレベルで正常に有効化されていても、テストツールはWebサイトがHTTP / 2をサポートしていないことを返します。ちょうど他の方法のように:ウェブサイトの前に(HTTP / 2をサポートする)Cloudflareなどのリバースプロキシがある場合、サーバーレベルの機能に関係なく、ツールは常にHTTP / 2を有効にして機能しているものとして返します。

ブラウザによっては、HTTP / 2を有効にした後でウェブサイトの読み込みやコンテンツの提供を拒否している場合、QualysのSSLツールを使用してSSL設定を分析する必要があります。

(オプション)HTTP / 2構成を元に戻す

必要に応じて、デバッグする時間が必要な場合は、以下のコマンドを実行するだけで(一時的に)HTTP / 2を無効にできます。HTTP / 2を再度有効にしたい場合は、HTTP / 2をアクティブにするコマンドを実行し、任意のWebサイトへのアクセスを再試行します。特定のドメインまたはWebサイトでHTTP / 2を有効または無効にする方法はありません。サーバー全体の設定です。

CentOS / RHELでのHTTP / 2の無効化

実行: /usr/local/psa/bin/http2_pref disable

Ubuntu / DebianでHTTP / 2を無効にする

実行: /opt/psa/bin/http2_pref disable

トラブルシューティング

HTTP / 2の有効化に関与するサーバーの多くのコンポーネントを考慮すると、HTTP / 2サポートをアクティブ化した後、Webサイトが正しくロードされない、またはまったくロードされない場合のトラブルシューティングが必要になる場合があります。

注:http2_pref以下の手順を実行する場合は、ツールを使用してHTTP / 2サポートを無効にしないでください

要件を確認する

まず、この記事の冒頭に概説されている要件を満たしていることを確認してください。

Nginx構成を再作成する

HTTP / 2の要件を満たしている場合は、Nginx構成ファイルの再作成を試みることができます。これによりカスタム構成が削除されることを知っている必要があるため、事前にNginx構成ディレクトリのバックアップを作成してください。構成ファイルはサーバー全体に分散できるため、単にスナップショットを作成するか、バックアップを取ることをお勧めします。次に、次のコマンドを実行します。

/usr/local/psa/admin/bin/httpdmng --reconfigure-all

暗号スイートを再確認する

それでも効果がない場合は、おそらく暗号スイートが原因です。次のコマンドを再度実行します。

plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"

エラー panel.ini

ファイル/usr/local/psa/admin/conf/panel.iniに次の内容が含まれていることを確認してください。

[webserver]
nginxHttp2 = true

次のコマンドを実行すると、ファイルにこれが含まれているかどうかをすばやく確認できます。 cat /usr/local/psa/admin/conf/panel.ini | grep nginxHttp2

このコマンドは何も返しませんか?次に、たとえばchattr属性が原因で、ファイルが読み取り専用である可能性が最も高くなります。http2_prefコマンド(HTTP / 2を有効にする)が実行されたときに追加された可能性があります。

SSLが使用されているかどうかを確認する

WebサイトがSSLを使用しない場合、HTTP / 1.1にフォールバックします。SSLを使用するWebサイトのみがHTTP / 2を使用して提供されます。HTTP / 2がすべてのケースでローカルに適用されていないことを確認してください。これは機能せず、サーバー側の問題ではありません。

別のオプション

これでも機能しない場合は、PleskフォーラムなどでPleskエキスパートに相談してください。ただし、多くの場合、上記の手順でほとんどの問題が解決します。

あなたが取ることができる最後の1つの対策は、単にサーバーを再起動することです。いくつかの奇妙なケースでは、これは突然問題を修正しました。ただし、問題を正確に特定して、(突然)問題が再発しないようにする必要があります。

これで私のガイドは終わりです。読んでいただきありがとうございます。



Leave a Comment

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください

原子力が必ずしも悪ではないことを証明する5つの例

原子力が必ずしも悪ではないことを証明する5つの例

原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、