Я использую виртуальную машину на платформе Google Cloud.После создания к нему можно получить доступ через SSH через веб-интерфейс GCP. Когда я получаю доступ через SSH, я могу использовать судо
выполнять привилегированные действия. Когда я получаю доступ с помощью метода графического интерфейса, такого как Chrome Desktop или VNC, у меня нет привилегий sudo. Однако я получаю то же имя пользователя через кто я
в любом случае.
Я в замешательстве, потому что у меня есть некоторые предположения:
кто я
указывает текущего пользователя по его имени.
- Во всей системе существует только один пользователь с данным именем, и наоборот.
судо
применяется к текущему пользователю (тому же, что и кто я
)
- Аутентификация пользователя и свойства sudo одинаковы во всей системе.
Если это правда, я не понимаю, чем отличается судо
поведение, когда я вхожу в систему по-разному.
Обновление 3:
я побежал sudo usermod -aG имя пользователя sudo
и после перезагрузки пользователь везде имеет привилегии sudo. В файлах sudoers ничего не изменилось. Я не подумал проверить файл групп перед внесением изменений.
Я думаю, что с практической точки зрения сейчас все в порядке. Я до сих пор не понимаю, как один и тот же пользователь может иметь разные привилегии sudo в разных местах.
Обновление 2:
В /etc/sudoers
незакомментированные строки (и директивы):
По умолчанию env_reset
По умолчанию mail_badpass
По умолчанию secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
корень ВСЕ=(ВСЕ:ВСЕ) ВСЕ
%sudo ВСЕ=(ВСЕ:ВСЕ) ВСЕ
#includedir /etc/sudoers.d
в sudoers.d
является google_sudoers
содержащий
%google-sudoers ALL=(ALL:ALL) NOPASSWD:ALL
Версия ОС: Debian 10 (buster) Linux 4.19.0-17-cloud-amd64
Обновлять:
К сожалению, возможно, это может быть вызвано некоторыми функциями, добавленными Google в отношении группы google-sudoers.
Соответствующие журналы из /var/log/auth.log
gpasswd[2309]: пользователь user_me добавлен пользователем root в группу google-sudoers
Успешное судо:
sudo: user_me : TTY=pts/2 ; PWD=/home/user_me ; ПОЛЬЗОВАТЕЛЬ=корень ; КОМАНДА=/usr/bin/эхо-тест
sudo: pam_unix(sudo:session): сеанс открыт для пользователя root пользователем user_me(uid=0)
sudo: pam_unix(sudo:session): сеанс закрыт для пользователя root
Неудачное судо:
sudo: user_me: пользователь НЕ в sudoers; Телетайп=pts/0 ; PWD=/home/user_me ; ПОЛЬЗОВАТЕЛЬ=корень ; КОМАНДА=/usr/bin/эхо-тест
Я до сих пор не уверен, как поведение может отличаться для одного и того же пользователя.