Zeile 9: |
Zeile 9: |
| | | |
| * Installation eines Minimalsystems | | * Installation eines Minimalsystems |
− | * Einrichten eines Benutzers speziell für ansible (optional) | + | * Einrichten eines Benutzers speziell für Ansible (Beispiel, das bereits Ansible nutzt, siehe unten) |
| * Installation der Pakete | | * Installation der Pakete |
| ** openssh-server | | ** openssh-server |
Zeile 30: |
Zeile 30: |
| vars: | | vars: |
| ansible_python_interpreter: /usr/bin/python3 | | ansible_python_interpreter: /usr/bin/python3 |
| + | |
| + | ==== Einrichten eines Ansible-Benutzers ==== |
| + | |
| + | Das folgende Skript <code>setupAnsible.yaml</code> geht davon aus, dass auf dem Zielrechner ein frisches [[Ubuntu]] 18.04 installiert ist, auf das man sich mit [[SSH]] als normaler Nutzer einwählen kann. Dieser Nutzer ist auch in der sudo-Gruppe und kann mittels Eingabe eines sudo-Passworts root-Rechte bekommen. |
| + | |
| + | <pre> |
| + | # Call this file with |
| + | # ansible-playbook -l YOURRECHNER -K -v setupAnsible.yaml |
| + | |
| + | - hosts: |
| + | - all |
| + | |
| + | tasks: |
| + | - name: create group ansible |
| + | become: true |
| + | group: |
| + | name: ansible |
| + | gid: 425 |
| + | |
| + | - name: create user ansible |
| + | become: true |
| + | user: |
| + | name: ansible |
| + | group: ansible |
| + | uid: 425 |
| + | password: "$6$rXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXh." |
| + | # encrypted password created with |
| + | # mkpasswd --method=sha-512 |
| + | # You can make it really complicated, since you do not need it again. |
| + | state: present |
| + | |
| + | - name: add user ansible to sudoers with no passwd |
| + | become: true |
| + | copy: |
| + | src: etc/sudoers.d/ansible |
| + | dest: /etc/sudoers.d/ansible |
| + | mode: "0440" |
| + | validate: "visudo -cf %s" |
| + | |
| + | - name: set my authorized key for user ansible |
| + | become: true |
| + | authorized_key: |
| + | key: "{{ lookup('file', lookup('env','HOME') + '/.ssh/id_rsa.pub') }}" |
| + | user: ansible |
| + | state: present |
| + | </pre> |
| + | |
| + | Nach Ausführung dieses Playbooks mittels |
| + | |
| + | wird der Nutzer <code>ansible</code> in die <code>inventory.yaml</code> als Standard-Ansible-Nutzer eingetragen: |
| + | all: |
| + | hosts: |
| + | blacky: |
| + | ansible_host: blacky.fritz.box |
| + | '''ansible_ssh_user: ansible''' |
| | | |
| === Vorbereitung des Kontrollrechners === | | === Vorbereitung des Kontrollrechners === |