Changes between Initial Version and Version 1 of TODO


Ignore:
Timestamp:
05/19/25 10:38:19 (5 days ago)
Author:
enno
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TODO

    v1 v1  
     1NOTE: This is a draft. Sone points will vanish because of collision with other requirements
     2
     3== Trac Service ==
     4        •       Move .htpasswd to /etc/trac/auth/ for clarity
     5        •       Redirect Trac logs to /var/log/trac.log
     6        •       Add log rotation for Trac logs
     7        •       Separate Trac environments by project (--env-parent-dir)
     8        •       Review and prune redundant --basic-auth entries
     9
     10== Gitolite and HTTP Git Access ==
     11        •       Deduplicate authentication: choose between tracd or nginx auth
     12        •       Move inline fastcgi_param settings to a named include file
     13        •       Create Gitolite hooks (e.g., post-receive) for CI/CD triggers
     14        •       Add Cuirass or manual webhook emulation
     15
     16== nginx Configuration ==
     17        •       Add security headers (CSP, X-Frame-Options, etc.)
     18        •       Hide nginx version (server_tokens off)
     19        •       Add gzip and cache headers for static assets
     20        •       Limit access to /.well-known/ to Certbot only
     21        •       Monitor nginx logs via timed task
     22
     23== Certbot and Certificate Handling ==
     24        •       Use a Shepherd timer to reload services after certificate renewal
     25        •       Add a declarative hook for certbot renew
     26        •       Log certificate renewal attempts and results
     27
     28== Shepherd Service Management ==
     29        •       Modularize tracd, fcgiwrap, and adjust-permissions into reusable service types
     30        •       Add auto-restart or health-check for tracd
     31        •       Log permission adjustments explicitly to /var/log
     32
     33== WireGuard VPN ==
     34        •       Move WireGuard private key to /etc/wireguard/ with strict permissions
     35        •       Add runtime validation or fallback if key is missing
     36        •       Periodically log WireGuard peer status and activity
     37        •       Review and restrict firewall/IP rules for peer access
     38
     39== File System Layout (Btrfs) ==
     40        •       Create a separate subvolume for /etc for snapshot management
     41        •       Set up a btrfs scrub Shepherd timer
     42        •       Plan for automatic snapshots via Shepherd or cron
     43
     44== Backups and Recovery ==
     45        •       Define backup strategy (restic or similar)
     46        •       Include /srv, /etc, /home/git, /etc/letsencrypt/ in backups
     47        •       Automate backup using a scheduled service
     48
     49== Admin and Developer Usability ==
     50        •       Install man-db, nss-certs, less, and similar tools
     51        •       Optionally include Emacs or Neovim
     52        •       Add MOTD or /etc/issue banner pointing to Trac/docs
     53        •       Ensure system config is Git-tracked and reproducible
     54
     55== Monitoring and Alerts ==
     56        •       Add fail2ban-like protections or firewall rate-limiting for SSH
     57        •       Automate guix deploy dry-runs + alerts on failure
     58        •       Add lightweight resource monitoring via periodic log summary