Jak otevřít porty v Linuxu

Potřebujete se připojit k externímu počítači nebo serveru – nebo potřebujete další počítač nebo server, aby se k vám připojil? Pokud používáte Linux, musíte se ujistit, že je otevřený správný port.

Zatímco jiné operační systémy na to obvykle mají nějaký grafický nástroj, Linux tak jednoduchý není. Níže vás provedeme tím, jak otevřít porty v Linuxu.

Co je to port a proč bych jej měl otevřít?

Port je koncový bod v síti. Představte si to jako dveře, které vedou do určité místnosti nebo vnějšího světa, ale na vašem počítači. Vše, co děláte na internetu, využívá konkrétní port nebo řadu portů.

Řekněme například, že chcete provozovat svůj vlastní server Minecraft. Chcete-li to provést, budete muset otevřít port, přes který se k němu uživatelé mohou připojit. Totéž platí pro provozování vlastního webového, poštovního nebo FTP serveru.

Porty jsou standardizovány na všech zařízeních připojených k síti. Prvních 1024 portů (od 0 do 1023) se označuje jako známá čísla portů . Jsou vyhrazeny pro nejpoužívanější služby, jako je HTTP a HTTP (port 80, resp. 443) a SSH (port 22).

Čísla portů nad 1024 se označují jako efemérní porty a jsou vám obvykle k dispozici pro vaše online hraní, soukromé webové servery a tak dále. Čísla portů 1024 až 49151 se nazývají registrované nebo uživatelské porty , zatímco porty od 49152 do 65535 jsou známé jako dynamické nebo soukromé porty .

Výpis otevřených portů na Linuxu

Než se začnete pokoušet otevřít port v Linuxu, měli byste se ujistit, že již není používán. Toho lze dosáhnout pomocí příkazu netstat , který je součástí většiny distribucí Linuxu. Pokud vaše distribuce nemá netstat , můžete místo toho použít ss .

netstat -lntu

Jak otevřít porty v Linuxu

Tím se vytisknou všechny naslouchající sokety ( -l ) spolu s číslem portu ( -n ). Zahrnuje porty TCP ( -t ) a také UDP ( -u ). Pokud váš systém nemá netstat , použijte ss se stejnými parametry.

ss -lntu

Jak otevřít porty v Linuxu

Jak otevřít porty v Linuxu

Pro tento příklad budeme předpokládat, že chceme otevřít port 4000 pro připojení TCP. Nejprve se musíme ujistit, že port již není používán. Děláme to přes netstat nebo ss .

netstat -na | grep :4000 ss -na | grep :4000

Za předpokladu, že výstup je prázdný, můžeme do firewallu systému přidat příslušná pravidla portu. Metody se budou lišit v závislosti na vaší distribuci a na tom, zda používá novější ufw firewall nebo firewalld . Ubuntu upřednostňuje ufw , zatímco CentOS místo toho obvykle používá firewalld . Samozřejmě stále existují některé distribuce Linuxu používající starší firewall iptables .

Pro uživatele Ubuntu a další systémy založené na ufw Firewall

Ubuntu a některé další distribuce namísto použití staršího firewallu iptables používají ufw . V těchto systémech otevře port následující příkaz.

sudo ufw allow 4000

Přeskočte několik následujících kroků a otestujte svůj nově otevřený port, abyste se ujistili, že funguje.

Jak otevřít porty v Linuxu pomocí CentOS a dalších systémů založených na firewallu

Pokud váš systém používá firewalld , nejlepším řešením je použít k aktualizaci pravidel příkaz firewall-cmd .

sudo firewall-cmd --add-port=4000/tcp

Nepůjde o trvalou změnu, ale po otestování portu probereme, jak zajistit, aby pravidla trvala i po restartu.

Pro jiné distribuce Linuxu

Pokud váš systém Linux nemá ufw nebo firewalld , budete muset použít iptables . Pokud není nainstalován, pokračujte a získejte jej pomocí vašeho správce balíčků. Jakmile je nainstalován, tyto příkazy otevře port 4000:

