我有一个使用ansible配置的流浪汉VM。在我的配置脚本中,我正在创建一个用户并设置他们的密码,但我怀疑密码是以某种方式被删除到我无法使用的东西:
- name: Create SSH user for workers
action: user name=worker password=worker shell=/bin/bash groups=vagrant
当我转到ssh worker@myvmhost
并输入密码worker
时,我会收到消息:
Permission denied, please try again.
有什么办法可以在我的流浪盒上设置用户,只需使用用户名和密码登录即可?在这种情况下worker
/ worker
。
答案 0 :(得分:1)
你写的是password is hashed。
有一个指南here,用于为用户设置密码。
简而言之就是这样:
pip install passlib
python -c "from passlib.hash import sha512_crypt; print sha512_crypt.encrypt('worker')"
然后使用您的剧本中的值。如果您希望它完全自动化,您可以执行以下操作:
- name: ensure passlib python lib is installed
pip: name=passlib
delegate_to: 127.0.0.1
- name: hash password
shell: python -c "from passlib.hash import sha512_crypt; print sha512_crypt.encrypt('worker')"
register: hashed_pw
delegate_to: 127.0.0.1
- name: create SSH user for workers
user: name=worker
password={{ hashed_pw.stdout }}
shell=/bin/bash
groups=vagrant
请注意,使用此方法时,密码将在主机而不是远程上进行哈希处理。