Не удается получить права sudo

Вопрос или проблема

У нас есть серверы OpenLDAP, и все клиенты работали много лет. Теперь мы вводим Ubuntu 24.04, и пользователь LDAP может войти в систему с помощью своего LDAP-идентификатора. Но не может получить права SUDO.

ubuntu@ip-10-17-24-63:~$ sudo su - rvasamsetti
группы: невозможно найти имя для ID группы 41001
ubuntu@ip-10-17-24-63:~$ id rvasamsetti
uid=50489(rvasamsetti) gid=41001 группы=41001
ubuntu@ip-10-17-24-63:~$
ubuntu@ip-10-17-24-63:~$ sudo su - rvasamsetti
группы: невозможно найти имя для ID группы 41001
rvasamsetti@ip-10-17-24-63:~$ id
uid=50489(rvasamsetti) gid=41001 группы=41001
rvasamsetti@ip-10-17-24-63:~$ getent passwd rvasamsetti
rvasamsetti:x:50489:41001:Ramakrishna Venkata:/home/rvasamsetti:/bin/bash
rvasamsetti@ip-10-17-24-63:~$ getent group 41001
rvasamsetti@ip-10-17-24-63:~$ getent group tsuser
rvasamsetti@ip-10-17-24-63:~$ sudo tail -f /var/log/auth.log
[sudo] пароль для rvasamsetti:
rvasamsetti нет в файле sudoers.
rvasamsetti@ip-10-17-24-63:~$

Ответ или решение

Введение

Проблема с получением привилегий sudo у пользователей LDAP в Ubuntu 24.04 представляет собой распространённую трудность, связующуюся с конфигурацией системы и настроек групп. В данном ответе мы рассмотрим детали проблемы и предложим пошаговое решение.

Проблема

Согласно предоставленным данным, пользователь LDAP (rvasamsetti) успешно аутентифицируется, но сталкивается с ошибкой при попытке получить sudo-привилегии. Конкретная ошибка заключается в том, что система не может найти название группы, соответствующее идентификатору группы (GID) 41001.

Анализ

  1. GID не существует: На основании команды getent group 41001 можно сделать вывод, что группа с GID 41001 не зарегистрирована в системе. Это приводит к ошибке при попытке проверки групповой принадлежности пользователя:

    groups: cannot find name for group ID 41001
  2. Отсутствие в sudoers: Когда пользователь пытается использовать команду sudo, система сообщает, что rvasamsetti не находится в файле sudoers. Это указывает на то, что ему не предоставлены соответствующие права для выполнения команд с помощью sudo.

Решение

Следует выполнить несколько шагов, чтобы исправить ситуацию:

Шаг 1: Создайте группу

Если GID 41001 должен существовать, необходимо создать соответствующую группу:

sudo groupadd -g 41001 имя_группы

Шаг 2: Добавьте пользователя в группу

Сделайте пользователя rvasamsetti членом вновь созданной группы:

sudo usermod -aG имя_группы rvasamsetti

Шаг 3: Настройте sudoers

Для предоставления привилегий sudo пользователю rvasamsetti необходимо добавить его в файл sudoers. Это можно сделать с помощью команды:

sudo visudo

В открывшемся редакторе добавьте следующую строку:

rvasamsetti ALL=(ALL) ALL

Это позволит пользователю rvasamsetti использовать команды с помощью sudo.

Шаг 4: Проверьте настройки LDAP

Убедитесь, что LDAP настроен правильно для интеграции с sudo. Это может включать:

  • Проверку конфигурации LDAP в /etc/nsswitch.conf для правильной обработки sudo:

    sudo: files ldap
  • Убедитесь, что запись для пользователя в LDAP включает правильные атрибуты sudo, такие как sudoRole.

Шаг 5: Примените изменения и протестируйте

По завершении всех действий перезагрузите систему или заново аутентифицируйтесь. Выполните команду sudo -l для проверки, есть ли у пользователя rvasamsetti необходимые привилегии:

sudo -l

Заключение

Проблема с получением привилегий sudo может быть решена путём создания отсутствующей группы, добавления пользователя в соответствующую группу и корректировки настроек sudoers. Не забывайте также проверять конфигурацию LDAP для обеспечения правильной интеграции. Исполнение предложенных шагов позволит восстановить функциональность sudo для пользователя rvasamsetti на Ubuntu 24.04.

Оцените материал
Добавить комментарий

Капча загружается...