Должен ли я использовать отдельного пользователя с правами администратора в качестве моего & ldquo; root sudo & rdquo; или предоставить sudo моему пользователю приложения?

Bash (и другие оболочки) не печатает PS1 как есть. Они интерпретируют его, и дисплей вывод. Bash, например, разворачивает различные специальные коды как \u, \w, и т.д., и затем ( из руководства Bash, Управление Подсказкой ):

После того, как строка декодируется, она расширена через расширение параметра, замену команды, арифметическое расширение и удаление кавычки согласно значению promptvars опция оболочки (см. Bash Builtins).

расширение Параметра (т.е. переменное расширение) означают, что строка как $PWD в PS1 расширена. Если Вы хотите показать плоскость $PWD в подсказке, сделайте любой из:

PS1='\$PWD '
# or
shopt -u promptvars
PS1='$PWD '

1
задан 17.04.2020, 06:09

1 ответ

Полные права sudo должны быть зарезервированы для реальных пользователей. Пользователю, в контексте которого вы планируете запускать сетевые службы, в первую очередь они не нужны. Вы также можете подумать об отключении пароля и оболочки входа для такого чисто «виртуального» пользователя, закрыв поле пароля в /etc/shadow и расположив оболочку в /etc/passwd - /bin/false.

Создание отдельных пользователей для сервисов, пользователей приложения, как вы это называете, является обычной техникой.

0
ответ дан 17.04.2020, 06:10
  • 1
    Если Вы используете Ubuntu, пользователь root уже " nullified" - или неспособный войти в систему. В основном его поле пароля просто заблокировано. Можно сделать то же в любом другом GNU/дистрибутиве Linux, хотя могли бы быть некоторые ситуации, где некоторый сервис, т.е. чашки настаивает, чтобы Вы предоставили пароль пользователю root (который плох, если этот пароль неприменим). Если Вы сталкиваетесь с теми ситуациями, можно всегда повторно активировать пароль root временно. См. man 1 passwd и man 5 passwd для некоторых подсказок на лучшей практике. – Fadhli Asyraf 17.04.2020, 06:10
  • 2
    Спасибо, Paul! Так, в основном, I' ll аннулируют ' root' пользователь, замените того пользователя ' admin' это имеет полные sudoer полномочия. И также создайте ' virtual' пользователь, который выполнит NGINX, PHP и MySQL (и аннулирует их пароль и окружит доступ), и затем создают другого пользователя, названного ' app' это I' ll предоставляют СУПЕР полномочия в MySQL? – TiTnOuK 17.04.2020, 06:11

Теги

Похожие вопросы