如何使用Ansible和用户模块将现有的公钥添加到authorized_keys文件中?

亚历山大·鲁

我正在用Ansible编程一个简单的任务,以创建用户并添加现有的RSA公钥。这是我写的代码:

- name: SYSTEM - Create test user
  tags: system-user
  user: 
        name: "{{ test_user }}"
        state: present
        createhome: yes

- name: SYSTEM - Add existing pub key for test user
  tags: system-user
  copy: 
       content: "{{ test_user_pubkey }}"
       dest: "/tmp/test_user_id_rsa.pub"
       force: no
       owner: "{{ test_user }}"
       group: "{{ test_user }}"
       mode: 0600

- name: SYSTEM - Set authorized key for test_user took from file
  tags: system-user
  authorized_key:
        user: "{{ test_user }}"
        state: present
        key: "{{ lookup('file', '/tmp/test_user_id_rsa.pub') }}"

我编写的代码并不完美,我认为最好的选择是将现有的RSA公钥与用户创建块一起添加,以创建并填充authorized_keys文件。

我已经阅读了Ansible用户模块,但ssh_key_file方法不包括将现有发布密钥的值回显到authorized_keys文件的可能性(最终目的是能够使用用户和私钥与ssh进行远程连接)。

ssh_key_file =(可选)指定SSH密钥文件名。如果这是相对文件名,则它将相对于用户的主目录。

Ansible是否可以在用户模块中管理此过程?

Techraf

您的问题的答案是:

- name: SYSTEM - Create test user
  tags: system-user
  user: 
    name: "{{ test_user }}"
    state: present
    createhome: yes

- name: SYSTEM - Set authorized key for test_user took from file
  tags: system-user
  authorized_key:
    user: "{{ test_user }}"
    state: present
    key: "{{ test_user_pubkey }}"

这就是所需要的。


关于阅读文档,ssh_key_file与生成SSH密钥对有关,这不是您想要的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

即使将公钥添加到authorized_keys中也无法SSH

即使在将公钥手动添加到 authorized_keys 后,也无法连接到 AWS 实例

如何使用Golang将文件添加到现有的zip文件中

将公共ssh密钥添加到用户的authorized_keys中

如何使用python将列添加到现有的Excel文件中?

如何使用字典将新字典添加到现有的json文件中?

如何使用C#将Datagridview添加到现有的Excel文件中

如何将SSH密钥添加到authorized_keys文件?

如何将熊猫数据添加到现有的csv文件中?

如何通过php脚本将项目添加到现有的json文件中

如何使用PdfSharp将DocumentLink添加到现有的PDF文件

使用熊猫将工作表添加到现有的Excel文件中

制作别名以将密钥添加到远程authorized_keys文件

将文件添加到现有的ZIP文件

将ssh pubkey添加到本地主机上的authorized_keys中(跳过存在)

使用本地authorized_keys的LDAP用户的公钥身份验证

如何将监视模块添加到现有的Android Studio项目中?

使用 Ansible 将标签添加到现有的 XML 命名空间

将公钥和私钥放在“ authorized_keys”的不同章节下是否合理?

将文件添加到现有的zipfile

将页面添加到现有的pdf文件

如何手动将现有的配置文件和证书添加到快速通道匹配?

如何使用GnuPG将图片添加到我的公钥中?

在Java安全性中使用authorized_keys中的公钥

将新页面中的图像添加到现有的PDF文件中

如何将Git版本控制(Bitbucket)添加到现有的源代码文件夹中?

如何将新的jar文件添加到服务器中现有的已部署jar

如何将二进制文件添加到现有的PPA包中

如何使用 poi 将外部页眉页脚文件(.xml 格式)添加到现有的 .docx 文档