Я настраиваю сервер Ubuntu 14.04 с помощью Digital Ocean и использую Cloud-Config в поле пользовательских данных для выполнения начальной настройки. Проблема, с которой я столкнулся, заключается в создании нового пользователя и установке пароля с хешированной строкой пароля SHA-512. После создания сервера этот новый пароль не работает. При изучении /etc/shadow
файла, я обнаружил, что хешированный пароль был скопирован с ошибочным !
в начале хеша. Пример строки из /etc/shadow/
как следует:
jerry:!$6$rHazYJBiLiJ2$yZei93AcU9JlauoBV338kVMAOBk0b83iYtxw2/seXfTVuW0e6qtP4sL.ip9JVdnT3HbZ4620ql66WaEANJkg61:16855:0:99999:7:::
После удаления !
незамедлительно после jerry:
, пароль работает должным образом.
Кто-нибудь знает, почему это могло происходить?
После небольшого исследования тонкостей Cloud-Config я обнаружил проблему. По умолчанию значение lock-passwd
установлено значение True. Это то, что вызывает !
будет добавлен перед хешированным паролем в /etc/shadow
. Явно установка lock-passwd
значение False позволяет всему плавно двигаться вперед!