Servers welke aan het internet hangen kunnen op de volgende manier extra worden beveiligd. Dit is een simpele, maar wel doeltreffende manier om dit te realiseren. 

SSH

Geen root access via ssh

nano /etc/ssh/sshd_config

Pas de volgende regel als volgt aan: 

PermitRootLogin no

Als alternatief kan er ook worden gekozen voor een variant waarbij root alleen met certificaat kan inloggen en dan ook nog eens vanaf voorgedefinieerde adressen. Gewone gebruikers kunnen zelfs ook nog extra worden ge-authenticeerd middels Google OTP.

Alleen root access middels certificaten en vanaf bepaalde ip-adressen

nano /etc/ssh/sshd_config
PermitRootLogin without-password
AllowUsers root@172.16.2.*

Fail2ban installeren

Fail2ban kan worden gebruikt om brute-force attacks af te blokkeren. Hiermee kan worden voorkomen dat iemand continu probeert in te loggen. Na x aantal pogingen wordt er een regel aan de firewall toegevoegd zodat het ip-adres wordt geblokkeerd van de 'aanvaller'. Fail2ban kan overigens meer applicaties beschermen, mail (exim/dovecot), web(httpd), etc.
Installeer fail2ban. 

apt-get install fail2ban

Configureer fail2ban. Om de zogenoemde 'jails' in te schakelen moet je de jail.conf in /etc/fail2ban configureren, echter niet rechtstreeks in dit bestand. Zaken die je wil aanpassen doe je in een nieuw aan te maken jail.local.
Kopieer voor het gemak de default file.

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

 Om nu bijvoorbeeld de sshd in te schakelen zoek je deze header op '[sshd]'

voeg nu enabled=true toe en eventueel maxretry instellen op een waarde die je prettig vindt.

[sshd]
enabled = true
port    = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
maxretry= 2

Om ervoor te zorgen dat je eigen ip-adres niet wordt geblokkeerd moet je deze toevoegen aan de ignoreip optie.

ignoreip = 123.123.123.123


Herstart nu fail2ban

service fail2ban restart

Statuscommando's Fail2ban

Kijken welke jails er zijn.

fail2ban-client status

Om nu in detail te kijken in elke jail.

fail2ban-client status exim
fail2ban-client status sshd

Om nu een ipadres weer te deblokkeren kan je het volgende commando gebruiken.

fail2ban-client set <jailnaam> unbanip <ipadres>