私はAnsibleの使用にかなり慣れていないので、こことグーグルを読んでいて、まだ答えが見つかりません.
私のシナリオでは、サーバーに 1 人のユーザーがいますが、authorized_keys ファイルに入れる必要がある 2 ~ 3 個の異なる公開鍵があります。
このスクリプトを使用して、すべてのキーを正常に削除したり、すべてのキーを追加したりできます。
---
- hosts: all
tasks:
- name: update SSH keys
authorized_key:
user: <user>
key: "{{ lookup('file', item) }}"
state: present
#exclusive: yes
with_fileglob:
- ../files/pub_keys/*.pub
present
フラグを使用して、すべてのキーを読み取り、追加します。フラグを使用すると、absent
リストされているすべてのキーが削除されます。
問題は、サーバー上にのみある古いキーがあり、それを削除/上書きし、将来の展開のために、プレイブックではなくサーバー上にある可能性のある未承認のキーを上書きすることです。
exclusive
フラグを使用すると、最後のキーのみを取得して追加します。ループして再帰的にすべてのキーを追加する場合、これは素晴らしいことです。Ansible でこれを行う方法がある場合、私はそれを見つけていません。
pub ファイルをループしexclusive
、同時にオプションを使用する方法はありますか?