Secure VPS
things important to do, to secure a server
these are some few steps, to make your vps a bit more secure.
SSH
first you should have a normal account(not root), with sudo privelege.
Disable Root Access
edit ssh config file: /etc/ssh/sshd_config
PermitRootLogin noUse Keys instead of Password
in your local machine run:
ssh-keygenwhen you finish, run:
ssh-copy-id user@server_ipnow try to access your server, you should get in without a password. back to server again, let's disable password access, edit ssh config file: /etc/ssh/sshd_config
PasswordAuthentication noChange SSH Default Port
edit ssh config file: /etc/ssh/sshd_config
Port 2221finally run this, to reload configuration.
sudo systemctl restart sshdFail2Ban
you should also install fail2ban to prevent bruteforcing your server
For Fun
you may want to install a dumy ssh server on port 22, to waste hackers time for example there is a project called endlessh
Firewall
you can simply use ufw, and allow only required services, like http, ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw allow ssh
sudo ufw allow 2221
sudo ufw enable