About
A working record, not a résumé.
SpencerLab is a self-hosted technical journal. Infrastructure gets stood up, faults get diagnosed, lab systems get pentested and assessed — and each one is written up honestly: the commands, the wrong turns, and why each fix mattered.
Write-ups are published straight from two in-house tools — AuditForge for assessment reports and Fieldnote for build notes — through a token-gated, secret-scanned publishing API.
- Focus
- Cybersecurity · networking · cloud · SaaS
- Published
- 15 posts across 4 topics
- Hosting
- Homelab VM · FastAPI · Cloudflare Tunnel · 0 inbound ports
- Analytics
- First-party visit log on the same box · no cookies · details
- Elsewhere
- github.com/spencerawlson
What I work on
Cybersecurity
Penetration testing, vulnerability assessment and security analysis on authorized lab scope — with evidence, findings and remediation.
Networking
Network design, routing & switching, VLANs, VPN and firewalls — plus software-defined networking with GNS3, Open vSwitch and segmentation.
Cloud computing
AWS, Azure and GCP — infrastructure-as-code, containers, serverless and resilient multi-account architecture.
SaaS development
Full-stack SaaS platforms — FastAPI and React, REST APIs, microservices and AI-driven features, from data model to shipped product.
AI & automation
Infrastructure as code, CI/CD, scripting and monitoring — and agents that reason over real signals and act through consented pipelines.
Projects

Aegis CloudOps
AI-assisted cloud monitoring and remediation — live health, cost anomalies and security findings, with consented auto-fixes across AWS, Azure and GCP, plus a cloud migration readiness assessment. Its production backend is self-hosted in this lab.
aegiscloudops.io ↗
Fishing Rod Terminal
A real-time market-intelligence terminal — live signals, per-asset bias, macro-cycle scoring and scenario analytics, rendered from a computed engine.
fishingrodterminal.io ↗Domainfolio
A self-hosted domain portfolio — one app serving a for-sale page for every domain, routed on the Host header, with an offers inbox and per-domain visit stats.
domainfolio.site ↗SpencerLab range
The self-hosted lab behind this site — a Kali workstation against Windows and Linux targets on an isolated segment, enumerated, exploited and reported with remediation. A Raspberry Pi cyberdeck for field work is in progress.
Read the pentest reports →Tools & stack
How this site runs
Everything here is served from a VM in the homelab. Nothing on the home network accepts a connection from the internet.
- Your browserRequests spencerlab.tech over HTTPS.
- Cloudflare edgeTerminates TLS and hides the home IP address.
- Outbound tunnelThe server dials out to Cloudflare, so there are 0 inbound ports to open.
- Homelab VMA small FastAPI app renders the pages from flat files.
Live telemetry
The server samples its own CPU, memory, disk, edge round-trip and service health every 30 seconds, and a set of HA agents reviews it every five minutes. That feeds the live lab and the home page. Only coarse numbers are published: no addresses, hostnames or versions.
Publishing pipeline
Write-ups arrive from AuditForge and Fieldnote through a token-gated API. Each one has to clear its source tool's sensitivity review and an automated secret scan before it goes live.
Self-hosted analytics
Page views are logged on the same VM that serves them, in a local database, with no analytics service, no tracking script and no cookies. The owner reads them on a private, token-locked dashboard.
Privacy: what's recorded when you visit
Plain terms, because this is a security site and you should be able to check.
Recorded, for each page you open
- The time, the page, and whether it loaded.
- Your IP address, and the approximate location Cloudflare derives from it (country, and where available region and city).
- The page that linked you here, and any
utm_sourcetag in the link. - Your browser, operating system and device type, taken from the user-agent header, and whether it looks like a bot.
Not done
- No cookies, fingerprinting or tracking scripts. Nothing is stored in your browser.
- No analytics or advertising service. The log never leaves this server, and it isn't sold or shared.
- Stylesheets, images, video and API calls aren't logged, only page views.
- Records are deleted automatically after 90 days.
Two third parties are involved in any visit: Cloudflare, which carries all traffic to this site, and Google Fonts, which serves the typefaces. Their own policies apply to what they see. To have your records removed sooner, get in touch through GitHub.
Certifications
Let's build something.
Open to new opportunities, collaborations and challenging projects.