2.9 KiB
2.9 KiB
Future Plans
Priority Overview
| Priority | Item | Blocked on |
|---|---|---|
| High | Backup system (Restic) | Choosing backup destination |
| High | Security review | — |
| Medium | Migration to permanent VPS | Company incorporation |
| Medium | SMTP / Email | ProtonMail setup after incorporation |
| Medium | CI/CD pipeline | — |
| Low | Monitoring | — |
| Low | Group-based access control | Not needed yet (4 people) |
| Low | Move SSH to non-standard port | — |
| Low | Outline branding (remove badge) | Cosmetic, parked |
High Priority
Backup System (Restic)
- Daily automated backup of all Docker volumes to object storage
- Systemd timer (not cron)
- Retention policy: 7 daily, 4 weekly, 6 monthly
- Test restore procedure documented
- Blocked on: choosing a backup destination (S3 / Backblaze B2 / SFTP)
Security Review
- Firewall audit — verify only intended ports are exposed
- Container hardening — run containers as non-root where possible
- Secret management — move passwords/secrets out of
group_vars/all.ymlinto Ansible Vault or environment files - Review Dex/LLDAP security configuration
- Fail2ban rules review
- Check for unnecessary services or open ports
- HTTPS headers audit (HSTS, CSP, etc.)
Medium Priority
Migration to Permanent VPS
Once company incorporation is complete and bank account is set up.
sequenceDiagram
participant Old as Old VPS
participant Backup as Backup Storage
participant New as New VPS
participant DNS
Old->>Backup: Final backup snapshot
Note over New: Provision Debian 13
New->>New: Run bootstrap.yml
New->>New: Run deploy.yml
Backup->>New: Restore volumes
DNS->>New: Update A record to new IP
Note over New: Verify SSL certs renew
Note over Old: Decommission
CI/CD Pipeline
- Automated deployment on git push
- Documentation pipeline (Markdown to Outline, or similar)
- Options to evaluate: Gitea Actions, Drone CI, or simple webhook-based deploy
SMTP / Email
- Set up ProtonMail for cloud-elves.eu (after incorporation)
- Configure Outline and Gitea to send transactional emails
- Update Let's Encrypt contact email from personal to company address
Low Priority
Monitoring
- Resource monitoring (CPU, memory, disk)
- Uptime monitoring for all services
- Options: simple solution like Uptime Kuma, or external service
Group-Based Access Control
- Configure Dex to pass LLDAP groups to applications
- Restrict certain services to specific groups (e.g., admin-only tools)
- Not needed now (4 people, everyone needs access everywhere)
Move SSH to Non-Standard Port
- Move host sshd from 22 to a high port (e.g., 2200)
- Reduces log noise from automated scanners
- Free up port 22 for Gitea SSH (nicer clone URLs)
Outline Branding
- Remove "Built with Outline" badge on public share pages
- Parked for now — cosmetic only