sudo iptables -A INPUT -p tcp --dport 4000 -j ACCEPT sudo service iptables restart

Pokud váš systém používá systemctl , nahraďte druhý příkaz takto:

sudo systemctl restart iptables

Testování nově otevřených portů pro připojení

Dále bychom měli otestovat port, abychom se ujistili, že přijímá připojení. Děláme to tak, že k naslouchání portu použijeme netcat ( nc ) a poté se k němu pokusíme připojit telnet.

Nejprve otevřete okno terminálu a zadejte tento příkaz:

sudo ls | nc -l -p 4000

Nechte jej běžet (poslouchejte) a otevřete druhé okno terminálu. V tomto okně použijete telnet k testování připojení. Pokud telnet není nainstalován, udělejte to pomocí správce balíčků.

telnet [hostname/IP address] [port number]

Nahraďte [hostname/IP address] IP adresou vašeho systému a [port number] číslem portu, který jste otevřeli.

telnet localhost 4000

Měli byste vidět výstup podobný tomu níže, což znamená otevřené spojení s nc .

Jak otevřít porty v Linuxu

Můžeme také ukázat, že port je otevřený pomocí nmap . Znovu, pokud příkaz ještě není nainstalován, použijte správce balíčků k jeho získání.

nmap localhost -p 4000

Jak otevřít porty v Linuxu

Všimněte si, že nmap zobrazí pouze otevřené porty, které čekají na připojení. Proto k testování používáme netcat, abychom na tomto portu naslouchali. Jinak se port nezaregistruje jako otevřený.

Nemohu se připojit k portu, který jsem právě otevřel, co teď?

Pokud jste provedli všechny výše uvedené kroky a nemůžete se připojit k portu, znovu zkontrolujte zadání. Pokud jste si jisti, že jste vše zadali správně, je pravděpodobné, že budete muset překonfigurovat síťový router, aby provoz povolil.

Vzhledem k tomu, že každý síťový směrovač má různé konfigurační obrazovky, měli byste si prostudovat stránky podpory nebo uživatelskou příručku pro vaše konkrétní zařízení. Budete muset zkontrolovat nastavení předávání portů nebo mapování portů a také vestavěný firewall, který může router používat.

Jak trvale otevřít port v Linuxu

Jakmile svůj otevřený port otestujete a ujistíte se, že funguje, pravděpodobně budete chtít provést změnu natrvalo. Jinak se změny nemusí po restartu udržet. Pokud jste uživatelem Ubuntu nebo jinak používáte ufw firewall, nemusíte se o to starat. Pravidla ufw se po restartu neresetují.

Pro uživatele s firewallem

S firewallem je snadné udržet pravidlo portu po restartu . Stačí přidat příznak —permanent k vašemu počátečnímu příkazu a bude zahrnut do pravidel brány firewall vašeho systému Linux při spuštění.

sudo firewall-cmd --add-port=4000/tcp --permanent

Pokud stále používáte iptables

Firewall iptables je mnohem obtížnější (možná dobrý důvod pro upgrade na firewalld nebo ufw ). Chcete-li „trvale“ otevřít port v iptables , můžete nainstalovat balíček iptables-persistent, který vám pomůže.

Když poprvé nainstalujete iptables-persistent na systém založený na Debianu, uloží vaše aktuální pravidla buď do /etc/iptables/rules.v4 nebo /etc/iptables/rules.v6 . Chcete-li přidat nová pravidla, zadáte následující příkaz:

sudo iptables-save > /etc/iptables/rules.v4

NEBO

sudo iptables-save > /etc/iptables/rules.v6

Pro ty, kteří provozují linuxové distribuce založené na RPM, je to trochu jiné. Balíček se nazývá iptables-services a úložné soubory jsou /etc/sysconfig/iptables a /etc/sysconfig/ip6tables .

V distribucích založených na RPM se také používá jiný příkaz pro porty IPv6. Uložení pravidel se provádí pomocí jednoho z těchto dvou příkazů:

sudo iptables-save > /etc/sysconfig/iptables sudo ip6tables-save > /etc/sysconfig/iptables

