Systemd 262には、TPM2セキュリティ、OpenSSL 4、静的バイナリが搭載されています。

キーポイント:
  • これにより、基本ユニット(basic.targetなど)を統合した単一の静的systemdバイナリを生成でき、軽量コンテナ内でPID1として実行するのに最適です。
  • RestartRandomizedDelaySec パラメータは、大規模な障害発生後に同期的な再起動が雪崩のように発生するのを防ぐために、ランダムな遅延を導入します。
  • ディスクセキュリティとTPMは、Argon2id(PBKDF2に代わるもの)を使用してPINパスワードを実装し、認証情報をチップのSRKキーに制限します。
  • アトミックアップデートの改善:systemd-sysupdateに新しいファイルデータベースと、不要になったファイルを削除するクリーンアップコマンドが追加されました。
  • Intel TDX(機密仮想マシン)向けのsystemd-vmspawnサポートと、run0用の新しいsudoスタイルのコマンドを追加しました。

systemd

システムおよびサービスマネージャであるsystemdのバージョン262がリリースされました。3ヶ月の開発期間を経て、大幅な改良が加えられています。今回のリリースでは、軽量な仮想化環境向けにアーキテクチャを最適化し、トラステッドプラットフォームモジュール(TPM)に関連する暗号化プロトコルを改善し、run0やsystemd-sysupdateなどのネイティブツールに重要な機能を追加しました。

システムフットプリントを最小限に抑える必要のあるコンテナを念頭に、 systemd は静的リンクを使用して単一の実行可能ファイルをコンパイルする機能を提供するようになりました。このコンパイル ( `-Dsystemd-multicall-binary=true`などのパラメータを使用して Mesonで有効化) は、非常に小さなコンテナの起動プロセス (PID 1) として動作するように設計されており、動的ライブラリをロードするための `dlopen()` 呼び出しの使用を回避し、標準の NSS の代わりに簡略化されたユーザーおよびグループ検索に依存します。

さらに、実行ファイルには、basic.target、sysinit.target、multi-user.target、reboot.targetなどの必須ユニットファイルが内部に埋め込まれるようになりました。これらの埋め込みファイルは、ディスクから設定をロードできない場合の代替手段として使用され、コンテナがユニットファイルを明示的にインストールすることなく起動できるようにします。

サービス管理と障害復旧

複数のサービスが同時に障害を起こした際に同期再起動が発生するリスクを軽減するため、 `RestartRandomizedDelaySec` パラメータが導入されました。このポリシーは、サービスが自動的に再起動する前にランダムな(均一分布の)遅延を追加し、その遅延時間は `RestartSec` で設定された時間に加算されます。さらに、スライスユニットには `ActivatingConcurrencyMax` という制限が組み込まれており、階層内で同時にアクティブ化できるユニットの最大数を決定します。超過したアクティブ化は、キャパシティスロットが利用可能になるまでキューに格納されます。

継続的な高可用性が求められる環境(重要なサーバーなど)では、サービスユニット向けにLUOSessionパラメータが実装されました。このパラメータは、systemdに対してLive Update Orchestratorセッションを作成するように指示し、サービスの動作を中断することなくシステムカーネルのホットアップデートを可能にし、プロセスとデバイスの状態を維持します。

TPM2、fscrypt、ストレージセキュリティ

このバージョンのその他の新機能としては、TPM 内の暗号化された認証情報がストレージ ルート キー(SRK) に直接リンクされるようになり、復号化されたデータを傍受しようとする中間コンポーネントによる中間者攻撃 (MitM) を防ぐことができるようになったことが挙げられます。また、systemd-cryptenroll を介した TPM2 PIN 認証情報の登録には、デフォルトで Argon2id アルゴリズムが採用され、従来の方式 (direct/PBKDF2) よりもはるかに堅牢なキーマテリアルが生成されます。

ユーザーストレージレベルでは、 systemd-homed はfscrypt ファイルシステムを使用して暗号化されたディレクトリの動作を変更しました。新規作成時にはデフォルトでバージョン 2 (fscrypt v2) のポリシーが適用され、マスターキーがファイルシステムのキーリングに格納され、異なるマウント名前空間間で参照できるようになります。fscrypt v1 ディレクトリは引き続き機能しますが、v2 へのインプレースアップグレードパスは提供されません。

さらに、dm-cloneカーネルモジュールにネイティブブートサポートが追加されました。これにより、 /etc/clonetabから読み取った読み取り専用ブロックデバイスから変更可能なクローンを生成できます。

原子力技術のアップグレードと環境の変化

パーティションとディレクトリをアトミックに置き換えることでシステムアップデートを行うsystemd -sysupdateスイートは、インストール済みファイルの永続的なデータベースを保持するようになりました。不要なファイルを削除するためのcleanupコマンドが追加され、「推奨コンポーネント」の概念が採用されました。これらのコンポーネントは、マシンのアーキテクチャやMachineTagsに基づいて動的に評価され、ドライバのインストールを自動化できます。

バージョン262におけるその他の重要な変更点は以下のとおりです。

  • systemd-vmspawn: Intel TDXアーキテクチャ(–coco=tdx)上で機密仮想マシンを実行するためのサポートを追加し、AMD SEV-SNPに加わりました。
  • OpenSSLと登録: レコードの不変性システム(前方秘匿性シール、FSS)は、libgcryptライブラリからOpenSSLのネイティブ暗号化関数に移行されています。また、OpenSSL 4の初期コンパイルサポートも追加されています。
  • 端末とユーザビリティ: run0権限昇格ユーティリティには、Polkitの認証タイムアウトをリセットまたは検証するための-k、-K、-vなどのsudo互換オプションが追加されました。vconsoleでは、FONT_SCALEを使用してフォントサイズを100%または200%に設定できるようになり、FIDO2トークンのパスワードプロンプトには、残りのPIN試行回数が表示されるようになりました。
  • systemd-sysctl: システムに書き込まれた値が実際に適用されたことを再読み込みによって確認するための「-verify」フラグが追加されました。

最後に、さらに詳しく知りたい場合は、以下のリンクから詳細をご確認いただけます。


Googleで優先ソースとして追加する