2
0
Fork 0
ansible-example/README.md

2.1 KiB

Beispiel Ansible

Konfiguration

Du musst einmal die host_vars/server.example.com.yml Datei umbennenen und die inventory Datei anpassen um deinen Host zu erreichen. In host_vars/server.example.com.yml kannst du verschiedene Rollen konfigurieren.

nftables

In der value: zeile kannst du ports oder bekannte service namen angeben die zugallessen werden sollen. In diesem Beispiel benutzen wir eine Whitelist um bestimmten Traffic zu erlauben.

fail2ban

Hier kann man die jail.local datei mit ansible generieren. Hier ist ein Beispiel wie die YAML Config übersetzt wird:

fail2ban_services:
  - name: sshd
    backend: systemd
    maxretry: 3
    bantime: 900
  - name: traefik-auth
    logpath: /var/log/traefik/access.log
    port: http,https
[sshd]
enabled = true
backend = systemd
maxretry: 3
bantime: 900

[traefik-auth]
enabled = true
logpath = /var/log/traefik/access.log
port = http,https

zfs

Unter devices: musst die die ID von deiner HDD angeben, um ein ZFS pool zu erstellen. Mit ls -l /dev/disk/by-id kannst du die IDs anzeigen.

Hier musst du die ID von der Platte angeben, nicht von einer Partition!

Das Pool (im Beispiel "tank" bennant) wird dann unter /tank gemountet. Hier kannst du dann Docker Volumes ablegen oder einfach Ordner erstellen die dann in Docker gemountet werden.

Kommandos

Playbook ausführen

ansible-playbook site.yml
# oder
ansible-playbook site.yml -l hostname -t tag1,tag2

Variable finden

ansible hostname -m debug -a 'var=nft_define_host["input tcp accepted"]'

Dokumentation

nftables

fail2ban

zfs