Есть ли способ изменить запросы входа / пароля по умолчанию?

Я кое-что заметил Странное случилось с двумя моими Linux-серверами. У нас есть два десятка серверов Ubuntu 18.04 LTS, и все они одинаково запрашивают у нас подсказку:

# ssh admin@pl3poland
admin@pl3poland's password:

Однако недавно мы начали вводить более строгие требования к паролям на двух серверах. Мы изменили настройки в /etc/pam.d/common-password для libpwquality .

До:

password        requisite                       pam_pwquality.so retry=3 

После:

password        requisite                       pam_pwquality.so retry=3 minlen=12 difok=3 minclass=4 maxrepeat=2 dictcheck=1 usercheck=1

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

# spawn ssh admin@spain
Password:

Это относительно незначительное различие, но оно повлияло на несколько наших автоматических подпрограмм, в которых мы используем сценарии ожидания для подключения к системам. Я изменил сценарий, чтобы искать «sword:» вместо полного «password:», но мне просто любопытно, почему это изменилось, и есть ли способ вернуть его обратно?

Просмотр документации , Я нашел команду под названием "запрос пароля", но не похоже, что я могу использовать ее для постоянной установки префикса пароля.

Кто-нибудь может направить меня к файлу .conf или какой-либо документации, в которой объясняется, как это изменить? У меня был опыт работы с AIX, и был файл с именем /etc/security/login.cfg , который мы могли изменить, чтобы настроить «вестник» для каждого входа в систему. Но я не вижу ничего подобного в Ubuntu.

4
задан 15 April 2021 в 20:05

2 ответа

  • пароль пользователя @ сервера используется для аутентификации по паролю
  • Пароль: используется для интерактивной аутентификации с клавиатуры

Оба параметра устанавливаются с опцией SSH :

  • PreferredAuthentication = пароль
  • PreferredAuthentication = keyboard-interactiv

, как определено в RFC 4252 и RFC 4256 , поэтому маловероятно, что это связано с изменением в /etc/pam.d/common-password и другие, связанные с изменением в .ssh / config и настройки PreferredAuthentication , либо путем установки его с помощью параметра с ssh -o .

3
ответ дан 23 April 2021 в 23:25

Краткий ответ

В корневой папке/каталоге можно ли создавать новые папки, которые могут иметь файлы, такие как видео, документы, программные пакеты и т.д.

  • Да, если у вас есть привилегия.

Будет ли это иметь какие-либо побочные эффекты, если мы создадим дополнительные папки?

  • Нет, это просто другой каталог.

В дисководе Windows C у меня было такое управление файлами.

  • Такое поведение не рекомендуется даже в Windows при использовании в многопользовательской среде.

WWH (что, почему и как) отвечает

Системные администраторы могут создавать и использовать дополнительные каталоги в корневом каталоге / по различным причинам... например, совместное использование файлов, FTP, карантин... и т.д.

Некоторые производители устройств, например, маршрутизаторы, системы камер, устройства IOT... и т.д. могли бы сделать это также.

Однако рекомендуется использовать структуру каталогов Ubuntu/Linux/Unix. Эта структура существует в течение длительного времени в той мере, в какой она учитывается при создании, установке и запуске приложений, системных служб, сценариев, обслуживания, резервного копирования и даже устранения неполадок... Некоторые переменные среды, такие как $ HOME , являются реализацией этой концепции.

Да, это просто концепция ... но эта концепция (структура) была широко принята и принята как само собой разумеющееся в качестве стандартной структуры каталогов для систем * nix.

-121--913689-

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

Сначала , получите список каталогов с деревом .

Затем передайте их в xargs like so:

tree --noreport -dfi | xargs -L 1 -I {} echo touch {}/emptyfile_"$(date +%s)"

или , в while loop like so:

tree --noreport -dfi | \
while read -r d; do echo touch "$d"/emptyfile_"$(date +%s)"; done

или , даже в for loop (если имена каталогов не содержат мест) loop so:

for d in $(tree --noreport -dfi); do echo touch "$d"/emptyfile_"$(date +%s)"; done
  • echo есть ли предотвратить непреднамеренное создание файлов во время тестирования. После завершения вывода удалите эхо для создания файлов.

  • --noreport пропускает печать отчета файла и каталога в конце списка дерева.

  • -dfi перечисляет только каталоги, печатает полный префикс пути для каждого каталога и делает дерево не печатающим строки отступа.

  • Используйте -dfia вместо -dfi , чтобы включить также скрытые каталоги .

  • «$ (дата +% s)» добавляет текущую отметку времени к имени файла, например emptyfile _ 1618679443 , делая его уникальным из существующих файлов в каждом каталоге. Обратите внимание, что это можно изменить на случайное число, например, 67639871206723 , если требуется фиксированное имя файла.

  • xargs -L 1 -I {} считывает входные данные по одной строке за раз и присваивает их {} .

-121--913657-

Похоже, проблема заключалась именно в том, что указал Ринцвинд. Используя флаг отладчика ssh -vv,Я смог увидеть, что Ubuntu Server # 1 (polaris) останавливается на способе аутентификации «пароль», в то время как Ubuntu Server # 2 (spain) был

Для демонстрации, вот конец сеанса входа отладчика:

debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /.ssh/id_rsa
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /.ssh/id_dsa
debug1: Trying private key: /.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug1: Next authentication method: password
admin@polaris's password:

По сравнению с сервером на моем сервере в Испании:

debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /.ssh/id_rsa
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Trying private key: /.ssh/id_dsa
debug1: Trying private key: /.ssh/id_ecdsa
debug2: we did not send a packet, disable method
debug1: Next authentication method: keyboard-interactive
debug2: userauth_kbdint
debug2: we sent a keyboard-interactive packet, wait for reply
debug2: input_userauth_info_req
debug2: input_userauth_info_req: num_prompts 1
Password:

Теперь для моего любопытства я должен потратить время, чтобы выяснить, почему один использует пароль, а другой находится в интерактивном режиме клавиатуры. Я подозреваю, что это проблема с id_rsa.pub или authorized_keys записями. Но у меня не было времени исследовать его дальше.

Решение, которое мы предложили, чтобы исправить наши ожидаемые сценарии, состоит в том, чтобы просто искать «assword:» вместо «password:», который использовался ранее. Таким образом, если мы столкнемся с проблемой снова, автоматические процедуры продолжатся независимо от того, если мы получим «Password:» или «password:» как часть последовательности входа.

0
ответ дан 23 April 2021 в 23:25

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

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