So fügen Sie eine vorhandene public-key in authorized_keys-Datei mit Ansible und Benutzer-Modul?
Ich bin Programmier-eine einfache Aufgabe mit Ansible so erstellen Sie einen Benutzer und fügen Sie einen vorhandenen öffentlichen RSA-Schlüssel. Dies ist der code, den ich schrieb:
- 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') }}"
Den code, den ich schrieb, ist nicht elegant und ich denke, dass die beste option wird es sein, fügen Sie der bestehenden öffentlichen RSA-Schlüssel mit der Benutzer-Erstellung blockieren, um zu erstellen und füllten die authorized_keys
Datei.
Ich habe gelesen, die Ansible Benutzer-Modul aber ssh_key_file Methode schließt nicht die Möglichkeit zu echo den Wert einer vorhandenen pub-Taste, um die authorized_keys
Datei (der end-Zweck ist, können remote-Verbindung mit ssh mit den Benutzer-und den privaten Schlüssel).
ssh_key_file = Optional geben Sie die SSH-Schlüssel mit dem Namen. Wenn dies ein
relative Dateinamen, dann wird es relativ zum Basisverzeichnis des Benutzers
- Verzeichnis.
Ist es möglich, mit Ansible zu verwalten, die dieser Prozess im user-Modul?
- Also Sie schrieb einige code und haben noch nicht einmal die Mühe gemacht, zu versuchen, es vor dem posten zu StackOverflow? Weil es nicht ausgeführt werden. Er wird sagen:
/tmp/test_user_id_rsa.pub
existiert nicht (es sei denn, Sie haben Chaos auf Ihrem lokalen computer). - Sie Recht für die Fehlermeldung, ich habe es bei meinem test, aber ich vergaß zu erwähnen, dass es in der post. Ich werde es Bearbeiten, zur Klärung und schonender für meine zukünftigen post. Außerdem bin ich mir auch nicht sicher, warum, ich bekomme es mit dem code, da die Datei existieren, nachdem die Kopie ausgeführt wurde.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Antwort auf dein problem ist:
Das ist alles, was benötigt wird.
Bezug auf Ihre Lektüre der Dokumentation,
ssh_key_file
bezieht sich auf die Erzeugung eines SSH-Schlüssel-paar, das ist nicht, was Sie wollen.