注:イグナシオはすでに2.に答えているので、私は1.に答えています。
次のsudo
エントリ:
superadm ALL=(ALL) ALL
4つのフィールドがあります。
- 最初のものは、いくつかのコマンドの特権を付与されるユーザーを指定します。
- 2番目のものはめったに使用されません。これは、このsudoエントリが有効になるホスト名のリストです。標準セットアップでは、関連するホストは1つだけであるため(localhost)、通常、このフィールドはとして残され
ALL
ます。
- 第四のフィールドは、コマンドのリストがある
superadm
特権で実行できるようになります。ALL
すべてのコマンドを意味します。それ以外の場合は、コマンドのコンマ区切りリストを使用します。
- 3番目のフィールド(
(…)
オプションで記述されたフィールド)は、superadm
ユーザーが次のコマンドを実行できるユーザー(およびグループ)を指定します。ALL
何でも選択できることを意味します(無制限)。このフィールドが省略されている場合、と同じことを意味し(root)
ます。
例:
alan ALL = (root, bin : operator, system) /bin/ls, /bin/kill
ここでは、alan
2つのコマンドを実行するために許可されている/bin/ls
と/bin/kill
のようにroot
(またはbin
多分追加して、)、operator
またはsystem
グループの権限。
そのため、ユーザーとして、次のようなグループ権限でalan
実行することを選択できます。ls
bin
operator
sudo -u bin -g operator /bin/ls /whatever/directory
-u
が省略された場合、それはと同じ-u root
です。場合は-g
省略され、追加のグループ権限が付与されません。