16.3. Web サーバー
16.3.1. Apache HTTP Server への主な変更点 リンクのコピーリンクがクリップボードにコピーされました!
Apache HTTP Server が、RHEL 7 のバージョン 2.4.6 から、RHEL 8 のバージョン 2.4.37 に更新されました。この更新バージョンには新機能がいくつか含まれていますが、外部モジュールの設定および Application Binary Interface (ABI) のレベルでは、RHEL 7 バージョンとの後方互換性を維持します。
新機能は次のとおりです。
-
httpdモジュール含まれるmod_http2パッケージにより、HTTP/2に対応するようになりました。 -
systemd ソケットのアクティベーションが対応します。詳細は、man ページの
httpd.socket(8)を参照してください。
新しいモジュールが複数追加されています。
-
mod_proxy_hcheck- プロキシーのヘルスチェックモジュール -
mod_proxy_uwsgi- Web Server Gateway Interface (WSGI) プロキシー -
mod_proxy_fdpass- クライアントのソケットを別のプロセスに渡す -
mod_cache_socache- HTTP キャッシュ (例: memcache バックエンドを使用) -
mod_md- ACME プロトコルの SSL/TLS 証明書サービス
-
以下のモジュールはデフォルトで読み込まれるようになりました。
-
mod_request -
mod_macro -
mod_watchdog
-
-
新しいサブパッケージ
httpd-filesystemが追加されています。これには、Apache HTTP Server の基本的なディレクトリーレイアウト (ディレクトリーの適切な権限を含む) が含まれます。 -
インスタンス化されたサービスのサポート
httpd@.serviceが導入されました。詳細は、man ページのhttpd.serviceを参照してください。
-
新しい
httpd-init.serviceが%post scriptに置き換わり、自己署名の鍵ペアmod_sslを作成します。
-
(
Let's Encryptなどの証明書プロバイダーで使用するため) 自動証明書管理環境 (ACME) プロトコルを使用した、TLS 証明書の自動プロビジョニングおよび更新に、mod_mdパッケージで対応するようになりました。 -
Apache HTTP Server が、
PKCS#11モジュールを利用して、ハードウェアのセキュリティートークンから、TLS 証明書および秘密鍵を直接読み込むようになりました。これにより、mod_ssl設定で、PKCS#11URL を使用して、SSLCertificateKeyFileディレクティブおよびSSLCertificateFileディレクティブに、TLS 秘密鍵と、必要に応じて TLS 証明書をそれぞれ指定できるようになりました。 /etc/httpd/conf/httpd.confファイルの新しいListenFreeディレクティブに対応するようになりました。Listenディレクティブと同様、ListenFreeは、サーバーがリッスンする IP アドレス、ポート、または IP アドレスとポートの組み合わせに関する情報を提供します。ただし、ListenFreeを使用すると、IP_FREEBINDソケットオプションがデフォルトで有効になります。したがって、httpdは、ローカルではない IP アドレス、または今はまだ存在していない IP アドレスにバインドすることもできます。これにより、httpdがソケットをリッスンできるようになり、httpdがバインドしようとするときに、基になるネットワークインターフェイスまたは指定した動的 IP アドレスを起動する必要がなくなります。ListenFreeディレクティブは、現在 RHEL 8 でのみ利用できます。ListenFreeの詳細は、以下の表を参照してください。Expand 表16.1 ListenFree ディレクティブの構文、状態、およびモジュール 構文 状態 モジュール ListenFree [IP-address:]portnumber [protocol]
MPM
event、worker、prefork、mpm_winnt、mpm_netware、mpmt_os2
その他の主な変更点は次の通りです。
以下のモジュールが削除されました。
-
mod_file_cache mod_nss代わりに
mod_sslを使用します。mod_nssからの移行の詳細は、さまざまな種類のサーバーのデプロイメントのApache Web サーバー設定で秘密鍵と証明書を使用できるように NSS データベースからの証明書のエクスポートを参照してください。-
mod_perl
-
-
RHEL 8 の Apache HTTP Server が使用するデフォルトの DBM 認証データベースのデフォルトタイプが、
SDBMからdb5に変更になりました。 -
Apache HTTP Server の
mod_wsgiモジュールが Python 3 に更新されました。WSGI アプリケーションは Python 3 でしか対応していないため、Python 2 から移行する必要があります。 Apache HTTP Server を使用してデフォルトで設定されたマルチプロセッシングモジュール (MPM) は、マルチプロセスのフォークモデル (
preforkとして知られています) から、高パフォーマンスのマルチスレッドモデルeventに変更しました。スレッドセーフではないサードパーティーのモジュールは、交換または削除する必要があります。設定した MPM を変更するには、
/etc/httpd/conf.modules.d/00-mpm.confファイルを編集します。詳細は、man ページのhttpd.service(8)を参照してください。- suEXEC によりユーザーに許可される最小 UID および GID はそれぞれ 1000 および 500 です (以前は 100 および 100 でした)。
-
/etc/sysconfig/httpdファイルは、httpdサービスへの環境変数の設定に対応するインターフェイスではなくなりました。systemd サービスに、httpd.service(8)の man ページが追加されています。 -
httpdサービスを停止すると、デフォルトで自動停止が使用されます。 -
mod_auth_kerbモジュールが、mod_auth_gssapiモジュールに置き換わりました。
デプロイ方法は Apache HTTP Web サーバーの設定 を参照してください。
16.3.2. nginx Web サーバーが RHEL に新登場 リンクのコピーリンクがクリップボードにコピーされました!
RHEL 8 では、HTTP などのプロトコルに対応する Web サーバーおよびプロキシーサーバー nginx 1.14 が導入され、同時実行性とパフォーマンスが高くなり、メモリー使用量が少なくなりました。nginx は、以前は、Software Collection からしか入手できませんでした。
nginx の Web サーバーは、PKCS#11 モジュールを利用してハードウェアセキュリティートークンから直接 TLS 秘密鍵を読み込むようになりました。これにより、nginx 設定で、PKCS#11 の URL を使用して TLS 秘密鍵を ssl_certificate_key ディレクティブに指定できるようになりました。
16.3.3. Apache Tomcat は RHEL 8.0 で削除され、RHEL 8.8 で再導入される リンクのコピーリンクがクリップボードにコピーされました!
Apache Tomcat サーバーは Red Hat Enterprise Linux 8.0 から削除され、RHEL 8.8 で再導入されました。Tomcat は、Java Servlet および JavaServer Pages テクノロジーの公式リファレンス実装で使用されるサーブレットコンテナーです。Java Servlet および JavaServer Pages の仕様は、Java Community Process に基づいて Sun によって開発されました。Tomcat はオープンな参加型環境で開発され、Apache ソフトウェアライセンスバージョン 2.0 に基づいてリリースされています。
サーブレットコンテナーを必要とする RHEL 8.8 より前のマイナーバージョンのユーザーは、JBoss Web Server を使用できます。