Запустить adduser не интерактивно

Я хотел бы использовать команду adduser, чтобы добавить пользователя (с отключенным паролем) через сценарий оболочки.

По умолчанию adduser предлагает вам различные значения (например, Full Имя). Есть ли способ отправить эти значения через командную строку? Или мне нужно useradd вместо этого?

1
задан 7 January 2013 в 13:30

1 ответ

useradd также может добавлять пользователей и не имеет встроенных встроенных подсказок.

useradd -m -p <encryptedPassword> -s /bin/bash <user>
-m, --create-home: создать домашнюю директорию пользователя -p, [ f6]: указать пароль пользователя -s, --shell: оболочка по умолчанию для пользователя входа в систему. Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradd Substitute <user>, с именем входа. Замените <encryptedPassword> на зашифрованный пароль

Генерация хэшированного пароля:

Существует много реализаций crypt3, которые могут генерировать хешированный пароль.

Sha-512 Based

Результирующий формат вывода: механизм хеширования ($6 для sha-512), случайная соль (восемь

-m, --create-home: создать домашнюю директорию пользователя

DES основанный:

Полученный формат вывода: первые 2 байта - ваша соль, остальная часть - полезная нагрузка. Все это ваш хешированный пароль.

mkpasswd: mkpasswd (предоставляется пакетом whois) -p, --password: Укажите пароль пользователя perl: perl -e "print crypt('password', 'sa');" /!\ Выбирайте свою собственную случайную двухбайтную соль вместо 'sa' -s, --shell: оболочка по умолчанию для пользователя входа в систему Blank будет использовать стандартную логическую оболочку, указанную переменной SHELL в /etc/default/useradd
25
ответ дан 25 May 2018 в 15:20
  • 1
    Варианты, о которых вы говорите, не существуют для adduser в моей (недавней) версии Ubuntu. – ᴠɪɴᴄᴇɴᴛ 22 September 2015 в 23:30
  • 2
    @ ᴠɪɴᴄᴇɴᴛ adduser отличается от useradd, смущая меня. – ThorSummoner 23 September 2015 в 00:01
  • 3
    Ой, действительно, пропустили, что вы используете его почти тезка ... разве нет BDFL, защищающего пространство имен командной строки? ;п – ᴠɪɴᴄᴇɴᴛ 23 September 2015 в 12:52
  • 4
    @ mum007 Это общий совет, попробуйте добавить -v или -vv или -vvv в свои команды ssh, чтобы узнать, что не так, и выполните поиск сообщений об ошибках здесь, в SO или Google. – ThorSummoner 3 December 2015 в 21:30
  • 5
    @KovacsAkos попробуйте это: sudo sed -i"" -e "s/PasswordAuthentication no/PasswordAuthentication yes/" /etc/ssh/sshd_config и sudo service ssh restart – JSBach 5 April 2017 в 12:01

Другие вопросы по тегам:

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