Hoe poorten te openen in Linux
Linux Ubuntu Basisprincipes Van Ubuntu Held / / March 02, 2022
Laatst geupdate op
Als u externe verbindingen met een pc of server wilt toestaan, moet u de juiste poort openen. Linux-gebruikers kunnen poorten openen met behulp van deze handige gids.
Wilt u verbinding maken met een externe pc of server, of heeft u een andere pc of server nodig om verbinding met u te maken? Als je Linux gebruikt, moet je ervoor zorgen dat de juiste poort open is.
Terwijl andere besturingssystemen hiervoor meestal een grafische tool hebben, is Linux niet zo eenvoudig. We laten u hieronder zien hoe u poorten in Linux kunt openen.
Wat is een poort en waarom zou ik deze moeten openen?
Een poort is een eindpunt op het netwerk. Zie het als een deur die naar een bepaalde kamer of de buitenwereld leidt, maar dan op je computer. Alles wat u op internet doet, gebruikt een bepaalde poort of een reeks poorten.
Stel dat u bijvoorbeeld uw eigen Minecraft-server wilt draaien. Om dit te doen, moet u een poort openen zodat gebruikers er verbinding mee kunnen maken. Hetzelfde zou van toepassing zijn op het runnen van uw eigen web-, e-mail- of FTP-server.
Poorten zijn gestandaardiseerd over alle met het netwerk verbonden apparaten. De eerste 1024 poorten (van 0 tot 1023) worden aangeduid als bekende poortnummers. Ze zijn gereserveerd voor de meest gebruikte services, zoals HTTP en HTTP (respectievelijk poort 80 en 443) en SSH (poort 22).
Poortnummers boven 1024 worden aangeduid als: kortstondige poorten, en zijn doorgaans beschikbaar voor u om te gebruiken voor uw online gaming, privéwebservers, enzovoort. Poortnummers 1024 tot 49151 worden aangeroepen geregistreerd of gebruikerspoorten, terwijl die van 49152 tot 65535 bekend staan als dynamisch of privé poorten.
Open poorten op Linux weergeven
Voordat u een poort op Linux probeert te openen, moet u ervoor zorgen dat deze nog niet in gebruik is. U kunt dit doen met behulp van de netstat commando, opgenomen in de meeste Linux-distributies. Als uw distributie niet heeft: netstat, je kunt gebruiken ss in plaats van.
netstat -lntu.
Hiermee worden alle luisteraansluitingen (-l), samen met het poortnummer (-N). Het bevat TCP-poorten (-t) en UDP (-u). Als uw systeem niet beschikt over: netstat, gebruik gewoon ss met dezelfde parameters.
ss -lntu.
Hoe poorten te openen in Linux
Omwille van dit voorbeeld gaan we ervan uit dat we poort 4000 voor TCP-verbindingen willen openen. We moeten eerst controleren of de poort niet al in gebruik is. Dit doen we door netstat of ss.
netstat -na | grep: 4000. ss -na | grep: 4000.
Ervan uitgaande dat de uitvoer leeg is, kunnen we de juiste poortregels toevoegen aan de firewall van het systeem. De methoden hiervoor zijn afhankelijk van uw distributie en of deze de nieuwere ufw firewall of firewalld. Ubuntu-gunstenufw, terwijl CentOS gebruikt meestalfirewalld in plaats van. Natuurlijk zijn er nog steeds enkele Linux-distributies die de oudere gebruiken iptables firewall.
Voor Ubuntu-gebruikers en andere ufw Firewall-gebaseerde systemen
In plaats van de oudere te gebruiken iptables firewall, Ubuntu en sommige andere distributies gebruiken ufw. Onder deze systemen zal de volgende opdracht de poort openen.
sudo ufw sta 4000 toe.
Sla de volgende paar stappen over en test uw nieuw geopende poort om te controleren of deze werkt.
Poorten openen in Linux met CentOS en andere op firewall gebaseerde systemen
Als uw systeem gebruikmaakt van firewalld, kunt u het beste de gebruiken firewall-cmd opdracht om de regels bij te werken.
sudo firewall-cmd --add-port=4000/tcp.
Dit zal geen permanente verandering zijn, maar we zullen bespreken hoe de regels kunnen blijven bestaan na het opnieuw opstarten nadat we de poort hebben getest.
Voor andere Linux-distributies
Als uw Linux-systeem niet beschikt over: ufw of firewalld, moet u gebruiken iptables. Als het niet is geïnstalleerd, ga je gang en haal het op met je pakketbeheerder naar keuze. Zodra het is geïnstalleerd, wordt met deze opdrachten poort 4000 geopend:
sudo iptables -A INPUT -p tcp --dport 4000 -j ACCEPTEREN. sudo-service iptables herstart.
Als uw systeem gebruikmaakt van systeemctl, vervang het tweede commando door:
sudo systemctl herstart iptables.
Nieuw geopende poorten testen voor verbindingen
Vervolgens moeten we de poort testen om er zeker van te zijn dat deze verbindingen accepteert. We doen dit met behulp van netcat (nc) om naar de poort te luisteren en er vervolgens naar te telnetten.
Open eerst een terminalvenster en geef deze opdracht:
sudo ls | nc-l-p 4000.
Laat het draaien (luisteren) en open een tweede terminalvenster. In dat venster gebruik je telnet om de connectiviteit te testen. Als telnet niet is geïnstalleerd, doe dit dan met uw pakketbeheerder.
telnet [hostnaam/IP-adres] [poortnummer]
Vervangen [hostnaam/IP-adres] met het IP-adres van uw systeem, en [poortnummer] met het poortnummer dat u hebt geopend.
telnet localhost 4000.
Je zou de output zoals hieronder moeten zien, wat een open verbinding aangeeft met nc.
We kunnen ook laten zien dat de poort open is met: nmap. Nogmaals, als de opdracht nog niet is geïnstalleerd, gebruik dan uw pakketbeheerder om deze op te halen.
nmap localhost -p 4000.
Let daar op nmap zal alleen open poorten weergeven die naar verbindingen luisteren. Daarom gebruiken we netcat om te testen, om op die poort te luisteren. Anders wordt de poort niet als open geregistreerd.
Ik kan geen verbinding maken met de poort die ik zojuist heb geopend, wat nu?
Als u alle bovenstaande stappen doorloopt en geen verbinding kunt maken met de poort, controleer dan nogmaals uw typen. Als je zeker weet dat je alles correct hebt ingevoerd, is de kans groot dat je je netwerkrouter opnieuw moet configureren om het verkeer toe te staan.
Aangezien elke netwerkrouter verschillende configuratieschermen heeft, dient u de ondersteuningspagina's of de gebruikershandleiding voor uw specifieke apparatuur te raadplegen. U moet de instellingen voor poortdoorschakeling of poorttoewijzing controleren, evenals eventuele ingebouwde firewall die de router kan gebruiken.
Hoe permanent een poort in Linux te openen
Nadat u uw open poort hebt getest en hebt gecontroleerd of deze werkt, wilt u de wijziging waarschijnlijk permanent maken. Anders blijven de wijzigingen mogelijk niet behouden na een herstart. Als u een Ubuntu-gebruiker bent, of anderszins de ufw firewall, hoeft u zich hier geen zorgen over te maken. De ufw regels worden niet gereset bij opnieuw opstarten.
Voor gebruikers met firewall
Een poortregel maken die blijft hangen na een herstart is eenvoudig met firewalld. Voeg gewoon de. toe —permanente vlag toe aan uw eerste opdracht, en het zal bij het opstarten worden opgenomen in de firewallregels van uw Linux-systeem.
sudo firewall-cmd --add-port=4000/tcp --permanent.
Als je nog steeds iptables gebruikt
De iptables firewall is veel lastiger (misschien een goede reden om te upgraden naar firewalld of ufw). Een poort "permanent" openen in iptables, kunt u de installeren iptables-persistent pakket te helpen.
Wanneer u voor het eerst installeert iptables-persistent op een op Debian gebaseerd systeem, zal het uw huidige regels opslaan in ofwel: /etc/iptables/rules.v4 of /etc/iptables/rules.v6. Om nieuwe regels toe te voegen, geef je de volgende opdracht:
sudo iptables-save > /etc/iptables/rules.v4.
OF
sudo iptables-save > /etc/iptables/rules.v6.
Voor degenen die op RPM gebaseerde Linux-distributies gebruiken, is het een beetje anders. Het pakket heet iptables-diensten, en de opslagbestanden zijn /etc/sysconfig/iptables en /etc/sysconfig/ip6tables.
Op RPM-gebaseerde distributies wordt er ook een ander commando gebruikt voor IPv6-poorten. Het opslaan van uw regels doet u met een van deze twee opdrachten:
sudo iptables-save > /etc/sysconfig/iptables. sudo ip6tables-save > /etc/sysconfig/iptables.
Zorg ervoor dat u uw poortgebruik controleert
Naarmate de tijd verstrijkt, kunnen uw serverbehoeften veranderen. Zoals het hoort op de hoogte blijven van de gebruikersaccounts op uw Linux-machine, moet u ook uw open poorten regelmatig controleren. Sluit alle open poorten die niet meer nodig zijn. Samen met regelmatig je wachtwoord veranderen, dit is een goede beveiligingspraktijk die u zal helpen systeeminbraken en beveiligingsexploits te voorkomen.