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

Leave a Comment

[VYRIEŠENÉ] „Tomuto vydavateľovi bolo zablokované spustenie softvéru na vašom počítači“ v systéme Windows 10

[VYRIEŠENÉ] „Tomuto vydavateľovi bolo zablokované spustenie softvéru na vašom počítači“ v systéme Windows 10

Získanie chyby Tomuto vydavateľovi bolo zablokované spustenie softvéru na vašom počítači, potom postupujte podľa opráv na odblokovanie vydavateľa a jednoduché spúšťanie softvéru

Ako kresliť na fotografiu na iPhone

Ako kresliť na fotografiu na iPhone

Chcete rýchlo anotovať fotografiu na iPhone? Môžete na to použiť aplikáciu Fotky. Táto príručka vám ukáže, ako začať.

[OPRAVENÉ] Kód chyby 0x80070035 Sieťová cesta sa nenašla v systéme Windows 10

[OPRAVENÉ] Kód chyby 0x80070035 Sieťová cesta sa nenašla v systéme Windows 10

Pri problémoch s kódom chyby 0x80070035 sa sieťová cesta nenašla, skúste opravy uvedené v článku ako vypnutie firewallu a zdieľanie disku.

Oprava: Nefunguje rozpoznání hlasu Asistenta Google

Oprava: Nefunguje rozpoznání hlasu Asistenta Google

Pokud hlasová shoda Google Assistant nefunguje, vytvořte nový hlasový model, spusťte aplikaci Google a nastavte výchozího asistenta.

Jak hrát The Legend Of Zelda: Breath Of The Wild na PC?

Jak hrát The Legend Of Zelda: Breath Of The Wild na PC?

Chcete si zahrát The Legend Of Zelda: Breath Of The Wild na PC? Zde se podívejte na všechny možné způsoby, jak hrát The Legend Of Zelda BOTW na Windows PC.

Nejjednodušší způsoby, jak vytvořit průhledné fotografické pozadí

Nejjednodušší způsoby, jak vytvořit průhledné fotografické pozadí

Objevte <strong>nejjednodušší způsoby odstranění pozadí fotografií</strong>. Připojte se k WebTech360 a zjistěte, jak efektivně vytvářet průhledná pozadí pro vaše obrázky.

Ako povoliť a používať automatické titulky na TikTok

Ako povoliť a používať automatické titulky na TikTok

Aby bylo vaše video na TikTok přístupnější a srozumitelnější, poskytneme vám návod, jak povolit a používat automatické titulky.

Ako opraviť chybu Bootrec/Fixboot Access Is Denied Windows 10?

Ako opraviť chybu Bootrec/Fixboot Access Is Denied Windows 10?

Postupujte podľa komplexných riešení uvedených v článku a opravte chybu bootrec/fixboot access denied vo Windows 10.

Ako sťahovať videá z Disney Plus na prezeranie offline

Ako sťahovať videá z Disney Plus na prezeranie offline

Zjistěte, jak efektivně stahovat videa z Disney Plus pro offline sledování. Všechny důležité informace na jednom místě.

Chyba 1058: Službu nelze spustit Windows 10 [VYŘEŠENO]

Chyba 1058: Službu nelze spustit Windows 10 [VYŘEŠENO]

Chcete-li opravit chybu 1058: Službu nelze spustit Windows 10, postupujte podle uvedených oprav, jako je kontrola služby a její povolení, použijte nastavení registru.