sudoersファイルのパラメータは何ですか?

sudoersファイルのパラメータは何ですか?

sudoers ファイルには次の行があります。

root ALL=(ALL) ALL

最初のフィールドがユーザーであることを読みました。最初ALLはすべてのユーザーを意味するすべての端末、(ALL)最後はALLすべてのコマンドを意味します。

  1. sudoersファイルにその行がない場合はどうなりますか?では、ルートは何もできませんか?

  2. username ALL= /bin/passwdこのように「username」を解釈して、すべての端末でpasswdを実行することは可能ですか?

  3. firstの代わりにどのような値を指定できますかALL

答え1

  1. このファイルは可能な通話sudoersのみを制御します。何でもできるsudoようにする行は通常役に立ちません。なぜなら、ルートは決して役に立たないからです。rootsudo必要 sudo何でも。より便利です。これにより、ルートや他のsudoerが勝手に呼び出すことができ、sudo権限を向上させるために呼び出すことができるスクリプトを作成できます。

  2. username ALL = /bin/passwdユーザーがpasswdすべてのコンピュータで(そしてすべての端末でコマンドを実行できるようにします。sudoはそれを気にしません)Sudoを使用すると、ファイルにコンピュータ名を使用できるため、変更せずにネットワーク上のすべてのコンピュータにファイルを配布sudoersできます。まだ特定のコンピュータにのみ適用されるいくつかの規則があります。sudoers

  3. 2番目の場所にはホストのリストがあります(マニュアルHost_Listを参照)。sudoersこれは、コンマで区切られたホスト名のリストです。ホスト名の代わりにエイリアス(詳細についてはマニュアルを参照)、IPアドレス、またはさまざまなサブネットを指定する方法(詳細についてはマニュアルを参照)を使用できます。

マニュアルsudoersは読みやすくありませんが、最後に良い例のリストがあります。そのセクションを最初に読むことをお勧めします。

答え2

sudo実際、rootユーザーに対する権限はありません。この行は、ルートがプレフィックス付きのコマンドを実行した場合に表示されますsudo。このルールは、ルートがこれを行うことを許可します。

sudoスクリプトにプレフィックス付きのコマンドを含めることができる場合は、ルートがブロックされないように保護することをお勧めします。

ところで、あなたが読んだ規則は次のとおりです。

root ALL=(ALL) ALL

これは、ルートがすべてのホストのすべてのユーザーとしてすべてのコマンドを実行できることを意味します。したがって、ルールをあるシステムから別のシステムに移動する場合、ルートを特定のホストに制限すること、または何らかの方法でsudoルートを介して制限することに言及しないという点で、ルールは移植可能です。

関連情報