GNU/Linux >> Linux の 問題 >  >> Linux

root を持つすべてのユーザーを一覧表示するにはどうすればよいですか?

解決策 1:

ルートパスワードを変更することを忘れないでください。 root 以外のユーザーが UID 0 を持っている場合は、そうすべきではありません。悪いアイデア。確認するには:

grep 'x:0:' /etc/passwd

繰り返しますが、これを行うべきではありませんが、ユーザーがルート グループのメンバーであるかどうかを確認するには:

grep root /etc/group

誰でも root としてコマンドを実行できるかどうかを確認するには、sudoers を確認してください:

cat /etc/sudoers

root 権限でプログラムを実行できるようにする SUID ビットを確認するには:

find / -perm -04000

解決策 2:

誰が UID 0 かを確認するには:

getent passwd 0

グループ root のメンバーを確認するには 、 wheel adm そして admin :

getent group root wheel adm admin

すべてのユーザーと、ユーザーがメンバーであるグループを一覧表示するには:

getent passwd | cut -d : -f 1 | xargs groups

解決策 3:

純粋なルートはユーザー ID "0" です。

システム内のすべてのユーザーは /etc/passwd ファイルにあります:

less /etc/passwd

ルートであるユーザーは、3 列目のユーザー ID として「0」を持っています。グループが「0」の場合 (4 列目) には、いくつかの root 権限もある可能性があります。

次に、グループを見て、「root」、「wheel」、または「admin」グループの追加メンバーを確認します。

less /etc/group

これらのグループにリストされているユーザーは、特に「sudo」コマンドを介して、いくつかのルート権限を持つことができます。

最後に確認する必要があるのは、「sudo」構成で、このコマンドを実行する権限を持っているとして誰がリストされているかを確認します。このファイル自体は十分に文書化されているため、ここでは再現しません:

less /etc/sudoers

これは、root アクセス権を持つことができる主な領域をカバーしています。

解決策 4:

すべてのユーザーを印刷するには

perl -n -e '@user = split /:/ ; print "@user[0]\n";' < /etc/passwd

他の人が言ったように、暗黙のルート権限を持つユーザーであるUID 0を持つユーザーのみを印刷するには:

perl -n -e '@user = split /:/ ; print "@user[0]\n" if @user[2] == "0";' < /etc/passwd

解決策 5:

すべてのユーザーの簡単なリストを表示するには、passwd を入力した後にタブを 2 回押してください (オートコンプリート)。 コマンドの後にスペースを入力します。これは su で動作します コマンドも同様です。

root 権限を持つユーザーとして実行する必要があります。


Linux
  1. Linuxですべてのファイルをサイズ別に一覧表示または並べ替える方法

  2. Linuxにインストールされているすべてのパッケージを一覧表示する方法

  3. DNSSECでドメインを一覧表示する方法

  1. ルートユーザーからすべてのユーザーに権限を変更するにはどうすればよいですか?

  2. ログインしているすべてのユーザーを一覧表示する方法

  3. Linux グループ内のすべてのユーザーを一覧表示する方法は?

  1. 実行中の画面セッションを一覧表示するには?

  2. Linux - すべてのユーザーを一覧表示する方法

  3. Linux でロックされているすべてのユーザーを一覧表示するにはどうすればよいですか?