ユーザーを追加するための正しいsudoers構文は何ですか?

ユーザーを追加するための正しいsudoers構文は何ですか?

/etc/sudoers(Fedora 13)のコメントによると:

## Syntax:
##
##    user  MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.

私の2つの関連質問:

  1. ALL=(ALL) ALL次の行はどういう意味ですか?

    root  ALL=(ALL)   ALL
    
  2. これらの2行をテストしましたが、機能的にどのように異なるかはわかりません。

    superadm    ALL=(ALL)    ALL
    superadm    ALL=ALL
    

マニュアルを読みましたが、構文規則に従うのは難しいです。その(ALL) ALL部分が命令とタグの仕様だと推論してみましたが、まだ理解していません。

ベストアンサー1

メモ:私は答えています1.、イグナシオの後すでに答えています 2.

次の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

ここでは、追加またはグループ権限を使用して、2つのコマンドを(または)でalan実行できます/bin/ls/bin/killrootbinoperatorsystem

alanしたがって、次のグループ権限を持つユーザーとして実行するオプションがあります。lsbinoperator

sudo -u bin -g operator /bin/ls /whatever/directory

省略した場合-uと同じです-u root。省略すると、-g他のグループ権限は付​​与されません。

おすすめ記事