cmc/cleberg.net

My personal web garden & blog.

clone: git clone https://gitbay.org/cmc/cleberg.net.git

main: content/uses/index.org · raw

 1#+title: uses
 2#+slug: index
 3#+options: toc:nil
 4
 5Tools powering this site and the infrastructure behind it. Each entry includes a
 6threat model justification.
 7
 8* Philosophy
 9
10- Own the hardware or you don't own the content.
11- Zero tracking. No cookies. No analytics. No exceptions.
12- Full rebuild from source on a fresh OS in under an hour.
13- One tool per job. No dependencies that rot.
14
15* Software
16
17| Technology            | What I Use            | Threat Model                                                                                        |
18|-----------------------+-----------------------+-----------------------------------------------------------------------------------------------------|
19| Registrar             | [[https://cloudflare.com][Cloudflare]]            | WHOIS privacy, low cost, integrates cleanly if you use other Cloudflare products.                   |
20| DNS                   | [[https://cloudflare.com][Cloudflare]]            | Portable DNS, secure infrastructure, and acceptable privacy.                                        |
21| Security              | [[https://cloudflare.com][Cloudflare]] + [[https://github.com/fail2ban/fail2ban][fail2ban]] | Automated auth-failure bans. Minimal Cloudflare functionality enabled.                              |
22| Routing               | [[https://ui.com/][UniFi]]                 | Local network segmentation.                                                                         |
23| Server                | [[https://cleberg.net/blog/server-build.html][Self-hosted]]           | Physical control. No hypervisor escape vector. No subpoena to a DC.                                 |
24| Operating System      | [[https://ubuntu.com][Ubuntu]] + [[https://www.apple.com/os/macos/][macOS]]        | Ubuntu: telemetry off, LTS, stable. macOS: workstation only.                                        |
25| Web Server            | [[https://nginx.org][Nginx]] + [[https://community.torproject.org/onion-services/setup/][Tor]]           | Static file serving. Tor layer for censored-network access.                                         |
26| SSL                   | [[https://certbot.eff.org][Certbot]]               | Free automated TLS. No commercial CA dependency. Ensures Cloudflare can't view unencrypted traffic. |
27| Static Site Generator | [[https://github.com/krazywarez/orgo][orgo]] + [[https://github.com/ccleberg/cleberg.net/blob/main/build.py][build.py]]       | Org-mode source compiles to plaintext HTML. Single binary, no runtime.                              |
28| Terminal              | [[https://iterm2.com/][iTerm2]]                | Functional. Inherited from macOS.                                                                   |
29| Shell                 | [[https://www.zsh.org/][Zsh]]                   | Portable, POSIX-adjacent, available on every target OS.                                             |
30| Editor                | [[https://github.com/doomemacs/doomemacs][Doom Emacs]]            | Editor and markup are the same tool. No proprietary format.                                         |
31| Markup Language       | [[https://orgmode.org][org-mode]]              | Plain text. Readable without any software. Version-control native.                                  |
32| Image Processing      | [[https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/w/webp.rb][webP (CLI)]]            | CLI-only. No GUI, no cloud, no account.                                                             |
33| Browser(s)            | [[https://www.torproject.org/][Tor]] + [[https://librewolf.net][LibreWolf]]       | Tor for anonymity-critical use. LibreWolf for hardened daily use.                                   |
34| Version Control       | [[https://git-scm.com/][Git (CLI)]]             | Decentralized. The repo is the backup.                                                              |
35| Git Host              | [[https://github.com/ccleberg][GitHub]] + [[https://sr.ht][SourceHut]]    | GitHub is the primary and SourceHut is the mirror.                                                  |
36| CI/CD                 | [[https://github.com/ccleberg/cleberg.net/blob/main/build.py][build.py]]              | A Python script and SSH. No pipeline to depend on.                                                  |
37| Email Host            | [[https://migadu.com][Migadu]]                | Straightforward usage-based provider from Switzerland.                                              |
38| Search Engine         | [[https://docs.searxng.org/][SearXNG]] (self-hosted) | Queries route through my own instance. No third-party search profile.                               |
39| Backups               | N/A                   | Nothing to back up. No user data. Source mirrored via Git.                                          |
40| Monitoring            | N/A                   | Monitoring creates logs. Logs are a liability.                                                      |
41| Analytics             | N/A                   | No interest in visitor data. Content finds its way via RSS.                                         |
42| Social Media          | N/A                   | —                                                                                                   |
43| Newsletter            | RSS Only              | No subscriber list. No email vendor. No data relationship.                                          |
44
45* Hardware
46
47Custom rack-mounted server. Physical control, no hypervisor, no vendor lock-in.
48See: [[https://cleberg.net/blog/server-build.html][server build post]].
49
50| Component     | Spec                                |
51|---------------+-------------------------------------|
52| Chassis       | Rosewill RSV-R4100U 4U Rackmount    |
53| Motherboard   | NZXT B550                           |
54| CPU           | AMD Ryzen 7 5700G                   |
55| RAM           | 64GB DDR4 (2x32GB)                  |
56| Boot Drive    | 500GB WD M.2 NVMe SSD               |
57| Storage (HDD) | 6 x 8TB WD Red Plus                 |
58| PSU           | Corsair RM850                       |
59| Cooling       | Noctua (1x120mm front, 2x80mm rear) |
60
61Physical hardware under personal control eliminates the hypervisor escape vector
62and the cloud provider subpoena vector. Full recovery from a fresh OS install:
63under one hour.
64
65Secondary: Raspberry Pi 4 for miscellaneous self-hosted services.