Sledujte využití svého portu

Postupem času se mohou potřeby vašeho serveru změnit. Stejně jako byste měli držet krok s uživatelskými účty na vašem počítači se systémem Linux, měli byste také pravidelně kontrolovat své otevřené porty. Zavřete všechny otevřené porty, které již nepotřebujete. Spolu s pravidelnou změnou hesla je to dobrý bezpečnostní postup, který vám pomůže vyhnout se průnikům do systému a zneužití zabezpečení.

Tags: #JAK

[100 % vyriešené] Ako opraviť hlásenie „Chyba pri tlači“ v systéme Windows 10?

[100 % vyriešené] Ako opraviť hlásenie „Chyba pri tlači“ v systéme Windows 10?

V systéme Windows 10 sa zobrazuje správa o chybe tlače, potom postupujte podľa opráv uvedených v článku a uveďte tlačiareň do správnej cesty...

Jak zachytit a přehrát záznam Microsoft Teams

Jak zachytit a přehrát záznam Microsoft Teams

Schůzky můžete snadno znovu navštívit, pokud je zaznamenáte. Zde je návod, jak zachytit a přehrát záznam Microsoft Teams pro vaši příští schůzku.

Ako obnoviť predvolené aplikácie v systéme Android

Ako obnoviť predvolené aplikácie v systéme Android

Keď otvoríte súbor alebo kliknete na odkaz, vaše zariadenie so systémom Android vyberie predvolenú aplikáciu na jeho otvorenie. Pomocou tohto sprievodcu môžete obnoviť svoje predvolené aplikácie v systéme Android.

OPRAVENO: Chyba certifikátu Entitlement.diagnostics.office.com

OPRAVENO: Chyba certifikátu Entitlement.diagnostics.office.com

OPRAVENO: Chyba certifikátu Entitlement.diagnostics.office.com

Top 10 herních webů, které škola v roce 2022 neblokuje

Top 10 herních webů, které škola v roce 2022 neblokuje

Chcete-li zjistit nejlepší herní weby, které školy neblokují, přečtěte si článek a vyberte si nejlepší web s neblokovanými hrami pro školy, vysoké školy a práce

OPRAVENÉ: Tlačiareň v chybovom stave [HP, Canon, Epson, Zebra & Brother]

OPRAVENÉ: Tlačiareň v chybovom stave [HP, Canon, Epson, Zebra & Brother]

Ak čelíte problému s chybovým stavom tlačiarne na počítači so systémom Windows 10 a neviete, ako s ním zaobchádzať, opravte ho podľa týchto riešení.

Ako zálohovať Chromebook (2022)

Ako zálohovať Chromebook (2022)

Ak vás zaujíma, ako zálohovať Chromebook, máme pre vás riešenie. Viac o tom, čo sa zálohuje automaticky a čo nie, nájdete tu

Ako opraviť aplikáciu Xbox, ktorá sa neotvorí v systéme Windows 10 [RÝCHLE GUIDE]

Ako opraviť aplikáciu Xbox, ktorá sa neotvorí v systéme Windows 10 [RÝCHLE GUIDE]

Chcete opraviť aplikáciu Xbox, ktorá sa neotvorí v systéme Windows 10, potom postupujte podľa opráv, ako je povoliť aplikáciu Xbox zo služieb, resetovať aplikáciu Xbox, obnoviť balík aplikácií pre Xbox a ďalšie.

Co je LogiOptions.exe (UNICODE) a je proces bezpečný?

Co je LogiOptions.exe (UNICODE) a je proces bezpečný?

Pokud máte klávesnici a myš Logitech, uvidíte, že tento proces běží. Není to malware, ale není to nezbytný spustitelný soubor pro operační systém Windows.

Opravená chyba Java Update/Install Error 1603 ve Windows 10

Opravená chyba Java Update/Install Error 1603 ve Windows 10

Přečtěte si článek a zjistěte, jak opravit chybu Java Update 1603 ve Windows 10, vyzkoušejte opravy uvedené jednu po druhé a snadno opravte chybu 1603…