Probleem: Poorten openen op CentOS/RHEL
Het openen van poorten op CentOS of RHEL systemen is een taak voor systeembeheerders en ontwikkelaars. Het is nodig wanneer je specifiek netwerkverkeer door de firewall wilt toelaten om diensten op je server te bereiken. Het proces kan verwarrend zijn voor degenen die nieuw zijn met Linux firewalls, vooral op deze distributies die standaard firewalld gebruiken.
Poorten openen op CentOS/RHEL
FirewallD gebruiken voor poortbeheer
FirewallD is de standaard firewall tool voor CentOS en RHEL. Het beheert firewallregels. Volg deze stappen om poorten te openen met FirewallD:
-
Controleer FirewallD status:
sudo firewall-cmd --state -
Lijst open poorten:
sudo firewall-cmd --list-ports -
Open een poort (bijv. poort 80 voor HTTP):
sudo firewall-cmd --add-port=80/tcp --permanent -
Herlaad firewallregels:
sudo firewall-cmd --reload
IPTables configureren voor poorttoegang
IPTables is een oudere firewall tool. Gebruik het om poorten te openen:
-
Controleer IPTables regels:
sudo iptables -L -
Voeg een regel toe om een poort te openen (bijv. poort 22 voor SSH):
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT -
Bewaar nieuwe regels:
sudo service iptables save -
Herstart IPTables:
sudo service iptables restart
Wees voorzichtig bij het openen van poorten, omdat het de beveiliging van je systeem kan beïnvloeden. Open alleen de poorten die je nodig hebt en controleer je firewall logs regelmatig.
Open poorten verifiëren op CentOS
Netstat gebruiken om open poorten te lijsten
Netstat is een tool voor het controleren van open poorten op je CentOS systeem. Om netstat te gebruiken:
- Open een terminal.
- Voer dit commando uit:
sudo netstat -tulnDit toont alle luisterende TCP en UDP poorten.
De output toont:
- Protocol (TCP of UDP)
- Lokaal adres en poortnummer
- Extern adres en poortnummer
- Verbindingsstatus
Bijvoorbeeld:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
Dit betekent dat poort 22 (SSH) open is en luistert naar verbindingen.
LSOF gebruiken om luisterende poorten te controleren
LSOF (List Open Files) is een andere tool om open poorten te identificeren. Om LSOF te gebruiken:
-
Installeer LSOF als het niet op je systeem staat:
sudo yum install lsof -
Voer dit commando uit om luisterende poorten te zien:
sudo lsof -i -P -n | grep LISTEN
Dit commando toont:
- De procesnaam die de poort gebruikt
- De gebruiker die het proces uitvoert
- Het poortnummer
Bijvoorbeeld:
sshd 1234 root 3u IPv4 12345 0t0 TCP *:22 (LISTEN)
Dit toont dat de SSH daemon luistert op poort 22.
Zowel netstat als LSOF geven informatie over open poorten op je CentOS systeem, waardoor je je firewall instellingen kunt controleren.
Alternatieve methoden voor poortconfiguratie
System-Config-Firewall Tool gebruiken
System-config-firewall is een tool voor het beheren van firewall instellingen op CentOS. Het biedt een visuele interface voor degenen die dit verkiezen boven commandoregel operaties.
Om system-config-firewall te gebruiken:
-
Installeer de tool:
sudo yum install system-config-firewall -
Start de applicatie:
sudo system-config-firewall -
Selecteer in de interface "Other Ports" en klik op "Add".
-
Kies het protocol (TCP of UDP) en voer het poortnummer in.
-
Klik op "Apply" om de wijzigingen op te slaan.
Deze methode is nuttig voor gebruikers die de voorkeur geven aan visuele tools.
Cloud-specifiek poortbeheer
Wanneer je CentOS uitvoert op cloud platforms, moet je mogelijk extra firewall instellingen overwegen voor je cloud provider.
Voor cloud-gehoste CentOS:
-
Raadpleeg de documentatie van je cloud provider voor firewall beheer.
-
Gebruik het controlepaneel van het cloud platform of CLI tools om netwerk beveiligingsgroepen te beheren.
-
Configureer zowel de CentOS firewall als de firewall van de cloud provider om het gewenste verkeer toe te staan.
-
Sommige cloud providers vereisen mogelijk dat je poorten opent op netwerkniveau voordat je de firewall op OS-niveau configureert.
-
Test je configuratie om er zeker van te zijn dat zowel de cloud als OS firewalls correct samenwerken.
Onthoud dat cloud omgevingen andere beveiligingspraktijken kunnen hebben in vergelijking met on-premises setups. Volg altijd de beveiligingsrichtlijnen van je cloud provider bij het beheren van poorten en firewallregels.
Problemen met poorttoegang oplossen op CentOS
Wanneer je problemen met poorttoegang ondervindt op CentOS, kun je deze problemen tegenkomen. Hier zijn enkele oplossingen om je te helpen ze op te lossen:
-
Poort opent niet:
- Controleer de firewallregels met
firewall-cmd --list-all - Voeg de poort toe aan de juiste zone
- Herlaad de firewall na het maken van wijzigingen
- Controleer de firewallregels met
-
Service start niet:
- Controleer of de service actief is met
systemctl status service_name - Controleer de service logs op fouten
- Zorg ervoor dat de service de juiste poort gebruikt
- Controleer of de service actief is met
-
Verkeerde SELinux instellingen:
- Gebruik
sestatusom te controleren of SELinux aan staat - Voer
semanage port -l | grep port_numberuit om SELinux poortlabels te controleren - Voeg indien nodig de juiste SELinux context toe met
semanage port -a -t port_label_t -p tcp port_number
- Gebruik
-
Conflicterende applicaties:
- Gebruik
netstat -tulnofss -tulnom te controleren of een andere applicatie de poort gebruikt - Stop of wijzig de conflicterende applicatie indien nodig
- Gebruik
Om firewall logs te controleren op verbindingspogingen:
-
Schakel logging in voor geweigerde pakketten:
sudo firewall-cmd --set-log-denied=all --permanent sudo firewall-cmd --reload -
Bekijk de firewall logs:
sudo journalctl -f -u firewalld -
Zoek naar items met "FINAL_REJECT" of "FINAL_DROP" die geblokkeerde verbindingen tonen
-
Controleer de logitems om het bron-IP, bestemmingspoort en protocol van geblokkeerd verkeer te vinden





