マルチユーザーシステムでは、ユーザーがrootを介して他のユーザーのファイルにアクセスするのを防ぎますか?文脈に応じて、質問は次のように私の理解に基づいています。
root権限に関連する2つのコマンドがありますsudo
。su
を使用すると、sudo
他のユーザー(ルートを含む)になりません。sudo
ユーザーに代わって実行される事前定義済みの承認済みコマンドのリストがあります。ルートや他のユーザーではないため、自分のパスワードを使用して簡単に認証できます。
を使用すると、su
実際にはrootまたは他のユーザーになります。 Bobというユーザーになるには、Bobのパスワードが必要です。ルートになるには、ルートパスワード(マルチユーザーシステムで定義されている)が必要です。
参考資料:Howtogeek.com:
su
rootユーザーアカウントに切り替え、rootアカウントのパスワードが必要です。sudo
root 権限で 1 つのコマンドを実行すると、root ユーザーに切り替えられません。
そして
sub bob コマンドを実行すると、Bob のパスワードを入力するよう求められ、シェルは Bob のユーザーアカウントに切り替えられます。コンピュータ希望ネットワーク
'sudo'は、rootコマンドを実行する権限を持つユーザーを表すルートバイナリsetuidです。
ルートになると、すべてにアクセスできます。他のユーザーのアカウントに不正にアクセスする人はrootパスワードを取得できず、sudo
何を使用できるかについての定義もありません。
次のことを見るまで、これはすべて意味があります。このリンクsudo -V
、ここに自分のパスワードを使ってルートになるためのチュートリアルがありますsudo su -
。
どのユーザーでもrootパスワードなしでrootになることができれば、不正アクセスからユーザーファイルを保護するメカニズムは何ですか?
ベストアンサー1
これ基本sudo
との違いは、su
認証に使用されるメカニズムです。ユーザーはパスワード(徹底的に保護する必要があります)をsu
知る必要があり、通常はユーザーに自分のパスワードを要求するように設定されます。すべてのユーザーが混乱を招くのを防ぐために、幸いなことに、このコマンドで解放された権限はファイルを使用して構成できます。root
sudo
sudo
/etc/sudoers
これら2つのコマンドはしばしば他のユーザーとしてコマンドを実行しますroot
。
sudo su -
ユーザー(またはユーザーが属するグループ)がファイル/etc/sudoers
に構成されているため、提供された例で機能します。つまり、許可するsudo
これにより一時的に権限をsudo
取得し(ユーザー名がroot
指定されていない場合はデフォルト)。パスワードを知らなくてもアクセスできます。root
su -
root
root
逆に、ユーザーに使用を許可しないとsudo
使用できませんsudo su -
。
ディストリビューションには、通常、wheel
メンバーがsudo
すべてのコマンドを実行できるようにするグループ(しばしば呼ばれる)があります。このグループから削除すると、デフォルトでsudo
はまったく使用できなくなります。
これを行う行は次/etc/sudoers
のとおりです。
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
このグループからユーザーを削除すると、システムはより安全になりますが、ユーザー(または他のシステム管理者)がユーザーに代わってシステムでより多くの管理タスクを実行します。
より賢明なトレードオフは、誰がそれを使用でき、使用できないか、およびそれらが使用できるコマンド(デフォルトではなく)をsudo
より細かく制御できるように構成することです。sudo
みんな注文する)。例えば、
## Allows members of the users group to mount and unmount the
## cdrom as root
%users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
(以前の%wheel行がコメントアウトされているwheel
場合、またはグループにユーザーがいない場合にのみ便利です。)
おそらくディストリビューションでは、管理者がユーザーとシステムに何を要求するかを予測できないため、これらのより細かい構成を標準で実装することはありません。
結論は、詳細を知っていると、ユーザーシェルへのアクセスを許可しない他のコマンド、または他のユーザーのファイルを変更できるコマンドへのアクセスを許可しながら停止できることですsudo
。誰に、どのレベルまで許可するかを慎重に検討する必要があります。sudo su -
root
sudo
警告する:visudo
ファイルを編集するには、必ずこのコマンドを使用してください。sudoers
編集内容を確認し、誤って設定されたファイル(構文エラーのため)により、sudo
エラーに対して編集を使用できないという難しい状況を防ぐことができます。これは、root
このアカウントがデフォルトで無効になっているDebian / Ubuntuとバリアントの場合に特に当てはまります。