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"]'