Ansible 动态可解析SSH密钥管理
我正在创建一个ansible角色来动态管理用户SSH密钥。一般的想法是让它读取该目录中的所有Ansible 动态可解析SSH密钥管理,ansible,Ansible,我正在创建一个ansible角色来动态管理用户SSH密钥。一般的想法是让它读取该目录中的所有文件/*.pub文件,并将它们合并为根用户的单个授权密钥文件 在下面的示例中,a.pub和b.pub将是要添加的两个键。任务应将这两个文件添加到授权密钥文件中,并在添加和删除文件时保持此处的.pub文件列表与文件同步。因此,如果将c.pub添加到文件夹中,它将添加到authorized_keys文件中,而不修改任务 角色结构: /-- roles | |-- ssh | | |-- files
文件/*.pub
文件,并将它们合并为根用户的单个授权密钥
文件
在下面的示例中,a.pub
和b.pub
将是要添加的两个键。任务应将这两个文件添加到授权密钥
文件中,并在添加和删除文件时保持此处的.pub
文件列表与文件同步。因此,如果将c.pub
添加到文件夹中,它将添加到authorized_keys
文件中,而不修改任务
角色结构:
/-- roles
| |-- ssh
| | |-- files
| | |-- a.pub
| | |-- b.pub
| |-- tasks
| |-- main.yml
|-- site.yml
您要查找的内容是,并将用作:
- name: ensure authorized keys
authorized_key:
exclusive: yes
key: >
{% for fn in lookup("fileglob", "files/*.pub") %}
{{ lookup("file", fn) }}
{% endfor %}
# ... whatever other options you want