setsecattr コマンド
目的
コマンド、デバイス、特権ファイル、プロセス、またはドメイン割り当てオブジェクトのセキュリティー属性を設定します。
構文
setsecattr [-R load_module]{ -c | -d | -p | -f | -o} Attribute = Value [ Attribute = Value ...] Name
説明
setsecattr コマンドは、Name パラメーターによって指定された、コマンド、デバイス、またはプロセスのセキュリティー属性を設定します。 このコマンドは、Name パラメーターを、-c (コマンド)、-d (デバイス)、-f (特権ファイル)、または -p (プロセス) のいずれのフラグが指定されるかに基づいて、コマンド、デバイス、特権ファイル、またはプロセスのいずれかとして解釈します。
- 複数ドメインからのデータベースを使用する
- 特権コマンドのセキュリティー属性を設定する
- 特権デバイスのセキュリティー属性を設定する
- 特権ファイルのセキュリティー属性を設定する
- ドメイン割り当てオブジェクトのセキュリティー属性を設定する
最初のマッチング・エントリーのみが変更されます。 残るドメインからの重複エントリーは変更されません。 特定のドメインからのエントリーを変更する場合は、-R フラグを使用します。 ドメイン内にマッチング・エントリーが検出されない場合は、最初のドメインに Name パラメーターの新規エントリーが作成されます。 特定のドメインにエントリーを追加する場合は、-R フラグを使用します。
属性の値を設定するには、Attribute=Value パラメーターによって属性名および新規の値を指定します。
属性をクリアするには、Attribute=Value のペアに Attribute=
を指定します。
値がリストである属性に増分変更を行うには、Attribute=+Value
としての Attribute=Value のペア、または Attribute=-Value
を指定します。
Attribute=+Value
を指定すると、値は、属性の既存の値に追加されます。
Attribute=-Value
を指定すると、値は、属性の既存の値から除去されます。
フラグ
項目 | 説明 |
---|---|
-c | システム上のコマンドのセキュリティー属性を設定するように指定します。 Name パラメーターを使用して指定するコマンド名が、特権コマンド・データベース内にない場合は、/etc/security/privcmds 特権コマンド・データベース内にコマンド・エントリーが作成されます。 属性がクリアされ、それがコマンドに設定された唯一の属性であると、コマンドは特権コマンド・データベースから除去されます。 特権コマンド・データベースに加えられた変更は、データベースが、setkst コマンドを使用してカーネル・セキュリティー・テーブルに送信されるまで使用されません。 |
-d | システム上のデバイスのセキュリティー属性を設定するように指定します。 Name パラメーターを使用して指定するデバイス名が、特権デバイス・データベース内にない場合は、/etc/security/privdevs 特権デバイス・データベース内にデバイス・エントリーが作成されます。 属性がクリアされ、それがデバイスに設定された唯一の属性であると、デバイスは特権デバイス・データベースから除去されます。 特権デバイス・データベースに加えられた変更は、データベースが、setkst コマンドを使用してカーネル・セキュリティー・テーブルに送信されるまで使用されません。 |
-f | システム上の特権ファイルのセキュリティー属性を設定するように指定します。 Attribute=Value のペアによって要求される変更が、/etc/security/privfiles 特権ファイル・データベースで行われます。 指定されたファイルが特権ファイル・データベース内にない場合は、データベース内にファイル・エントリーが作成されます。 属性がクリアされ、それがコマンドに設定された唯一の属性であると、コマンドは特権ファイル・データベースから除去されます。 |
-o | システム上のオブジェクトのセキュリティー属性を設定するように指定します。Name パラメーターを使用して指定したオブジェクト名がドメイン・オブジェクト・データベースに
ない場合は、/etc/security/domobjs ドメイン・オブジェクト・データベース内にオブジェクト・エントリーが作成されます。
消去している属性が、オブジェクトに設定された唯一の属性セットであった場合は、
そのオブジェクト・エントリーはドメイン・オブジェクト・データベースから除去されます。
ドメイン・オブジェクト・データベースに加えられた変更は、そのデータベースが setkst コマンドを使用して
カーネル・セキュリティー・テーブルに送信されるまで使用されません。
|
-p | システム上のアクティブなプロセスの数字プロセス ID (PID) が設定されることを指定します。 Attribute=Value のペアによって指定する変更は、指定されたアクティブなプロセスの状態に即時影響します。 変更は、データベース内に保管されません。 |
-R load_module | セキュリティー属性の変更に使用するロード可能モジュールを指定します。 |
パラメーター
項目 | 説明 |
---|---|
Attribute = Value | オブジェクトのセキュリティー属性の値を設定します。
有効な属性名のリストは、-c、-d、-p、
および -o の各フラグを使用して指定されたオブジェクト・タイプによって決まります。
特権コマンド・データベース (-c) フラグには、以下の属性を使用します。
|
|
|
特権デバイス・データベース (-d) フラグには、以下の属性を使用します。
|
|
特権ファイル (-f) フラグには、以下の属性を使用します。
特権プロセス (-p) フラグには、以下の属性を使用します。
|
|
ドメイン割り当てオブジェクト・データベース (-o) フラグには、以下の属性を使用します。
|
|
Name | 変更するオブジェクトを指定します。 Name パラメーターは、指定するフラグに従って解釈されます。 処理する名前は 1 つずつ指定する必要があります。 |
セキュリティー
setsecattr コマンドは特権コマンドです。 これは、モードを 755 に設定した root ユーザーおよびセキュリティー・グループによって所有されます。 このコマンドを正常に実行するには、以下の許可のうちの少なくとも 1 つを持つロールを引き受ける必要があります。 トラステッド・プロセスの場合、 監査システムは個別のプロセスのオブジェクト監査イベントをログに記録しません。 ただし、ユーザーはイベント監査を使用してイベントをキャプチャーすることができます。
項目 | 説明 |
---|---|
aix.security.cmd.set | -c フラグを指定したコマンドの属性を変更する場合に必要です。 |
aix.security.device.set | -d フラグを指定したデバイスの属性を変更する場合に必要です。 |
aix.security.file.set | -f フラグを指定したデバイスの属性を変更する場合に必要です。 |
aix.security.proc.set | -p フラグを指定したプロセスの属性を変更する場合に必要です。 |
aix.security.dobject.set | -o フラグを指定したプロセスの属性を変更する場合に必要です。 |
アクセスされるファイル
項目 | 説明 |
---|---|
ファイル | モード |
/etc/security/privcmds | rw |
/etc/security/privdevs | rw |
/etc/security/privfiles | rw |
/etc/security/domobjs | rw |
例
- /usr/sbin/mount コマンドの許可特権のペアを設定するには、以下のコマンドを入力します。
setsecattr -c authprivs=aix.fs.manage.mount=PV_FS_MOUNT /usr/sbin/mount
- PV_AU_WRITE および PV_DAC_W 特権を、/dev/mydev デバイスの既存の書き込み特権セットに徐々に追加するには、以下のコマンドを入力します。
setsecattr -d writeprivs=+PV_AU_WRITE,PV_DAC_W /dev/mydev
- /etc/security/user ファイルの読み取り許可を設定するには、以下のコマンドを入力します。
setsecattr -f readauths=aix.security.user.change /etc/security/user
- PV_DAC_R 特権を、アクティブなプロセスの有効な特権セットから徐々に除去するには、以下のコマンドを入力します。
setsecattr -p eprivs=-PV_DAC_R 35875
- LDAP で /usr/sbin/mount コマンドのアクセス許可を設定するには、次のコマンドを入力してください。
setsecattr -R LDAP -c accessauths=aix.fs.manage.mount /usr/sbin/mount
- ネットワーク・インターフェース en0 上のドメインを設定するには、
次のコマンドを入力します。
setsecattr -o domains=INTRANET,APPLICATION conflictsets=INTERNET objtype=netint secflags=FSF_DOM_ANY en0