В каких условиях я должен создавать системного пользователя вместо обычного пользователя?

13

Из adduserкоманды я увидел вариант --systemсоздания системного пользователя. Системный пользователь будет использовать /bin/falseи по умолчанию принадлежать nogroup. Он также не скопирует /etc/skelв домашний каталог.

В каком состоянии я бы предпочел создать системного пользователя?

steveyang
источник
8
трезвый, я представляю.
Sirex

Ответы:

18

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

Технически это не имеет значения, но в реальном мире оказывается, что долгосрочные преимущества в хранении учетных записей пользователей и программного обеспечения в отдельных частях числового пространства.

В основном, это позволяет легко определить, что такое учетная запись, и должен ли человек иметь возможность войти в систему.

Даниэль Питтман
источник
1
Под программными учетными записями вы подразумеваете такие, как www-dataи ftpправильно?
Steveyang
Это хорошие примеры программных аккаунтов, да. Кроме того ntp, или postgres, postfix.
Даниэль Питман
Спасибо. Эти учетные записи в моей системе в основном настраиваются самим программным обеспечением. Есть ли условия, когда мне нужно настроить такие учетные записи вручную?
Steveyang
Наверное, не очень часто, нет. Но если вы сами собирали программное обеспечение с нуля, легко представить необходимость в этом make install. Поскольку в * NIX не принято скрывать параметры, используемые сценариями, такими как сценарии, запускаемые make installпользователями (даже в тех случаях, когда пользователь редко желает использовать такую ​​функцию, например -Bфлаг mysql ), эта опция доступна для Вы можете использовать в интерактивном режиме на случай, если вам когда-нибудь понадобится.
BMDan