Jak nastavit firewall s iptables na Ubuntu a CentOS

 

iptables firewall

V tomto tutoriálu vám ukážeme, jak nastavit firewall iptables na spuštění systému Linux VPS ubuntu or CentOS jako operační systém. Iptables je administrační nástroj pro filtrování paketů IPv4 a NAT a slouží k nastavení a správě tabulek pravidel filtrů paketů IPv4 v jádře Linuxu.

Správná konfigurace a nastavení firewallu je jednou z nejdůležitějších a nejdůležitějších věcí, které musíte udělat zabezpečte svůj server.

Pomocí protokolu iptables je definováno několik různých tabulek odpovídajících paketům a každá tabulka může obsahovat řadu vestavěných řetězců, stejně jako některé řetězce definované uživatelem. Řetězy jsou vlastně seznamy pravidel, které odpovídají sadu paketů a každé pravidlo určuje, co dělat s odpovídajícím paketem.

Výchozí tabulka je filtrovat a obsahuje vestavěné řetězy INPUT, FORWARD a OUTPUT. Řetězec INPUT se používá pro pakety určené do místních zásuvek, řetězec FORWARD se používá pro pakety, které jsou směrovány skrze pole, zatímco řetězec OUTPUT se používá pro místně generované pakety.

Připojte se k serveru přes SSH a seznam pravidel definovaných v určitém řetězci pomocí následující syntaxe:

sudo iptables -L CHAIN

Nahraďte CHAIN ​​jedním z vestavěných řetězců a podívejte se na definovaná pravidla. Není-li vybrán žádný řetězec, budou na výstupu uvedeny všechny řetězce.

sudo iptables -L řetězec INPUT (politika ACCEPT) cíl cíl opt zdrojový řetězec řetězec FORWARD (politika ACCEPT) cíl cíl opt zdrojový zdroj řetězec OUTPUT (politika ACCEPT) cíl cíl opt zdroj

Pravidla brány firewall specifikují, co s určitým paketem dělat, pokud odpovídá určitým kritériím a v případě, že paket neodpovídá kritériím, bude zkoumáno další pravidlo brány firewall definované v řetězci. To je velmi důležité vědět při definování pravidel brány firewall, protože se můžete snadno uzamknout ze svého serveru, pokud definujete pravidlo, které přijme pakety z vaší lokální IP adresy po blokovacím pravidle.

Cíle, které můžete použít pro pravidla firewallu, jsou ACCEPT, DROP, QUEUE a RETURN. ACCEPT nechá paket procházet, DROP rozjede paket, QUEUE předá paket uživatelskému prostoru, zatímco RETURN zastaví přemístění paketu aktuálního řetězce a obnoví se při dalším pravidle v předchozím řetězci. Výchozí pravidla řetězce budou definovat, co dělat s paktem, pokud neodpovídá určitému pravidlu brány firewall. Jak je vidět na výstupu prvního příkazu, výchozí pravidla pro všechny vestavěné řetězce je nastavena na ACCEPT. ACCEPT nechá balíček projít, takže v podstatě neexistuje žádná ochrana.

Před přidáním konkrétních pravidel přidejte následující:

sudo iptables -A INPUT -m conntrack -statement ESTABLISHED, SOUVISEJÍCÍ -j ACCEPT

To zabrání tomu, aby již existující připojení byla zrušena a vaše aktuální relace SSH zůstane aktivní.

Dále přidejte pravidla, která umožňují provoz na vašem loopback rozhraní:

sudo iptables -A VSTUP -i lo -j ACCEPT sudo iptables -A VÝSTUP -o lo -j ACCEPT

Dále povolte přístup k vašemu serveru přes SSH pro vaši lokální IP adresu, takže k serveru máte přístup pouze:

sudo iptables -A VSTUP -s 111.111.111.111 -p tcp --dport 22 -j ACCEPT

Kde 111.111.111.111 je vaše místní IP adresa a 22 je poslechový port vašeho SSH démona. Pokud se vaše místní IP adresa dynamicky změní, je nejlepší vynechat -s 111.111.111.111 část a použijte jinou metodu k ochraně služby SSH před nechtěným provozem.

sudo iptables -A INPUT -p tcp -dport 22 -j ACCEPT

Dále povolte přístup k důležitým službám, jako je server HTTP / HTTPS:

sudo iptables -A INPUT -p tcp -dport 80 -j ACCEPT sudo iptables -A INPUT -p tcp -dport 443 -j ACCEPT

Stále někde? Získejte VPS od nás a my budeme správně zabezpečit váš server a nakonfigurovat firewall pro vás, zdarma!

Nyní zadejte aktuální pravidla a zkontrolujte, zda je vše v pořádku. Pro podrobný výstup můžete použít následující příkaz:

sudo iptables -nvL

Pokud máte jiné služby, které chcete povolit přístup, je nejlepší to udělat nyní. Jakmile skončíte, můžete nastavit výchozí zásady pro vestavěný řetězec INPUT na hodnotu DROP.

sudo iptables -P INPUT DROP

Tím dojde k odstranění jakéhokoli paketu, který neodpovídá kritériím pravidel brány firewall. Konečný výstup by měl být podobný následujícímu:

Řetězec INPUT (zásilka DROP 0 pakety, 0 bajty) pkts bytes cílový prot opt ​​in out zdrojový cíl 0 0 ACCEPT vše - * * 0.0.0.0 / 0 0.0.0.0 / 0 ctstate SOUVISEJÍCÍ SOUSTAVA 0 0 ACCEPT all-lo * 0.0.0.0 / 0 0.0.0.0 / 0 0 0 ACCEPT TCP - * * 0.0.0.0 / 0 0.0.0.0 / 0 tcp DPT: 22 0 0 ACCEPT TCP - * * 0.0.0.0 / 0 0.0.0.0 / 0 tcp DPT: 80 0 0 ACCEPT TCP - * * 0.0.0.0 / 0 0.0.0.0 / 0 tcp dpt: řetězec 443 FORWARD (zásada ACCEPT 0 pakety, 0 bajty) pkts bytes cíl cíl opt in out zdrojový cíl řetězec OUTPUT (politika ACCEPT 0 pakety, 0 bajty) pkts bytes cíl cíl opt out ven zdroje 0 0 ACCEPT všechny - * 0.0.0.0 / 0 0.0.0.0 / 0

Pokud však nyní restartujete server, ztratíte všechna pravidla firewallu, která jste definovali, takže je opravdu důležité, aby pravidla byla trvalá.

V případě, že používáte Ubuntu VPS musíte pro tento účel nainstalovat další balíček. Pokračujte a nainstalujte potřebný balíček pomocí následujícího příkazu:

sudo apt-get nainstalovat iptables-persistent

On Ubutnu 14.04 můžete uložit a znovu načíst pravidla brány firewall pomocí následujících příkazů:

sudo /etc/init.d/iptables-persistent uložte sudo /etc/init.d/iptables-persistent reload

On ubuntu 16.04 použijte místo toho následující příkazy:

sudo netfilter-persistentní zachránit sudo netfilter-persistent reload

Pokud používáte a CentOS VPS můžete pravidla firewallu uložit pomocí následujícího příkazu:

služba iptables uložit

 

Zdroj

Napsat komentář

Tyto stránky používají Akismet k omezení spamu. Zjistěte, jak jsou vaše údaje komentářů zpracovávány.

GTranslate Your license is inactive or expired, please subscribe again!