2
0
Fork 0
ansible-example/README.md

72 lines
2.1 KiB
Markdown
Raw Normal View History

2024-02-11 18:21:54 +01:00
# Beispiel Ansible
## Konfiguration
2024-02-11 18:21:54 +01:00
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](https://wintelguy.com/port-search/) 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
```
2024-02-11 18:21:54 +01:00
2024-02-11 19:26:49 +01:00
### 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
2024-02-11 18:41:31 +01:00
```
ansible-playbook site.yml
2024-02-11 19:26:49 +01:00
# oder
ansible-playbook site.yml -l hostname -t tag1,tag2
2024-02-11 18:41:31 +01:00
```
2024-02-11 19:26:49 +01:00
### Variable finden
```
ansible hostname -m debug -a 'var=nft_define_host["input tcp accepted"]'
```
2024-02-11 18:41:31 +01:00
2024-02-11 18:21:54 +01:00
## Dokumentation
### nftables
- [Rolle](https://github.com/ipr-cnrs/nftables/blob/master/README.md)
2024-02-11 19:26:49 +01:00
- [Dokumentation](https://wiki.nftables.org/wiki-nftables/index.php/Main_Page)
2024-02-11 18:21:54 +01:00
### fail2ban
- [Rolle](https://github.com/Oefenweb/ansible-fail2ban/blob/master/README.md)
2024-02-11 19:26:49 +01:00
- [Dokumentation](https://github.com/fail2ban/fail2ban/wiki)
2024-02-11 18:41:31 +01:00
### zfs
- [Rolle](https://github.com/mrlesmithjr/ansible-zfs/blob/master/README.md)
2024-02-11 19:26:49 +01:00
- [Dokumentation](https://openzfs.github.io/openzfs-docs/index.html)