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

Лучший способ создать пользователя без пароля

Как лучше всего создать пользователя без пароля? Под отсутствием пароля я подразумеваю учетную запись, которая будет использоваться только учетной записью root с помощью команд su / sudo (например, пользователя none, используемого Apache или Nginx).

Я читал, что установка * в поле пароля файла / etc / shadow работает, но я хотел бы знать, есть ли способ сделать это с помощью команды useradd.

Я думал сделать:

useradd my_new_user -s /sbin/nologin -p '*'

но я не уверен, что команду useradd можно использовать таким образом. Я не нашел никаких упоминаний об этом.

Это работает так, как вы описали (конечно, вы можете указать любую оболочку, которую хотите, вместо /bin/bash):

root# useradd temp_test1 -s /bin/bash -p '*'
root# su temp_test1
temp_test1#

После выполнения вышеуказанного useradd команда, следующая запись находится в моем /etc/shadow файл:

temp_test1:*:15842:0:99999:7:::

Когда используешь Джон Смит Необязательноответ, будет работать следующее:

root# useradd temp_test2 -s /sbin/nologin
root# su -s /bin/bash temp_test2
temp_test2#

РЕДАКТИРОВАТЬ: Хочу отметить, что разница в том, что вы не можете su в учетную запись, оболочка которой указана как /sbin/nologin если вы не укажете пригодную для использования оболочку при выдаче su команда:

root# useradd temp_test3 -s /sbin/nologin
root# su temp_test3
This account is currently not available.
root#

(Протестировано в CentOS 6.4 - должно работать в различных дистрибутивах).

useradd my_new_user -s /sbin/nologin

Если пароль не указан, он не создается / учетная запись отключена.