Как проверить, есть ли у пользователя доступ Sudo

Пользователи Sudo - это привилегированные пользователи в Linux, которые имеют специальные разрешения и доступ к выполнению большего количества команд, чем обычный пользователь. Если у вас нет доступа sudo, вы не сможете выполнять команды и скрипты, требующие административных привилегий. В этой статье мы узнаем, как проверить, есть ли у пользователя доступ sudo.

Как проверить, есть ли у пользователя доступ Sudo

Самый простой способ проверить, есть ли у вас доступ sudo, - это запустить любую команду с sudo. Вот пример

Если у вас нет доступа sudo, вы увидите следующее сообщение. В следующем сообщении <username> будет именем пользователя, под которым вы вошли в систему, а <host> будет именем хоста или ip вашей системы Linux.

Однако приведенная выше команда позволяет проверить, есть ли у вас привилегии sudo или нет. Она не позволяет проверить, есть ли у другого пользователя доступ sudo или нет. Существует несколько способов сделать это. Мы рассмотрим их по очереди.

1. Использование команды sudo

Вы можете проверить, имеет ли пользователь доступ sudo, используя саму команду sudo, но с опциями -l и -U, как показано ниже.

Это также покажет, какие команды конкретный пользователь может выполнять в вашей системе. Вот пример вывода команды.

Результат

Согласно приведенному выше выводу, пользователь ubuntu может выполнять все команды, требующие доступа sudo. Если у пользователя нет доступа sudo, вы получите следующее сообщение.

Если вы хотите сделать то же самое, то есть проверить, какие команды вы можете выполнять, выполните приведенную выше команду, не указывая имя пользователя.

2. Использование групп Sudo

Каждый пользователь, имеющий доступ sudo, является частью группы пользователей sudo в Linux. Поэтому вы можете просто проверить, входит ли данный пользователь в эту группу sudo.

Вы можете легко использовать команду groups, чтобы перечислить все группы, в которые входит пользователь. Если вы видите ключевое слово sudo рядом с именем пользователя, это означает, что пользователь имеет доступ sudo.

Все группы и их члены перечислены в файле /etc/group. Вы можете выполнить следующую команду для получения списка всех членов группы.

Поскольку мы ищем членов группы с именем sudo, вы можете выполнить следующую команду, чтобы получить пользователей sudo.

В приведенной выше команде мы используем команду group для поиска строк, содержащих информацию о группе sudo. Каждая строка выглядит следующим образом, то есть 4 значения с разделителем двоеточие(:). В этом выводе последний столбец - имя пользователя, первый столбец - имя группы.

Затем мы передаем вывод команды grep в команду cut, указываем двоеточие (:) в качестве разделителя и извлекаем четвертый столбец - имя пользователя. Таким образом, вы увидите имена пользователей, присутствующие в группе sudo

Вы можете запустить приведенные выше команды в терминале, чтобы проверить, есть ли у вас доступ sudo, или добавить их в сценарий оболочки, чтобы автоматически проверить эти вещи и продолжить выполнение сценария.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий