commited current state (new functions, may not work by now)

This commit is contained in:
Ansible Servercow
2025-10-08 09:32:02 +02:00
parent e5f83941b9
commit b21a80af07
54 changed files with 1381 additions and 74 deletions

View File

@@ -0,0 +1,52 @@
---
- name: User "{{ admin_user }}" anlegen
ansible.builtin.user:
name: "{{ admin_user }}"
shell: /bin/bash
state: present
register: admin_user_result
- name: .sshVerzeichnis anlegen
ansible.builtin.file:
path: "/home/{{ admin_user }}/.ssh"
state: directory
owner: "{{ admin_user }}"
group: "{{ admin_user }}"
mode: "0700"
when: admin_user_result.changed
- name: PublicKeys von URL holen
ansible.builtin.uri:
url: "{{ admin_ssh_pub_key_url }}"
return_content: yes
delegate_to: localhost
register: fetched_keys
- name: Liste der einzelnen Keys erstellen
ansible.builtin.set_fact:
key_list: "{{ fetched_keys.content.splitlines() }}"
- name: authorized_keys anlegen (falls nicht vorhanden)
ansible.builtin.file:
path: "/home/{{ admin_user }}/.ssh/authorized_keys"
state: touch
owner: "{{ admin_user }}"
group: "{{ admin_user }}"
mode: "0600"
- name: Jeden Key einzeln mit authorized_key hinzufügen
ansible.builtin.authorized_key:
user: "{{ admin_user }}"
key: "{{ item | trim }}"
state: present
loop: "{{ key_list }}"
when: item | trim != ""
- name: Passwordlesssudo für alle Befehle konfigurieren
ansible.builtin.copy:
dest: "/etc/sudoers.d/{{ admin_user }}"
content: |
{{ admin_user }} ALL=(ALL) NOPASSWD: ALL
owner: root
group: root
mode: "0440"