The server security checklist

Most break-ins on small servers are not clever. A password login, a database open to the internet, a release nobody updated. Work down this list once and you are ahead of most servers on the internet.

Before you change anything

Every item below touches SSH, the firewall or a running service. Any of them can cut you off. Two habits make that harmless.

SSH

SSH is the front door, and it gets knocked on all day. Key-only logins stop password guessing completely.

Firewall

Close everything you didn't mean to open. Then check from outside, because the server's own view can be wrong.

Updates

Most known holes already have a fix. The server just has to install it, and sometimes restart.

Databases

A database that answers the whole internet is the most common serious finding on small servers. They should listen on localhost or a private network, and need a password even there.

Platforms and people

Keep an eye on it

Then come back to this list every few months, and after anything big: a new app, a new teammate, a release upgrade.

Stenvakt works through this list for you. Its Review is a read-only check of every server against these points, and every fix shows a Preview first and runs in safe mode: if a change cuts off your SSH, the server rolls it back by itself. It's a Mac app and isn't out yet: get early access.

Sources

  1. Ubuntu Server documentation: Security
  2. Debian security information
Next guideChange the SSH port