如何查看Linux哪些用户拥有sudo权限

1. 前言

本教程将讲解如何查看Linux用户是否有sudo权限。您还将学习如何查看Linux系统上的所有sudo用户。

如何查看Linux哪些用户拥有sudo权限

如何查看Linux哪些用户拥有sudo权限

想知道您当前的用户在系统上是否有sudo权限?很容易验证。只要用sudo运行任何命令。如果你没有sudo权限,你应该在输出中看到:

  1. oucanrong@zcwyou:~$ sudo -v 

输出结果:

  1. Sorry, user standard may not run sudo on linuxhandbook. 

那很酷!但是如果检查其他用户是否拥有sudo权限呢?你也完全可以做到。我来教你怎么做。

2. 如何测试用户是否具有sudo权限

有几种方法可以检查Linux用户是否可以使用sudo。本文介绍一些。

(1) 方法1: 使用sudo命令查看用户是否是sudoer

sudo命令本身提供了一个选项来查看用户是否可以使用sudo运行命令。实际上,它告诉您某个用户可以使用sudo运行哪些命令。

如何查看Linux哪些用户拥有sudo权限

使用sudo命令查看用户是否是sudoer

要检查用户的sudo访问权限,请运行以下命令:

假设用户名为user_name

  1. sudo -l -U user_name 

如果用户可以用sudo运行一些或所有命令,您应该会看到这样的输出:

  1. Matching Defaults entries for abhi on test-server: 
  2.     env_reset, mail_badpass, 
  3.     secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin 
  4.  
  5. User zcwyou may run the following commands on test-server: 
  6.     (ALL : ALL) NOPASSWD: ALL 

如上述输出结果,用户zcwyou可以通过sudo访问运行所有命令。如果用户没有sudo权限,您应该看到这样的输出:

  1. User zcwyou is not allowed to run sudo on test-server. 

如果您想查看用户是否拥有sudo权限以及可以使用哪些命令运行sudo,可以使用相同的命令,但不要提供用户名。

  1. sudo -l 

(2) 方法2: 查看用户是否属于`sudo`组

另一种确定用户是否具有sudo访问权限的方法是查看该用户是否是sudo组的成员。

有几种方法可以查看Linux中用户的组。最简单也是我最喜欢的方法是这样使用groups命令:

假设要查看user_name这个用户的对应的组

  1. groups user_name 

如果您在输出中看到组sudo,则用户是sudo组的成员,应该具有sudo访问权。

  1. oucanrong@zcwyou:~$ groups ocr 

ocr : ocr sudo

(3) 额外提示:如何在您的系统中查看所有sudo用户

你已经学会了如何查看用户是否有sudo访问权限。怎么样在Linux系统中列出所有sudoers文件?

如何查看Linux哪些用户拥有sudo权限

额外提示:如何在您的系统中查看所有sudo用户

如果您已经阅读了本文,答案很简单。您所需要做的就是列出sudo组的成员。

在Linux中,有多种方法可以实现相同的结果。这不奇怪,在Linux中有多种方法可以列出组的成员。

若要列出系统的所有sudo用户,请按以下方式列出sudo组的成员:

  1. getent group sudo 

以下命令可以查看系统上拥有sudo权限的所有用户:

  1. getent group sudo 

输出结果:

相关推荐