検索

4.9. カーネル

download PDF

RHEL 8.6 のカーネルバージョン

Red Hat Enterprise Linux 8.6 には、カーネルバージョン 4.18.0-372 が同梱されています。

外部カーネルパラメーターの重要な変更 および デバイスドライバー も参照してください。

(BZ#1839151)

Extended Berkeley Packet Filter for RHEL 8.6

extended Berkeley Packet Filter (eBPF ) は、限られた一連の関数にアクセスできる制限付きサンドボックス環境において、カーネル領域でのコード実行を可能にするカーネル内の仮想マシンです。この仮想マシンは、特別なアセンブリーのようなコードを実行します。

eBPF バイトコードが最初にカーネルにロードされ、その後に検証が行われます。次に実行時のコンパイルでコードがネイティブマシンコードに変換され、その後、仮想マシンがコードを実行します。

Red Hat は、eBPF 仮想マシンを使用するコンポーネントを数多く提供しています。各コンポーネントの開発フェーズはさまざまです。そのため、現在すべてのコンポーネントが完全にサポートされている訳ではありません。RHEL 8.6 では、以下の eBPF コンポーネントがサポートされています。

  • eBPF を使用して Linux オペレーティングシステムの I/O 分析、ネットワーク、およびモニタリングを行う BPF コンパイラーコレクション (BCC) ツールパッケージ。
  • BCC ライブラリー。これを使用すると、BCC ツールパッケージで提供されるツールと同様のツールを開発できます。
  • eBPF for Traffic Control (tc) 機能。これにより、カーネルネットワークデータパスでのプログラミング可能なパケット処理が可能になります。
  • bpftrace トレース言語
  • カーネルネットワーキングスタックを処理する前に受信パケットへのアクセスを提供する eXpress Data Path (XDP) 機能は、特定の条件でサポートされます。詳細は、XDP に条件付きサポートを追加 および RHEL におけるネットワーク eBPF 機能の概要 を参照してください。
  • libbpf パッケージ。bpftrace および bpf/xdp の開発のようなアプリケーションに関連する bpf に極めて重要です。
  • xdp-tools パッケージが、AMD および Intel 64 ビットアーキテクチャーでサポートされるようになりました。このパッケージには、XDP 機能用のユーザー空間サポートユーティリティーが含まれます。これには、 libxdp ライブラリー、XDP プログラムを読み込む xdp-loader ユーティリティー、パケットフィルタリングの xdp-filter サンプルプログラム、XDP が有効になっているネットワークインターフェイスからパケットを取得する xdpdump ユーティリティーなどが含まれます。

特定のコンポーネントがサポート対象と示されていない限り、その他のすべての eBPF コンポーネントはテクノロジープレビューとして提供されます。

現在、以下の主要 eBPF コンポーネントは、テクノロジープレビューとして利用できます。

  • eXpress Data Path (XDP) パスをユーザー空間に接続する AF_XDP ソケット

テクノロジープレビューのコンポーネントに関する詳細情報は、eBPF がテクノロジープレビューとして利用可能になりました。 を参照してください。

(BZ#1780124)

Red Hat は、デフォルトで、特権ユーザーに対してのみ、すべての RHEL バージョンで eBPF を有効にします。

Extended Berkeley Packet Filter (eBPF) は、ユーザーが Linux カーネル内でカスタムコードを実行できるようにする複雑なテクノロジーです。その性質上、eBPF コードはベリファイアやその他のセキュリティーメカニズムを通過する必要があります。Common Vulnerabilities and Exposures (CVE) インスタンスがあり、このコードのバグが不正な操作に悪用される可能性がありました。このリスクを軽減するため、Red Hat は、特権ユーザーの場合にのみ、すべての RHEL バージョンで eBPF を有効にしています。kernel.command-line パラメーター unprivileged_bpf_disabled=0 を使用して、非特権ユーザーに対して eBPF を有効にすることができます。

ただし、次の点に注意してください。

  • unprivileged_bpf_disabled=0 を適用すると、カーネルが Red Hat サポートの資格を失い、システムがセキュリティーリスクにさらされます。
  • Red Hat は、CAP_BPF 機能を持つプロセスを、その機能が CAP_SYS_ADMIN と同等であるかのように扱うことを推奨します。
  • unprivileged_bpf_disabled=0 を設定しても、非特権ユーザーが多くの BPF プログラムを実行するには不十分です。これは、ほとんどの BPF プログラムタイプのロードには追加の機能 (通常は CAP_SYS_ADMIN または CAP_PERFMON) が必要になるためです。

カーネルコマンドラインパラメーターの設定方法は、カーネルコマンドラインパラメーターの設定 を参照してください。

(BZ#2089409)

osnoise および timerlat トレーサーが RHEL8 に追加される

osnoise トレーサーは、オペレーティングシステムのノイズを測定します。つまり、OS によるアプリケーションの中断とハードウェアの中断です。また、OS ノイズの原因を見つけるのに役立つ一連のトレースポイントも提供します。timerlat トレーサーは、ウェイクアップレイテンシーを測定し、リアルタイム (RT) スレッドのそのようなレイテンシーの原因を特定するのに役立ちます。RT コンピューティングでは、レイテンシーは絶対に重要であり、最小限の遅延でさえ有害になる可能性があります。osnoise および timerlat トレーサーを使用すると、OS がアプリケーションに干渉したり、RT スレッドのウェイクアップ遅延が発生したりする原因を調査して見つけることができます。

(BZ#1979382)

strace ユーティリティーは、実際の SELinux コンテキストと SELinux コンテキストデータベースから抽出された定義との間の不一致を表示できるようになりました

strace の既存の --secontext オプションは、mismatch パラメーターで拡張されました。このパラメーターを使用すると、不一致の場合にのみ、実際のコンテキストとともに期待されるコンテキストを出力できます。出力は、2 つの感嘆符 ( !!) で区切られます。最初は実際のコンテキスト、次に期待されるコンテキストです。以下の例では、コンテキストのユーザー部分が不一致であるため、full,mismatch パラメーターは、実際のコンテキストとともに期待される完全なコンテキストを出力します。ただし、単独の mismatch を使用する場合は、コンテキストのタイプ部分のみをチェックします。コンテキストのタイプ部分が一致するため、予期されるコンテキストは出力されません。

[...]
$ strace --secontext=full,mismatch -e statx stat /home/user/file
statx(AT_FDCWD, "/home/user/file" [system_u:object_r:user_home_t:s0!!unconfined_u:object_r:user_home_t:s0], ...

$ strace --secontext=mismatch -e statx stat /home/user/file
statx(AT_FDCWD, "/home/user/file" [user_home_t:s0], ...

SELinux コンテキストの不一致は、SELinux に関連するアクセス制御の問題を引き起こすことがよくあります。システムコールトレースに出力された不一致により、SELinux コンテキストの正確性のチェックが大幅に迅速化されます。システムコールトレースは、アクセス制御チェックに関する特定のカーネルの動作を説明することもできます。

(BZ#2038992BZ#2038810)

--cyclictest-threshold オプションが rteval ユーティリティーに追加されました

この機能拡張により、--cyclictest-threshold=USEC オプションが rteval テストスイートに追加されました。このオプションを使用すると、しきい値を指定できます。待ち時間の測定値がこのしきい値を超えると、rteval テストの実行はすぐに終了します。待ち時間の期待が満たされない場合、実行は失敗ステータスで中止されます。

(BZ#2012285)

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.