En ny server är sårbar. Här är stegen jag alltid tar innan jag sätter något i produktion.

1. Uppdatera systemet

apt update && apt upgrade -y
apt install unattended-upgrades -y
dpkg-reconfigure -plow unattended-upgrades

2. SSH-härdning

Redigera /etc/ssh/sshd_config:

Port 2222                          # Ändra standardport
PermitRootLogin no                 # Ingen root-inloggning
PasswordAuthentication no          # Bara SSH-nycklar
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 2
AllowUsers deploy                  # Bara specifika användare
systemctl restart sshd

3. Brandvägg med UFW

ufw default deny incoming
ufw default allow outgoing
ufw allow 2222/tcp comment 'SSH'
ufw enable
ufw status verbose

4. Fail2Ban

apt install fail2ban -y

Skapa /etc/fail2ban/jail.local:

[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
findtime = 600

5. Automatiska säkerhetsuppdateringar

cat /etc/apt/apt.conf.d/50unattended-upgrades
# Se till att denna rad är aktiv:
# "${distro_id}:${distro_codename}-security";

6. Kernel-härdning

Lägg till i /etc/sysctl.d/99-hardening.conf:

net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
kernel.randomize_va_space = 2
sysctl -p /etc/sysctl.d/99-hardening.conf

Det här tar 15 minuter och gör en enorm skillnad. Gör det på varje server.