2 KiB
2 KiB
Homeservers
This repository contains Ansible scripts to setup our home servers.
The common
role executes some common OS tasks.
The docker
role installs Docker.
The other roles are specifically for the various services we run.
Running services
All services below are running under Docker, except NSD and Borg.
- Authoritative DNS using NSD (ns.pizzapim.nl)
- Reverse proxy using Traefik
- Git server using Forgejo (git.pizzapim.nl)
- Static website using Hugo (pizzapim.nl)
- File sychronisation using Syncthing
- Microblogging server using Mastodon (social.pizzapim.nl)
- Calendar and contact synchronisation using Radicale (dav.pizzapim.nl)
- KMS server using vlmcsd
- Cloud file storage using Seafile
- Backups using Borg and Borgmatic
- RSS feed reader using Miniflux
Possible future services
- matrix
- peertube?
TODO
- Forward to https not working correctly yet.
- Actually freshrss seems better than miniflux
NSD
ZSK Rollover
Could make automatic key rollovers with cron or some other tool.
Idempotency
Currently I always resign zones. But for idempotency I should probably only do it if the zone has changed or the keys have changed.
Firewall
A little more difficult because of docker networking but probably doable.
Backup server
Given that I am now backing up my data to another server using Borg, it makes sense to include that server into IaC as well. Should be pretty straight forward:
- Install Borg and Borgmatic
- Initialize the Borg repository if it doesn't exist yet.
- Add the homeserver's public key to authorized keys.