Ale*_*oux 8 ssh ssh-keys ansible
我正在使用 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') }}"
Run Code Online (Sandbox Code Playgroud)
我编写的代码并不优雅,我认为最好的选择是将现有的 RSA 公钥与用户创建块一起添加,以便创建和填充文件authorized_keys
。
我已阅读Ansible 用户模块,但 ssh_key_file 方法不包括将现有 pub 密钥的值回显到文件的可能性authorized_keys
(最终目的是能够使用用户和私钥通过 ssh 进行远程连接)。
ssh_key_file = (可选)指定 SSH 密钥文件名。如果这是相对文件名,那么它将相对于用户的主目录。
Ansible 是否可以在用户模块内管理此过程?
您的问题的答案是:
- 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 }}"
Run Code Online (Sandbox Code Playgroud)
这就是所需要的一切。
关于您阅读的文档,ssh_key_file
涉及生成 SSH 密钥对,这不是您想要的。
归档时间: |
|
查看次数: |
24230 次 |
最近记录: |