Назад | Перейти на главную страницу

Каковы лучшие практики для создания системной учетной записи? (* NIX)

Я вручную установил службу под названием Gate One в /opt. Я хочу усилить его безопасность, поэтому я подумал, что создам системную учетную запись для его использования из-за наименее необходимых привилегий и всего такого.

Однако когда я побежал adduser --system gateone, он создал домашний каталог, который мне совсем не нужен. Поэтому я побежал adduser --system --home-dir /opt/gateone gateone, потому что я видел, как некоторые системные учетные записи устанавливали домашние каталоги, относящиеся к ним. Однако это сделало оболочку входа в систему /bin/sh вместо того /bin/false, что было сделано в первый раз (когда я не указал домашний каталог). Я немного запутался в том, как мне установить эти поля.

tl; dr: при создании системной учетной записи в операционной системе * NIX, каковы рекомендации по настройке домашнего каталога, оболочки входа и всего остального, что имеет значение? Зачем?

Примечание: я использую Ubuntu 13.04 Raring, если это важно, начиная с IIRC adduser может довольно сильно варьироваться от распределения к распределению.

На самом деле нет конкретной передовой практики, за исключением того, что оболочка должна быть / bin / false, если оболочка не требуется, хеш пароля должен быть ! если не ожидается, что пользователь войдет в систему, должно быть дано описательное имя, а домашний каталог должен быть установлен на /dev/null или аналогичный, если приложению не требуется действующий домашний каталог. У пользователя должна быть своя группа, желательно в диапазоне ID системы; если, например, для него не требуется основной GID root, не давайте его и, конечно же, не давайте его пользователям без особых требований. Все это зависит. Укажите все, что вам интересно (см. man adduser для всех доступных вариантов).

Если вы пытаетесь установить приложение, лучший выбор - создать пакет для этой системы и следовать указаниям администратора для этой системы (в руководствах написано, как установить, где, как интегрировать приложение с системой и т. Д.). Поскольку вы используете Ubuntu, вы можете следовать руководству Ubuntu / Debian. Сначала это может занять много времени, но если вы часто развертываете его (часто обновляете) или на нескольких машинах, это вам поможет.

adduser В команде есть переключатели для настройки того, что вы просите. Использовать adduser --help. В основном вы можете написать adduser --system --home /var/lib/my_app --shell /bin/false --disable-login --disable-password. Обратите внимание, что у большинства системных служб есть домашние каталоги в / var / lib /, или, если вы не предоставляете пакет для системы, он, вероятно, должен быть таким, как вы написали в /opt/<service>