rootとsudoの違いは何ですか?


14

rootユーザーはすべての特権を持つことができます。ただし、通常のユーザーは、suまたはsudoコマンドと自分のパスワードを使用して、rootのようなアクセスを取得できます。

それで、違いは何ですか?

回答:


7

su(とsudoの)コマンドは、伝統的に必要とルートのパスワードを。ただし、sudo通常のユーザーが/etc/sudoers(rootとして、できればを使用してvisudo)変更することにより、自分のパスワードでroot権限を取得できるように設定できます。

最新のLinuxディストリビューションでは、最初のユーザーが自分のパスワードでsudoを実行できるように事前設定されています。これにより、ユーザーによる偶発的なシステム構成ミスを防ぎ、別のルートパスワードを必要とせずに完全に制御できるようになります。


2
/ etc / sudoersを手動で編集する代わりに«visudo»を使用する必要があります。保存する前に構文がチェックされるため、トラブルを軽減できます。
ニコラス

@Nicolas更新してそれを含めました。しかし、ファイルは最新のディストリビューションによって自動的に書き込まれることを指摘したかったのです。
フィハグ

3

通常のユーザーは、sudoersファイルに含まれている場合にのみ、sudoを使用してルートアクセスを取得できます(つまり、必要に応じて管理者権限を取得するのに十分な信頼があることを意味します)。実稼働環境では、ほとんど誰もsudoerであってはなりません。


3

suコマンドそれへのアイデンティティ一時的な変更、システム上のすべてのユーザに、彼/彼女/その権限を持つ多くのプログラムを実行します。ルートである必要はありません。実行しているユーザーsuがルートでない場合、IDを取得するユーザーのパスワードを入力する必要があります。

sudoコマンドがすることである一つのコマンドを実行し、任意のユーザーの権限で。ルートである必要もありません。このコマンドは非常に構成可能であり、ある種の正確なアクセス制御を提供します。独自のパスワードの入力はオプションであり、構成可能です。一部の配布では、システムの最初のユーザーがsudoすべてを実行できます。


2

上記の回答に追加するには、

su user1ユーザーのパスワードを使用して、exitと入力するまで資格情報をuser1に切り替え、suデフォルトでrootになります。

sudo他の回答で述べたように、信頼できるユーザーと制限された一連のコマンドに付与できます。さらに、sudo実行されたコマンドをログに記録するように構成できます。これは、特権の悪用を追跡するための良い方法です。


1

すべての一般ユーザーがsudoを使用できるわけではありません。sudoersファイルに含まれている必要があり、ユーザーが実行できるコマンドまたはコマンドのタイプを制御できます。また、特定のユーザーのみがsuを使用してrootユーザーに切り替えることができます。通常、限られたコマンドセットに対するsudo権限と、限られた期間に対する完全なsu権限のみがあります。


3
すべてのユーザーがsuを使用できることを確認してください。切り替え先のユーザーのパスワードが必要になります。
グレイディプレーヤー

1
従来、BSDでは、suを使用してルートになるためにwheelグループに所属する必要があります。これはLinuxでも設定できますが、標準ではありません。
ヤープEldering

-2

スーパーユーザー権限を持つユーザーのみがsudoまたはsuを実行できますが、通常のユーザーは実行できません。これは/ etc / sudoersで設定され、常にvisudoで編集する必要があります。

このシステムの利点は次のとおりです。

  1. 特権ユーザーが必要なときにだけrootとしてコマンドを実行するのは簡単です。
  2. ルートユーザー名を推測するのが難しくなります(たとえば、単純なsshボットがシステムにログインしようとしたroot場合、最初に推測されるログイン名になります)。
  3. 共有システム上の複数のユーザーは、パスワードを共有する必要なく、root権限を持つことができます。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.