| > you can change the ssh port and use a ssh key instead of a password. I'd advice against changing the ssh port - I don't think the (small) inconvenience is worth the (tiny) benefit to obscurity. I would always recommend turning off password authentication for ssh, though. (along with disabling direct root login via ssh, but root-with-key-only is now the default - and if you already enforce key based login, it's a bit hard to come up with a real-world scenario where requiring su/sudo is much help for such a simple setup). I would probably amend your list to include unattended-upgrades (regular, automated security-related updates - but I guess that's starting to be standard, now?). You will probably need an ssl cert, possibly from let's-encrypt. At that point, with only sshd and nginx listening to the network - avenues of compromise would be kernel exploit (rare), sshd exploit (rare) or ngnix exploit (rare) - compromise via apt or let's-encrypt (should also be unlikely). Now, if the site is dynamic, there's likely to be a few bugs in the application, and some kind of compromise seems more likely. |