Security

Firewall

Configure firewalls on servers and cloud providers with security best practices.

What it does

Critical First Steps Allow SSH/remote access before enabling any firewall — enabling first locks you out Test access in a second session before closing the first — verify the rule actually works Know how to access provider console — it's the only way back if locked out

The skill document

Firewall Rules

Critical First Steps

  • Allow SSH/remote access before enabling any firewall — enabling first locks you out
  • Test access in a second session before closing the first — verify the rule actually works
  • Know how to access provider console — it's the only way back if locked out

Default Stance

  • Default deny all incoming traffic — only open what you explicitly need
  • Default allow outgoing traffic — most apps need to reach the internet
  • Every open port is attack surface — question each one before adding

Essential Ports

  • SSH (22 or custom): Always needed for remote access — consider limiting to your IP only
  • HTTP (80): Only if serving web traffic — also needed for Let's Encrypt HTTP challenge
  • HTTPS (443): For production web services
  • Don't open database ports (3306, 5432, 27017) to the internet — access via SSH tunnel or private network

Provider Firewalls (Hetzner, DigitalOcean, AWS, etc.)

  • Provider firewall applies before traffic reaches your server — faster, less server load
  • Changes usually apply immediately — no reload command needed
  • Stateful by default — allow inbound, responses automatically allowed outbound
  • Apply to server groups for consistency — easier than per-server rules
  • Provider firewall + OS firewall = defense in depth — use both when possible

IP Restrictions

  • Limit SSH to known IPs when possible — dramatically reduces attack surface
  • Your home IP may change — use a VPN with static IP or update rules when it changes
  • Allow IP ranges with CIDR notation — /32 is single IP, /24 is 256 IPs
  • Some providers support dynamic DNS in rules — check before building complex solutions

Common Services to Consider

  • VPN (WireGuard: 51820/UDP, OpenVPN: 1194) — allows secure access without exposing other ports
  • Mail (25, 465, 587) — only if running mail server
  • DNS (53 TCP/UDP) — only if running DNS server
  • Monitoring agents may need outbound access to specific IPs

Docker Warning

  • Docker bypasses most OS firewalls by default — containers expose ports regardless of UFW/iptables
  • Solution: bind containers to localhost only and use reverse proxy for public access
  • Or configure Docker to respect firewall rules — requires additional setup
  • Provider-level firewalls still work — they block before traffic reaches Docker

IPv6

  • Firewalls often have separate IPv4 and IPv6 rules — configure both
  • Provider firewalls may handle both together — check their documentation
  • Attackers probe IPv6 when IPv4 is locked down — don't neglect it

Debugging

  • Test from outside your network — rules may look correct but not work
  • Provider dashboards often show blocked traffic logs
  • "Connection refused" = port closed properly; "Connection timeout" = firewall dropping silently
  • Online port scanners verify what's actually open from the internet

Common Mistakes

  • Opening ports "temporarily" and forgetting to close them
  • Opening 80/443 when no web server runs — unnecessary exposure
  • Forgetting UDP for services that need it — DNS, VPN, game servers
  • Assuming firewall is active — verify it's actually running/applied
  • Only configuring IPv4 — leaving IPv6 wide open
  • Trusting "security through obscurity" — non-standard ports slow attackers, don't stop them

Related skills

Forecast cash, calculate runway, model financing, and prepare finance decisions for boards and founders.

214 installs7 stars

Builds CMO-level strategy, budgets, channel plans, team design, and pipeline targets tied to revenue.

131 installs16 stars

Coordinate local multi-agent work with shared state, budget checks, validation, and advisory permission gates.

164 installs6 stars

Monitor signed advisories, match affected installed skills, and gate risky installs or removals on approval.

357 installs8 stars

Audit, reconcile, and record machine-facing entity identity with evidence and provenance.

87 installs2 stars

Monitor NVD CVEs, community advisories, and pre-CVE GitHub advisories in one agent security feed.

by davida-ps103 installs1 stars

More from Iván

Browse all skills

Write, debug, and tune Java and JVM systems with JDK-aware code and diagnostic steps.

by Iván130 installs9 stars

Design and critique visual artifacts using measurable rules for hierarchy, spacing, type, color, and layout.

by Iván137 installs5 stars

Diagnose CSS mechanics and produce targeted fixes or complete stylesheets for the chosen stack.

by Iván97 installs5 stars

Architect, troubleshoot, secure, and cost-control AWS infrastructure with explicit cost and blast-radius guidance.

by Iván138 installs2 stars

Diagnose, validate, transform, and evolve JSON payloads across parsers, schemas, storage, and large files.

by Iván112 installs3 stars

Build and operate a testable learning plan with practice, spaced review, transfer checks, and durable local records.

by Iván93 installs3 stars