$ man work/auto-repair-website

A website for an auto repair shop, on its own hardened server

client · described without names · --web --security --servers

NAME

auto-repair-website — A website for an auto repair shop, on its own hardened server

SYNOPSIS

A website that takes customer requests, on a small server locked down and checked across three restarts.

SITUATION

An owner-run auto repair shop. The shop had no website that took requests, and nobody on staff to look after a server.

WHAT I CHANGED

  • Built a website that takes customer requests and sends them straight to the shop.
  • Put the site on its own small virtual server. Web traffic is accepted only through the DNS provider’s proxy, with a one-command switch to reopen direct access if that provider has an outage.
  • Hardened the server: key-only SSH, automatic bans for repeated failed sign-ins, kernel network protections, and SSH over IPv6 closed outright.
  • Nightly backups, with a copy kept off the server.
  • Registered the domain in the shop’s own name, with a written handover path.

HOW IT WAS CHECKED

MeasureBeforeAfter
Hardening still active after a restartnot tested3 of 3 restarts
Kernel protections inactive on the live network interface20
  • Restarted the server three times and re-checked every protection after each one, rather than trusting the configuration files.
  • Found two kernel settings that read as correct but were inactive on the server’s only real network interface, and fixed them with a start-up job that sets every interface.
  • Found that a firewall reload silently removed active bans. Bans are now written through the firewall itself, so they survive a reload.
  • Ran the search-engine checks against a server that was switched off first, to prove each check can actually fail.

STACK

  • Linux
  • nginx
  • PHP
  • DNS proxy and TLS
  • ufw
  • fail2ban
  • off-site backups

Have something like this on your plate?

About an hour, on site or remote. I look and change nothing. You get a written plan in plain language, with the three things I would do first.

Book a free IT check-up