用户模块设置用户密码

我的英语不太好,对不起

我使用可靠的ad-hoc设置一些用户的密码使用:

python -c“from passlib.hash import sha512_crypt; import getpass; print sha512_crypt.using(rounds = 5000).hash(getpass.getpass())”

生成encryption的密码,我得到这个:

$ 6 $ 3k8DQBapvmIOZu4W $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0

运行可靠的特别的

ansible localhost -m user -a“name = testuser password ='$ 6 $ 3k8DQBapvmIOZu4W $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0'state = present”

运行好,但在/ etc / shadow

[root @ localhost roles_test]#grep testuser / etc / shadow testuser:k8DQBapvmIOZu4W:17420:0:99999:7 :::

糟糕,只有密码的一部分,而不是一个完整的string

anonymous localhost -m user -a“name = testuser password ='\ $ 6 \ $ 3k8DQBapvmIOZu4W \ $ JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0'state = present”

工作正常,但它看起来不聪明。

那么,如何解决这个问题? 谢谢

这是因为bashvariablesreplace。

尝试:

 ansible localhost -m user -a 'name=testuser password=$6$3k8DQBapvmIOZu4W$JMWhRB8kfqttNBI9NuRFZlPFpo6g4cb5v7obrqNaGZepxQ1AFCXdYv5IEU5lJFeHJXouyaQlJADcMtdMCjhXz0 state=present'