Vagrant,启用无密钥SSH登录

Vagrant,启用无密钥SSH登录,ssh,key,vagrant,ansible,Ssh,Key,Vagrant,Ansible,我有一个流浪的虚拟机,我正在使用ansible配置它。在我的配置脚本中,我创建了一个用户并设置了他们的密码,但我怀疑密码被哈希成了我无法使用的东西: - name: Create SSH user for workers action: user name=worker password=worker shell=/bin/bash groups=vagrant 当我去sshworker@myvmhost并输入密码worker我收到消息: Permission denied

我有一个流浪的虚拟机,我正在使用ansible配置它。在我的配置脚本中,我创建了一个用户并设置了他们的密码,但我怀疑密码被哈希成了我无法使用的东西:

    - name: Create SSH user for workers
      action: user name=worker password=worker shell=/bin/bash groups=vagrant
当我去
sshworker@myvmhost
并输入密码
worker
我收到消息:

Permission denied, please try again.

有没有办法在我的“流浪者”框中设置一个用户,该用户只需使用用户名和密码即可登录?在这种情况下,
worker
/
worker

您写的意思是

有一个为用户设置密码的指南

简而言之,是这样做的:

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
请注意,使用此方法,密码将在主机而不是远程计算机上散列