【问题标题】:Ansible authorized_key cant find key fileAnsible authorized_key 找不到密钥文件
【发布时间】:2017-07-27 19:09:20
【问题描述】:

我开始使用 Ansible 来自动创建用户。以下代码创建用户和 /home/test_user_003/.ssh/id_rsa.pub 文件。

但是 authorized_key 步骤给出了错误“在查找中找不到文件”。它在那里,我可以看到它。

  ---
   - hosts: test
     become: true
     tasks:
     - name: create user
       user:
         name: test_user_003
         generate_ssh_key: yes
         group: sudo
         ssh_key_passphrase: xyz
     - name: Set authorized key
       authorized_key:
         user: test_user_003
         state: present
         key: "{{ lookup('file', '/home/test_user_003/.ssh/id_rsa.pub') }}"

(我很想知道为什么“key”使用查找,但这仅用于教育)

【问题讨论】:

  • 您在哪台机器上寻找密钥?

标签: ansible


【解决方案1】:

您在远程主机上创建用户,但尝试在本地主机上查找生成的密钥(ansible 中的所有查找都在本地执行)。

您可能想要捕获(注册)用户任务的结果并使用它的字段:

 - name: create user
   user:
     name: test_user_003
     generate_ssh_key: yes
     group: sudo
     ssh_key_passphrase: xyz
   register: new_user
 - name: Set authorized key
   authorized_key:
     user: test_user_003
     state: present
     key: "{{ new_user.ssh_public_key }}"

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2016-09-14
  • 2016-12-17
  • 2020-03-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-08
  • 2020-12-24
  • 1970-01-01
相关资源
最近更新 更多