No description
|
|
||
|---|---|---|
| .config | ||
| .idea | ||
| .vscode | ||
| dn42-registry@1e621964f5 | ||
| files | ||
| filter_plugins | ||
| global-config | ||
| group_vars | ||
| host_vars | ||
| roles | ||
| scripts | ||
| templates | ||
| tmp | ||
| .gitignore | ||
| .gitmodules | ||
| ansible.cfg | ||
| CLAUDE.md | ||
| communities-reference.txt | ||
| encrypt-string.sh | ||
| hosts.yml | ||
| justfile | ||
| LICENSE | ||
| playbook-dns-servers.yml | ||
| playbook-update-states.yml | ||
| playbook-vault.yml | ||
| playbook.yml | ||
| pylintrc | ||
| pyproject.toml | ||
| README.md | ||
| requirements.yml | ||
| uv.lock | ||
DN42 configuration with Ansible
This repository contains the configuration for my DN42 network deployed with Ansible.
The majority of the configuration (bird, powerdns, wireguard, some scripts) comes from the jlu5's dn42-ansible repository, with some modifications to fit my needs.
I big thanks to him for his open-source work.
If you have any questions or suggestions, feel free to open an issue or a pull request.
Warnings
- Some of the configuration files contain specific information about my network, such as IP addresses and AS numbers. You should replace them with your own information.
- Some steps are not automated, such as Vault CA initialization. You should do them manually.
- Vault initialization and unsealing are scripted and use 1password CLI. You cannot use them as-is.
- The configuration is not perfect and may contain errors. Use it at your own risk.
Major differences
- Replace
iptableswithnftables - Fix ansible-lint issues
- Routing policies are simpler
- Add Hashicorp Vault
TODO
- Create new splash site
- Rework vault deployment and security
- Restructure roles
- Make roles more generic and reusable
- Rewrite this README
- Add more documentation
- Add more comments to the configuration files