グループに優先順位を付けることはできますか?

グループに優先順位を付けることはできますか?

[tjm@ArchPad bin]$ LANG=en [tjm@ArchPad bin]$ pwd /usr/bin [tjm@ArchPad bin]$ ll | grep wireshark -rwxr-x--- 1 root wireshark 88K Apr 25 00:22 dumpcap -rwxr-xr-x 1 root wireshark 2.0M Apr 25 00:23 wireshark-gtk [tjm@ArchPad bin]$ groups `whoami` wheel wireshark users [tjm@ArchPad bin]$

コマンドを使用すると、sudo -G wireshark wireshark-gtkWireshark-gtkを起動して問題なく聞くことができます。

ただし、実行すると、次のようwireshark-gtkに表示されます。

Could not run /usr/bin/dumpcap in child process: Permission denied.

したがって、グループ優先順位sudo -Gつまり、私(ユーザー)がファイルと同じグループIDを持っていて、ファイルにグループ優先順位が設定されている場合は?必要なく、そのグループIDでファイルを実行することを意味します。

ちなみに、setgidこれは安全ではなく、誰もがグループ権限でこのファイルを実行できるため、私が望むものではありません。

答え1

何とid

Wiresharkグループに自分自身を追加した場合は、ログアウトして再度ログインする必要があるようです。

(エラーメッセージをグーグルして見つけたポイント)

答え2

setuid 設定は、/usr/bin/dumpcapグループメンバー以外に誰も実行できない場合は安全です。その後、自分のグループwiresharkに自分を追加します。wiresharkusermod -aG wireshark $(whoami)

この方法で設定するには:chgrp wireshark /usr/bin/dumpcap; chmod 4710 /usr/bin/dumpcap

ところで、sudo任意の権限操作には適していません。それでもファイルにsetuidを使用したくない場合は、最新のツールを使用してこれを達成することを検討してください。

答え3

「グループ優先順位」は、一般的に使用される用語ではありません。ファイルシステムの照会に使用するグループを選択することを意味すると思います。そんなことはありません。つまり、すべてのグループに「グループ優先順位」があります。ファイルがグループ(ユーザーではない)に属し、そのグループに属している場合は、グループ権限を取得します。グループはプライマリグループまたはセカンダリグループです。

wiresharkグループに属している場合は、実行できます/usr/bin/dumpcap

whoami``` shows that your user account is in the「wiresharkグループID」group, but it doesn't show that your *session* is in theの出力です。グループ会員はログイン時に適用されます。グループに自分自身を追加した場合は、ログアウトしてから再度ログインする必要があります。よりgroup. To test that, runwith no arguments, orユーザーをグループに追加しましたが、ファイルに対するグループ権限はまだ適用されません。

関連情報