Je server kan twee firewalls hebben: die in het portaal (tab Firewall, bij onze leverancier, vóór je server) en een firewall op de server zelf, zoals ufw of firewalld. Verkeer moet door allebei. Een poort die in één van de twee dicht staat, is dicht.
Stap 1: Bepaal welke poorten open moeten
Meestal zijn dat:
- 22 (TCP) voor SSH;
- 80 en 443 (TCP) als je een website of app via HTTPS draait.
Kijk op je server welke diensten luisteren:
ss -tlnpZet alleen open wat je echt gebruikt. Een database (bijvoorbeeld 3306 of 5432) hoort zelden open voor iedereen.
Let op: dit heeft gevolgen
Een regel die poort 22 dichtzet, sluit je SSH-toegang af; ook je huidige verbinding kan wegvallen. Dit blijft: je server, je data en je abonnement. Je komt er weer in door de regel in het portaal terug te zetten (portaalfirewall) of via de herstelmodus onder Toegang (firewall op de server). Zet daarom altijd eerst de regel voor SSH, en pas daarna de rest.
Stap 2: Regels in het portaal
- Open je server en ga naar Firewall.
- Voeg eerst een regel toe voor SSH: protocol TCP, poort 22. Beperk de bron alleen tot je eigen IP-adres als je een vast IP-adres hebt; thuisinternet krijgt soms een ander adres, en dan sluit je jezelf buiten.
- Voeg daarna de andere poorten toe die je nodig hebt.
- Controleer of er een regel voor poort 22 staat vóór je de firewall aanzet. Het portaal waarschuwt als een wijziging SSH zou blokkeren.
- Wacht tot de regels de status gesynchroniseerd naar de server hebben. Opgeslagen betekent nog niet dat ze al gelden.
Stap 3: Firewall op de server, Ubuntu en Debian (ufw)
Op Ubuntu staat ufw er meestal al, maar uit. Op Debian installeer je hem eerst. De volgorde is belangrijk: eerst SSH toestaan, dan pas aanzetten.
apt update && apt install -y ufw
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ufw status verboseBij ufw enable vraagt ufw of je door wilt gaan omdat SSH-verbindingen kunnen wegvallen. Typ y alleen als ufw allow 22/tcp al is gelukt.
Stap 4: Firewall op de server, AlmaLinux (firewalld)
dnf install -y firewalld
systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
firewall-cmd --list-allWat je ziet als het lukt: bij services staan ssh, http en https.
Stap 5: Docker en de firewall
Docker zet eigen regels voor poorten die een container publiceert. Die gaan langs ufw heen: een container met -p 8080:80 is van buitenaf bereikbaar, ook als ufw poort 8080 niet toestaat. Wil je een poort alleen op de server zelf gebruiken, publiceer hem dan op 127.0.0.1, bijvoorbeeld -p 127.0.0.1:8080:80, of houd hem dicht in de portaalfirewall.
Stap 6: Controleer van buitenaf
Vanaf je eigen computer, niet vanaf de server:
- macOS en Linux:
nc -vz IP-ADRES 22 - Windows (PowerShell):
Test-NetConnection IP-ADRES -Port 22
Een open poort geeft succeeded of TcpTestSucceeded : True.
Hulp nodig?
Buitengesloten of twijfel je over een regel? Mail support@eu-hosted.com met je servernaam en de regel die je wilde toevoegen. Uitleg over herstelmodus staat in Account- en servertoegang herstellen.