Мой английский не так хорош, извините
Я использую ansible ad-hoc для установки пароля пользователя. Используйте user's
python -c "from passlib.hash import sha512_crypt; import getpass; print sha512_crypt.using (rounds = 5000) .hash (getpass.getpass ())"
сгенерировать зашифрованный пароль , Я понял :
$ 6 $ 3k8DQBapvmIOZu4W $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0
запускать доступный ad-hoc
ansible localhost -m user -a "name = testuser password = '$ 6 $ 3k8DQBapvmIOZu4W $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5couzMeJHJX PresentMCouzMcJFeJHJX
запустить нормально, но в / etc / shadow
[root @ localhost roles_test] # grep testuser / etc / shadow testuser: k8DQBapvmIOZu4W: 17420: 0: 99999: 7 :::
К сожалению, только часть зашифрованного пароля, а не полная строка
ansible localhost -m user -a "name = testuser password = '\ $ 6 \ $ 3k8DQBapvmIOZu4W \ $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5ChdjFeQ'
работает нормально, но вроде не шустро.
Итак, как это исправить? Спасибо
Это из-за bash
подстановка переменных.
Пытаться:
ansible localhost -m user -a 'name=testuser password=$6$3k8DQBapvmIOZu4W$JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0 state=present'