Linux機能概要


導入


このシリーズでは、Linuxの機能を見て、どのように我々はより安全なコンピューティング環境を実行するためにそれらを使用することができます.この特定のポストでは、我々はLinux機能の導入とそれらの使用が伝統的な特権モデルと比較する方法を通過します.

伝統的なモデル


Linuxカーネル2.2以前では、Linux特権モデルは通常、最初のインスタンスとしてバイナリの決定を行い、プロセスがプログラムを実行するために必要な権限を持っているかどうかを判断します.

プロセスの実効ユーザID(EUID)が0だった場合.これは実効ユーザがrootかスーパーユーザであることを意味します.このユーザーは、他のすべてのチェックフォームとアプリケーションを実行できるプロセスRISをバイパスしました.EUIDが0でない場合、プロセスは
プロセスのEUIDによって保持される
  • 特権.
  • 実効グループID(EGID)によって保持される
  • 特権
    補助グループによって保持される
  • 特権は、プロセスを実行しようとするユーザーが属します.
  • Linux機能を入力


    ケーパビリティは特権とアクセス制御権限に対する細かなアプローチである.これは、プロセスが、その機能を実行するために他のフォームのスーパーユーザとして実行する必要がある伝統的なモデルのすべてまたは何のアプローチに分散しています.システム上の特権活動は、活動の部分集合を保持している各々の能力を有する別個の装置に分割される.
    このモデルでは、プロセスは必要なアクティビティを実行するために必要な正確な機能を必要とします.例えば、システム時間を変更する必要があるプロセスには、Capsure sysount時間機能が必要です.rootユーザとして実行する必要はありません.このスキームは、少なくとも特権のセキュリティ原理を可能にし、また、プロセスの妥協が従来のモデルと比較してより低い露出面を運ぶことを保証する.
    また、能力の定義は石で設定されていない何も価値があります.微調整が常に最も特権の原則を実施するために進行中である領域です-プロセスがそれがタスクとそれ以上を実行するのに必要とするちょうど必要な特権を与えられるのを可能にして.
    Capper sysstra管理は、保持された特権を減らすために多くの改良を受けた1つのそのような能力です.これはDefaultスーパーユーザ機能として使用されないことを確認することです.あなたがサービスを構築するか、カーネル5.8より前のCapper sysstra管理能力を利用したコンテナを走らせるならば.プロセスがバークリーPacket Filter ( BPF )またはパフォーマンス監視タスクを実行するためのものであれば、それらのタスクはカーネル5.8ではうまくいかないでしょう.これは、BPFFとCAPHEN PerfmonがCAPHIGH SUSHRACE管理者からそれぞれBPFとパフォーマンス監視機能を取るためにつくられたので、これです.
    システムと権限をサポートする機能は、Linuxのマニュアルページを見ることによって確認することができます.
    man 7 capabilities
    
    シリーズの次のポストでは、我々は能力の実用的なアプリケーションを見ています.