- 1. Filtrování paketů v Linuxu
- 2. Zobrazit stav brány firewall
- 3. Zastavte, restartujte nebo spusťte iptables na Linuxu
- 4. Přidejte nová pravidla brány firewall v systému Linux
- 5. Odstranit pravidlo brány firewall v systému Linux
- 6. Ukládejte a obnovujte pravidla iptables v Linuxu
- 7. Nastavte výchozí pravidla v Linuxu
- 8. Blokovat IP adresu v Linuxu
- 9. Blokovat příchozí požadavky na port v systému Linux
- 10. Zda povolit nebo nepovolit síťový provoz pomocí MAC adresy v Linuxu
- 11. Blokovat nebo povolit požadavky ICMP na Linuxu
- 12. Otevřete v Linuxu řadu portů a IP adres
- 13. Omezte počet paralelních připojení k serveru pomocí IP klienta v systému Linux
- 14. Omezte počet paralelních připojení k serveru pomocí IP klienta v systému Linux
- 15. Jasná pravidla NAT v Linuxu
- 16. Resetujte čítače balíků v Linuxu
- 17. Ověřte bránu firewall v systému Linux
- 18. Povolte smyčkový přístup pomocí iptables v Linuxu
- 19. Definujte nové řetězce iptables v Linuxu
- 20. Vymažte řetězce nebo pravidla brány firewall iptables v systému Linux
Zabezpečení musí být vždy jedním z prostorů, ve kterých musí pracovat administrátoři, pracovníci správy a podpory a obecně všichni uživatelé jakéhokoli aktuálního operačního systému, a to kvůli více hrozbám, které jsou v síti přítomny.
V případě distribucí Linuxu má většina z nich pokročilé nástroje pro použití filtru na síťové pakety, a to jak na úrovni zpracování řízení síťových paketů ve vstupu, pohybu, řízení a výstupu zásobníku. Sítí v jádru použitého systému , proto počínaje jádrem 2.4 byly zavedeny iptables, kterým se také říká netfilter a které mají vyšší úroveň zabezpečení a praktické funkce pro ochranu systému.
iptables zvládá filtrování IPv4, zatímco ip6tables zvládá filtrování IPv6 v dnešních sítích.
Solvetic provede analýzu fungování iptables a některé praktičtější příkazy, které z něj můžeme převzít.
1. Filtrování paketů v Linuxu
Jádro distribucí Linuxu využívá nástroj Netfilter k provádění procesu filtrování paketů, a tedy k jejich přijímání nebo zastavování.
Pravidla zabudovaná do NetfilteruNetfilter je ve výchozím nastavení začleněn do jádra Linuxu a má tři tabulky nebo seznamy pravidel integrovaných takto:
- filtr: Odkazuje na výchozí tabulku určenou pro správu paketů.
- nat: Jeho funkcí je měnit pakety, které byly vytvořeny v novém připojení používaném primárně NAT.
- mangle: Jeho použití platí, když je třeba změnit konkrétní síťové pakety.
Nyní má každá tabulka skupinu předdefinovaných řetězců, které souvisejí s akcemi, které lze provádět pomocí netfilter, jsou to tyto:
Pravidla pro filtrovací tabulkyVestavěné řetězce pro tabulku filtrů jsou:
- VSTUP: Souvisí s pakety, které byly určeny hostiteli.
- VÝSTUP: Toto funguje na síťových paketech, které byly generovány lokálně.
- FORWARD: Přidruží pakety, které byly směrovány přes hlavního hostitele.
Pravidla pro nat tabulkyVestavěné řetězce pro tabulku nat jsou:
- PREROUTING: Jeho funkcí je měnit síťové pakety, jakmile dorazí.
- VÝSTUP: Byl navržen tak, aby změnil síťové pakety, které jsou vytvářeny lokálně, a je aktivován před jejich odesláním.
- POSTROUTING: Vytvořeno pro změnu balíků před jejich globálním odesláním.
Pravidla pro mangrovové deskyVestavěné řetězy pro mangrovový stůl jsou:
- VSTUP: Navržen tak, aby upravoval síťové pakety určené pro hlavního hostitele.
- VÝSTUP: Vytvořeno pro změnu místně vytvořených síťových paketů a funguje před jejich odesláním.
- VPŘED: Změní pakety, které byly směrovány přes hlavního hostitele.
- PREROUTING: Vaším úkolem je upravit příchozí pakety před jejich směrováním.
- POSTROUTING: Změní síťové pakety před odesláním.
Každý síťový paket přijatý nebo odeslaný z operačního systému Linux je vždy vázán alespoň na jednu tabulku. Pojďme nyní porozumět některým užitečnějším příkazům, které můžeme s iptables použít.
2. Zobrazit stav brány firewall
Krok 1
Chcete -li zjistit aktuální stav brány firewall, spusťte následující řádek:
sudo iptables -L -n -v
ZVĚTŠIT
Krok 2
Tam můžeme ověřit každý řetězec s jeho příslušnými úrovněmi spravovaných balíčků, parametry použité v tomto příkazu jsou:
-LZobrazit pravidla seznamu.
-protiGeneruje podrobné informace, jako je název rozhraní, plus možnosti pravidel, plus jsou také uvedeny čítače paketů a bajtů s příponou 'K', 'M' nebo 'G' pro možnosti 1000, 1 000 000 a 1 000 000 000.
-nZobrazuje IP adresu a port v číselném formátu.
Krok 3
Pokud si přejete vidět tento výsledek s počtem řádků, můžeme provést následující:
iptables -n -L -v -line -numbers
ZVĚTŠIT
3. Zastavte, restartujte nebo spusťte iptables na Linuxu
Krok 1
Hlavní příkazy pro správu úloh iptables na úrovni spuštění nebo zastavení jsou:
service iptables stop service iptables start service iptables restartKrok 2
Rovněž bude možné použít příkaz iptables k zastavení brány firewall a odstranění všech pravidel takto:
iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPTKrok 3
Definovanými parametry jsou:
-FOdstraňte všechna pravidla.
-XOdstranit řetězec.
-tnázev_tabulky: Vyberte tabulku (pojmenovanou nat nebo mangle) a odstraňte nebo zrušte pravidla.
-PNastavte výchozí zásady, například DROP, REJECT nebo ACCEPT.
4. Přidejte nová pravidla brány firewall v systému Linux
Krok 1
Jedním z nejpraktičtějších úkolů iptables je vytvoření určitých pravidel pro správnou správu paketů, pro vložení jednoho nebo více pravidel do vybraného řetězce použijeme následující syntaxi, kde je třeba nejprve zjistit čísla řádků:
iptables -L VSTUP -n -čísla řádkůKrok 2
přidejme například následující pravidlo:
iptables -I VSTUP 2 -s 192.168.0.50 -j DROPKrok 3
Později uvidíme pravidla pomocí výše uvedeného příkazu. Zde vidíme, že vytvořené pravidlo bylo přidáno na řádek 3, jak je uvedeno.
ZVĚTŠIT
5. Odstranit pravidlo brány firewall v systému Linux
Krok 1
Nejprve musíme zobrazit pravidla, která jsou vytvořena, abychom přesně určili, která z nich by měla být odstraněna, abychom získali tyto informace, máme následující možnosti:
iptables -L VSTUP -n --čísla řádků iptables -L VÝSTUP -n --čísla řádků iptables -L VÝSTUP -n --čísla řádků | méněKrok 2
Chcete -li odstranit dříve vytvořené pravidlo 3, provedeme následující:
iptables -D VSTUP 3
ZVĚTŠIT
6. Ukládejte a obnovujte pravidla iptables v Linuxu
Krok 1
Pokaždé, když provedeme změnu v pravidlech iptables, musíme tyto změny uložit, protože k tomu stačí provést následující řádek:
služba iptables víKrok 2
Pravidla, která jsme uložili, můžeme jednoduše obnovit provedením následujícího:
restart služby iptables
7. Nastavte výchozí pravidla v Linuxu
S iptables bude možné povolit nebo odmítnout výchozí pravidla, která musí být aplikována na celý systém, následujícím způsobem.
Krok 1
Abychom eliminovali veškerý provoz, provádíme:
iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROPKrok 2
Odebrání veškerého příchozího provozu:
iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -m state -NOVÉ, ZŘÍZENÉ -j PŘIJMOUT
ZVĚTŠIT
8. Blokovat IP adresu v Linuxu
Pomocí iptables bude možné blokovat konkrétní IP adresu, aby se zabránilo přístupu síťového paketu k systému. Pro tento úkol máme následující možnosti:
iptables -A INPUT -s 192.168.0.14 -j DROP (specifická IP) iptables -A INPUT -s 192.168.0.0/24 -j DROP (rozsah adres)
9. Blokovat příchozí požadavky na port v systému Linux
Krok 1
Dalším typickým úkolem zabezpečení je omezit přístup k paketům přes konkrétní port, u iptables máme následující možnosti:
Blokovat všechny akceBlokujte všechny akce pro konkrétní port spuštěním:
iptables -A INPUT -p tcp --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp --dport 80 -j DROP
Blokovat portBlokovat port pro konkrétní IP adresu:
iptables -A INPUT -p tcp -s 192.168.0.14 --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp -s 192.168.0.1/24 --dport 80 -j DROP
Blokovat odchozí IP adresu
Je možné blokovat odchozí provoz na konkrétního hostitele nebo doménu, například Solvetic.com, za tímto účelem provedeme následující:
host -t na solvetic.com
ZVĚTŠIT
Krok 2
Nyní s touto IP adresou pokračujeme v blokování:
iptables -A VÝSTUP -d 178.33.118.246 -j DROPKrok 3
Bude také možné zablokovat celou doménu takto:
iptables -A VÝSTUP -p tcp -d www.solvetic.com -j DROP
10. Zda povolit nebo nepovolit síťový provoz pomocí MAC adresy v Linuxu
Další možností použití je omezit nebo povolit používání paketů na základě MAC adresy vybraného zařízení. K tomu použijeme jednu z následujících možností:
iptables -A INPUT -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j DROP (Odepřít provoz z vybrané MAC adresy) iptables -A INPUT -p tcp -cílový port 22 -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j ACCEPT (Podporuje pakety z adresy uvedené pouze portem 22)
11. Blokovat nebo povolit požadavky ICMP na Linuxu
Protokol ICMP (Internet Control Message Protocol) je protokol vyvinutý ke správě informací souvisejících s chybami v počítačích v místní síti, takže pomocí tohoto protokolu lze provádět vzdálené žádosti o ověření dostupnosti týmu a to z hlediska zabezpečení může být choulostivé .
Krok 1
Abychom se vyhnuli požadavkům ICMP na Linuxu, můžeme spustit následující řádky:
iptables -A INPUT -p icmp -typ požadavku na echo ej -j DROP iptables -A INPUT -i eth1 -p icmp -požadavek na echo typu emp -j DROPKrok 2
Odpovědi ping lze také omezit na určité sítě nebo hostitele, jako je tento:
iptables -A VSTUP -s 192.168.0.1/24 -p icmp -požadavek na echo typuicmp -j PŘIJMOUTKrok 3
Budeme moci přijímat pouze omezený typ žádostí ICMP, jako je tento:
iptables -A INPUT -p icmp -typ odpovědi echo -j -ACCEPT iptables -A INPUT -p icmp -typ cíle -icmp -nedosažitelný -j ACCEPT iptables -A INPUT -p icmp -čas typu -mp překročeno -j PŘIJMOUT
12. Otevřete v Linuxu řadu portů a IP adres
Krok 1
To je užitečné, pokud potřebujeme povolit definovaný rozsah portů k provádění akcí správy nebo spuštění programu:
iptables -A INPUT -m stav --state NOVINKA -m tcp -p tcp --dport 9000: 9020 -j PŘIJMOUTProto jsme pro připojení TCP otevřeli řadu portů 9000 až 9020.
Krok 2
Další alternativou je povolit rozsah IP adres nastavením konkrétního portu, jako je tento. Zde jsme autorizovali tento rozsah pro použití portu 80.
iptables -A VSTUP -p tcp -cílový port 80 -m iprange --src -rozsah 192.168.0.70-192.168.0.80 -j PŘIJMOUT
13. Omezte počet paralelních připojení k serveru pomocí IP klienta v systému Linux
Krok 1
K definování těchto omezení můžeme použít modul connlimit, například pro povolení 5 ssh připojení na klienta zadáme následující:
iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit -above 5 -j REJECT
ZVĚTŠIT
Krok 2
Chcete -li omezit přístup HTTP na 10:
iptables -p tcp --syn --dport 80 -m connlimit --connlimit -above 10 --connlimit -mask 24 -j DROPKrok 3
Uvedli jsme následující:
- --connlimit-above 5: Odpovídá, pokud je počet existujících připojení větší než 5.
- --connlimit-mask 24: Toto jsou skupinoví hostitelé, kteří používají délku předpony. Pro IPv4 to musí být číslo mezi (včetně) 0 a 32.
14. Omezte počet paralelních připojení k serveru pomocí IP klienta v systému Linux
Krok 1
NAT (Network Address Translation) je systém pro překlad síťových adres a tím usnadňuje navigaci. Abychom je uvedli, provedeme následující:
iptables -t nat -L -n -v
ZVĚTŠIT
Krok 2
Tento výsledek bude možné vidět s příslušnými řádky takto:
iptables -t nat -v -L -n --číslo linky
15. Jasná pravidla NAT v Linuxu
Krok 1
Pokud chceme odstranit zavedená pravidla NAT, provedeme následující:
iptables -t nat -v -L -n --line -number iptables -t nat -v -L PREROUTING -n --line -number iptables -t nat -v -L POSTROUTING -n --line -numberKrok 2
Chcete -li odstranit všechna pravidla „PREROUTING“, spustíme následující syntaxi:
iptables -t nat -D PREROUTING {číslo pravidla}Krok 3
Chcete -li odstranit všechna pravidla „POSTROUTING“, která provedeme:
iptables -t nat -D POSTROUTING {číslo pravidla}
16. Resetujte čítače balíků v Linuxu
Nejprve musíme spustit příkaz "iptables -L -n -v", který jsme viděli dříve, abychom vypsali čítače.
Krok 1
Chcete -li tyto čítače vymazat, spusťte následující:
iptables -ZKrok 2
Chcete-li resetovat čítače pouze pro přístup, provedeme:
iptables -Z VSTUP
17. Ověřte bránu firewall v systému Linux
Krok 1
Nejprve musíme ověřit, zda jsou porty otevřené nebo ne, následujícím příkazem:
netstat -tulpn
ZVĚTŠIT
Krok 2
K ověření konkrétního portu provedeme:
netstat -tulpn | grep: 80
ZVĚTŠIT
Krok 3
V případě, že port není otevřený, provedeme:
služba httpd startKrok 4
Pak se musíme ujistit, že iptables má přístup přes tento port:
iptables -L VSTUP -v -n | grep 80
18. Povolte smyčkový přístup pomocí iptables v Linuxu
Zpětný přístup, jehož přístup je z IP 127.0.0.1, je důležitý a měl by být vždy ponechán aktivní pro úlohy správy a správy sítě. Chcete -li jej povolit v iptables, proveďte následující.
iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT
19. Definujte nové řetězce iptables v Linuxu
Krok 1
S iptables máme možnost definovat vlastní řetězec a ukládat do něj vlastní pravidla. Chcete -li definovat řetězec, provedeme následující:
iptables -N "Název řetězce"Krok 2
Poté spustíme „iptables -L“ a vypsáme řetězce iptables:
ZVĚTŠIT
Krok 3
Ve výsledku uvidíme náš vytvořený řetězec:
ZVĚTŠIT
20. Vymažte řetězce nebo pravidla brány firewall iptables v systému Linux
K provedení tohoto odstranění musíme provést následující:
iptables -FJak vidíme, iptables je komplexní řešení pro centrální správu různých aspektů zabezpečení v distribucích Linuxu za účelem dosažení vylepšení ve všem, co souvisí s ochranou osobních údajů.