Hvordan sikre en VPS (2025)
Hvordan sikre en VPS (2025)
Denne guiden viser deg hvordan du kan gjøre en ny VPS tryggere med enkle grep. Vi går gjennom brannmur, SSH-nøkler, Fail2Ban og andre gode sikkerhetsrutiner. Eksemplene er skrevet for Ubuntu/Debian, men fungerer på de fleste Linux-distroer.
Hvorfor sikre en VPS?
En ubeskyttet server er som å la hoveddøren stå ulåst. Hackere scanner hele tiden etter åpne porter, svake passord og feilkonfigurerte systemer. Med noen enkle tiltak kan du redusere risikoen dramatisk.
Steg 1 → Oppdater systemet
Alltid det første du bør gjøre:
sudo apt update && sudo apt upgrade -y
Aktiver automatiske sikkerhetsoppdateringer:
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
Steg 2 → Sett opp en brannmur (UFW)
UFW = "Uncomplicated Firewall" → enkel måte å styre hvilke porter som er åpne.
Installer og aktiver:
sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
Tillat SSH (så du ikke låser deg ute):
sudo ufw allow ssh
eller spesifiser port (f.eks. 2222 hvis du endrer SSH-porten):
sudo ufw allow 2222/tcp
Tillat HTTP/HTTPS (for webservere):
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Slå på brannmuren:
sudo ufw enable
Status:
sudo ufw status verbose
Steg 3 → SSH-nøkler (detaljert)
SSH-nøkler gjør innlogging sikrere enn passord. Anbefaler VIRKELIG å følge denne guiden: SSH Keys
Generer nøkkel på din PC
ssh-keygen -t ed25519 -C "din@epost.no"
- Trykk
Enterfor å lagre i standardmappe (~/.ssh/). - Du får to filer:
id_ed25519→ privat nøkkel (skal aldri deles).id_ed25519.pub→ offentlig nøkkel (den du kopierer til serveren).
Hvor lagres nøklene?
- Linux/Mac:
/home/<brukernavn>/.ssh/ - Windows (PowerShell/Git Bash):
C:\Users\<brukernavn>\.ssh\
Kopier nøkkelen til serveren
ssh-copy-id -i ~/.ssh/id_ed25519.pub bruker@server-ip
Hvis ssh-copy-id ikke finnes, kopier innholdet av id_ed25519.pub manuelt til:
~/.ssh/authorized_keys
Riktig rettigheter på server
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Deaktiver passord og root-login
Rediger:
sudo nano /etc/ssh/sshd_config
Endre:
PasswordAuthentication no
PermitRootLogin no
Restart:
sudo systemctl restart ssh
Hvordan logge inn
Nøkkelen brukes automatisk:
ssh bruker@server-ip
Hvis du ga nøkkelen eget navn:
ssh -i ~/.ssh/myserver_key bruker@server-ip
Tips
- Bruk passphrase når du genererer nøkkel for ekstra sikkerhet.
- Legg nøkkelen inn i
ssh-agentfor å slippe å skrive passphrase hver gang:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
Steg 4 → Bruk Fail2Ban
Fail2Ban blokkerer IP-adresser som prøver mange feil innlogginger.
Installer:
sudo apt install fail2ban -y
Konfigurer:
Kopier standardfilen:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Åpne og rediger:
sudo nano /etc/fail2ban/jail.local
Standardinnstillinger:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600
Start Fail2Ban:
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Sjekk status:
sudo fail2ban-client status sshd
Steg 5 → Bruk en ikke-root bruker
Aldri bruk root direkte. Lag en ny bruker og gi sudo-tilgang:
adduser brukernavn
usermod -aG sudo brukernavn
Logg inn med:
ssh brukernavn@server-ip
Steg 6 → Ekstra sikkerhetstips
- Endre SSH-port (f.eks. fra 22 → 2222). Ikke sikkerhet alene, men reduserer spam.
- To-faktor (2FA) for SSH med Google Authenticator eller YubiKey.
- Installer en IDS/IPS (f.eks. Snort eller Suricata) for avansert overvåkning.
- Bruk
logwatchellergoaccessfor å overvåke logger. - Ta jevnlige backups (rsync, borgbackup, eller snapshot via leverandør).
- Minimer tjenester: Stopp alt du ikke bruker (
systemctl disable <tjeneste>).
Oppsummering
- Oppdater systemet regelmessig.
- Brannmur (UFW) → kun nødvendige porter åpne.
- SSH-nøkler i stedet for passord (sett opp riktig, ikke hopp over steg).
- Fail2Ban stopper brute-force-angrep.
- Ikke bruk root direkte → opprett egne brukere.
Med disse enkle stegene er din VPS mye tryggere. 🚀