Uživatelské nástroje

Nástroje pro tento web


navody:server:firewall

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
navody:server:firewall [2018/09/25 11:53] – [FirewallD] andrejnavody:server:firewall [2026/08/16 18:56] (aktuální) – Přirozenější znění návodů, lokalizace ukázek a doplnění týdenního vyzkoušení VPS aither
Řádek 1: Řádek 1:
 +<page>manuals:server:firewall</page>
 +
 +<kb-managed
 +  source="https://github.com/vpsfreecz/vpsfree-kb-contracts/blob/master/contract/pages/navody-server-firewall.txt"
 +  test="https://github.com/vpsfreecz/vpsfree-kb-contracts/blob/master/tests/suite/kb/firewall.nix"
 +/>
 +
 ====== Firewall ====== ====== Firewall ======
  
-Firewall slouží pro filtraci provozu na VPS nějPomocí něj je možné nastavovat pravidla pro konkrétní pakety, které jsou propouštěny na základe různých parametrů jako jsou zdrojová a cílová IP adresazdrojový či cílový port a podobně.+Firewall rozhoduje, který síťový provoz smí projít do VPSVPS nebo přes 
 +VPSvpsFree před VPS žádný společný firewall nezapíná. Výchozí stav proto 
 +záleží na distribuci: například NixOS má firewall standardně zapnutýzatímco 
 +čistý Debian nebo Ubuntu obvykle žádná vlastní omezující pravidla nemají.
  
-Linuxové jádro obsahuje firewall zvaný Netfilter, který je obsluhován pomocí utility ''iptables''Tento přístup je nízkoúrovňový umožňuje nastavit velké množství různých parametrů variant. Pohodlnější variantou je například nadstavba Shorewallcož je sada skriptůkteré dovolují pravidla pro Netfilter z jednodušších konfiguračních souborů.+Vlastní firewall **není povinný**Může být rozumné provozovat jen potřebné 
 +pravidelně aktualizované služby ostatní vůbec nespouštět. Firewall přidává 
 +další ochrannou vrstvuale nenahrazuje bezpečnou konfiguraciaktualizace ani 
 +přihlašování pomocí SSH klíčů.
  
-Na našem VPS je v každém případě nejprve potřeba povolit podporu iptables. Pokud to neuděláte, bude firewall fungovat jen v [[https://openvz.org/Man/vzctl.8#Netfilter_.28iptables.29_control_parameters|bezestavovém režimu]], kdy nebudou fungovat moduly vyžadující conntrack (například NAT a jiné moduly závislé na stavu spojení). V detailu VPS je potřeba zapnout podporu iptables a potvrdit. Dojde k restartu VPS a podpora je zapnutá.+===== Jak pravidla fungují =====
  
-{{:navody:vps:features.png?300|}}+Síťový program naslouchá na kombinaci adresy, protokolu (nejčastěji TCP nebo 
 +UDP) a portu. Web běžně používá TCP porty 80 a 443, SSH TCP port 22. Příkaz 
 +''ss -lntup'' ukáže, které služby právě naslouchají. Adresa ''0.0.0.0'' znamená 
 +všechny IPv4 adresy, ''[::]'' všechny IPv6 adresy a ''127.0.0.1'' nebo ''[::1]'' 
 +je dostupná jen uvnitř VPS.
  
-Při prvotních hrátkách s firewallem je možné, že si neopatrným zásahem odříznete cestu k VPS. Nepanikařte a přejděte na návod k [[navody:vps:oprava|opravě rozbité VPS]].+Při filtrování na samotné VPS se setkáš se třemi základními řetězci:
  
-===== IPtables =====+  * **INPUT** zpracovává příchozí pakety určené VPS. 
 +  * **OUTPUT** zpracovává pakety odesílané z VPS. 
 +  * **FORWARD** zpracovává pakety směrované přes VPS, například pro VPN, router nebo některé kontejnery.
  
-Současný stav je možné zjistit pomocí+Pravidla v řetězci se vyhodnocují shora dolů. Jakmile paket odpovídá pravidlu 
 +s konečnou akcí, například ''ACCEPT'', ''DROP'' nebo ''REJECT'', další pravidla 
 +se už nezkoušejí. Pokud žádné pravidlo nerozhodne, použije se výchozí politika 
 +řetězce. Stavový firewall navíc pozná pakety patřící k navázanému spojení, takže 
 +odpovědi může povolit dříve než pravidla pro nová spojení.
  
-  iptables -L +IPv4 a IPv6 jsou dvě samostatné rodiny adres. Firewall musí chránit obě
-   +povolení služby jen pro IPv4 ji neschová na veřejné IPv6 adrese.
-Výstup bude vypadat pravděpodobně nějak takto+
  
-<code>  Chain INPUT (policy ACCEPT) +Vyber si **jeden** způsob správy firewallu. Nekombinuj ruční pravidla 
-  target     prot opt source               destination+''iptables'' nebo ''nftables'' s UFW či firewalld, pokud přesně nevíš, jak se 
 +budou ovlivňovat. Jednoduchá pravidla níže počítají s VPS bez Dockeru, VPN, 
 +směrování a jiných služeb, které si vytvářejí vlastní firewallová pravidla.
  
-  Chain FORWARD (policy ACCEPT) +<note important> 
-  target     prot opt source               destination+Než zapneš blokující politiku, povol TCP port 22, nech otevřené současné SSH 
 +spojení a přihlášení ověř v druhém terminálu. Stejný postup opakuj po každé 
 +větší změně. 
 +</note>
  
-  Chain OUTPUT (policy ACCEPT) +===== Jednoduchý firewall pomocí iptables =====
-  target     prot opt source               destination</code> +
-   +
-Ve výpisu jsou zobrazeny tři řetězce (chain): vstup, průchod a výstup. V nich v současné době nejsou žádná pravidla, která by regulovala průchod paketů. V takovém případě se uplatňuje výchozí politika (policy), která je ve všech třech případech nastavena na „povol“ (ACCEPT). Všechny pakety tedy nyní projdou bez filtrace.+
  
-<note>Všechny třřetězce jsou oddělené, paket prochází vždy jen jedním z nich. Pokud je zdrojem náš serverdostane se paket do řetězce OUTPUTPokud je naopak náš server cílem, paket ichází do INPUT. Pokud jsou zdroj i cíl mimo náš stroj a paket tedy jen prochází skrz, dostane se do FORWARD.</note>+Syntaxe ''iptables'' bývá pro první nízkoúrovňové nastavení přehledná. Na 
 +současném Debianu příkazy ''iptables'' běžně používají backend nftables; ověříš 
 +to pomocí ''iptables -V''kde je uvedeno ''nf_tables''IPv4 obsluhuje 
 +''iptables'' a IPv6 samostatný íkaz ''ip6tables''.
  
-Je čas naučit náš firewall nějaká pravidlaJejich syntaxe je následující:+Tento skript pro čistou VPS povolí loopback, ICMP, navázaná spojení a nová TCP 
 +spojení na porty 22, 80 a 443INPUT a FORWARD mají nakonec politiku ''DROP'', 
 +OUTPUT zůstává ''ACCEPT''. Skript nejprve nastaví přijímající politiky, pak 
 +vytvoří pravidla a blokující politiky zapne až nakonec:
  
-  řetězec pravidlo akce+<code bash> 
 +#!/usr/bin/env bash 
 +set -eu
  
-Každé pravidlo musí patřit do nějakého řetězce, na procházející paket se pak aplikuje pravidlo v případě vyhovění se provede akce. Tedy například: do řetězce INPUT přidej pravidlo „pokud je cílem TCP paketu port 80“, akce je „propusť“Konkrétně:+# Nainstaluj nástroje pro příkazovou řádku trvalé ukládání pravidel. 
 +apt update 
 +apt install -y iptables iptables-persistent
  
-  iptables -INPUT -p tcp --dport 80 -ACCEPT+# Při nahrazování současných pravidel ponech provoz povolený. 
 +iptables -INPUT ACCEPT 
 +iptables -P FORWARD ACCEPT 
 +iptables -P OUTPUT ACCEPT 
 +ip6tables -P INPUT ACCEPT 
 +ip6tables -P FORWARD ACCEPT 
 +ip6tables -P OUTPUT ACCEPT
  
-Takto můžete ručně zapsat různá pravidla a sledovat chování. Takto zapsaná pravidla ale **nejsou perzistentní** a po restartu vašeho VPS zmizí. Pokud je potřebujete vysypat cíleně a zbavit se veškerého nastavení, použijte+# Odstraň současná pravidla filtru uživatelsky definované řetězce. 
 +iptables -F 
 +iptables -X 
 +ip6tables -F 
 +ip6tables -X
  
-   iptables -F+# Vstup IPv4: zahoď neplatné pakety, zachovej navázaný provoz a otevři služby. 
 +iptables -A INPUT -m conntrack --ctstate INVALID -j DROP 
 +iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
 +iptables -A INPUT -i lo -j ACCEPT 
 +iptables -A INPUT -p icmp -j ACCEPT 
 +iptables -A INPUT -p tcp -m multiport --dports 22,80,443 -j ACCEPT
  
-Pokud naopak potřebujete pravidla zachovat, zapište je například do souboru ''/etc/iptables.rules''. Na pořadí zapsání záleží! Netfilter pak pravidla prochází sekvenčně a provede jen první akciu které daný paket vyhověl pravidlu.+# Vstup IPv6: použij stejná pravidla a zachovej funkční řídicí provoz IPv6. 
 +ip6tables -A INPUT -m conntrack --ctstate INVALID -j DROP 
 +ip6tables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
 +ip6tables -A INPUT -i lo -j ACCEPT 
 +ip6tables -A INPUT -p ipv6-icmp -j ACCEPT 
 +ip6tables -A INPUT -p tcp -m multiport --dports 22,80,443 -j ACCEPT
  
-<note important>Pravidla se pak sice zapisují stejně, ale bez íkazu ''iptables'' na začátkuŘádek tedy začíná rovnou na -A…</note>+# Zahoď ostatní vstupní a edávaný provoz, místní odchozí provoz ponech povolený. 
 +iptables -P INPUT DROP 
 +iptables -P FORWARD DROP 
 +ip6tables -P INPUT DROP 
 +ip6tables -P FORWARD DROP
  
-<code>*filter+# Ulož pravidla a zobraz výslednou politiku vstupu. 
 +netfilter-persistent save 
 +iptables -L INPUT -n -v 
 +ip6tables -L INPUT -n -v 
 +</code>
  
-# Pusť veškerý loopback (lo0) provoz a zahoď provoz z 127/8, který nepochází rozhraní lo0 +**Výsledek:** Na IPv4 i IPv6 projde loopback, ICMP, provoz navázaných spojení 
--A INPUT -i lo -j ACCEPT +a nová TCP spojení na porty 22, 80 a 443. Ostatní příchozí a veškerý 
--A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT+předávaný provoz se zahodí, odchozí provoz z VPS zůstane povolený.
  
-# Propusť všechen provoz už navázaných spojení +''iptables-persistent'' uloží pravidla pro obě rodiny adres a služba 
--A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT+''netfilter-persistent'' je znovu načte při startu. Při další změně spusť 
 +''netfilter-persistent save'' znovu. Další možnosti popisují manuály 
 +[[https://manpages.debian.org/trixie/iptables/iptables.8.en.html|iptables(8)]] a 
 +[[https://manpages.debian.org/trixie/netfilter-persistent/netfilter-persistent.8.en.html|netfilter-persistent(8)]].
  
-# Povol veškerý odchozí provoz +===== Nativní nftables =====
--A OUTPUT -j ACCEPT+
  
-# Otevřpříchozí porty pro HTTP a HTTPS +nftables spravuje IPv4 IPv6 v jednom pravidlovém jazyce. Ulož následující 
--A INPUT -p tcp --dport 80 -j ACCEPT +konfiguraci do ''/etc/nftables.conf''. Tabulka rodiny ''inet'' obslouží obě 
--A INPUT -p tcp --dport 443 -j ACCEPT+rodiny adres a pořadí pravidel odpovídá výkladu výše:
  
-# Povol veškerá spojení na SSH +<code bash> 
--A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT +#!/usr/sbin/nft -f
-Povol spojení jen z mé IP adresy +
-# -I INPUT -p tcp -s 1.2.3.4 --dport 22 -j ACCEPT+
  
-Zakaž všechno ostatní, co prošlo až sem+Nahraď celou současnou sadu pravidel
--A INPUT -j REJECT +flush ruleset
--A FORWARD -j REJECT+
  
-COMMIT+table inet filter { 
 +  chain input { 
 +    type filter hook input priority filter; policy drop; 
 + 
 +    # Nejprve zpracuj stav, povol loopback, zachovej řídicí provoz a otevři služby. 
 +    ct state invalid drop 
 +    ct state established,related accept 
 +    iifname "lo" accept 
 +    meta l4proto { icmp, ipv6-icmp } accept 
 +    tcp dport { 22, 80, 443 } accept 
 +  } 
 + 
 +  chain forward { 
 +    # Tento jednoduchý firewall nepředává žádný provoz. 
 +    type filter hook forward priority filter; policy drop; 
 +  } 
 + 
 +  chain output { 
 +    # Povol veškerý provoz vytvořený na VPS. 
 +    type filter hook output priority filter; policy accept; 
 +  } 
 +}
 </code> </code>
  
-Takový konfigurační soubor je možné získat tak, že uložíte aktuální pravidla zapsaná právě ve firewallu. Pokud jste tedy pravidla zadali ručně z řádky, můžete si je všechna uložit:+**Výsledek:** Jedna tabulka ''inet'' uplatní pro IPv4 IPv6 stejnou politiku 
 +jako předchozí příkladpovolí loopback, ICMP, navázaná spojení a nová TCP 
 +spojení na porty 22, 80 a 443, ostatní vstup a předávání zahodí a odchozí 
 +provoz povolí.
  
-  iptables-save > /etc/iptables.rules+Konfiguraci nejprve zkontroluj bez aplikování pomocí ''nft -c''Pak zapni 
 +službu, která ji načte nyní i při dalších startech:
  
-Stejně tak je možné obsah souboru znovu načíst do jádra:+<code bash> 
 +#!/usr/bin/env bash 
 +set -eu
  
-  iptables-restore < /etc/iptables.rules+# Nainstaluj nftables. 
 +apt update 
 +apt install -y nftables
  
-Pokud chcete, aby se tento příkaz spouštěl při startu systému a tedy aby se při startu VPS načetla všechna zadaná pravidla, zapište do souboru ''/etc/network/if-pre-up.d/iptables'' tyto dva řádky:+# Před použitím zkontroluj celou konfiguraci. 
 +nft -c -f /etc/nftables.conf
  
-<code>#!/bin/sh +Načti konfiguraci nyní i při startu a pak zobraz výsledek. 
- /sbin/iptables-restore < /etc/iptables.rules</code>+systemctl enable --now nftables 
 +nft list ruleset 
 +</code>
  
-Soubor pak učiňte spustitelným:+Po úpravě soubor znovu ověř pomocí ''nft -c -f /etc/nftables.conf'' a načti 
 +ho příkazem ''systemctl reload nftables''. Podrobnosti najdeš na 
 +[[https://wiki.debian.org/nftables|wiki Debianu]] a v manuálu 
 +[[https://manpages.debian.org/trixie/nftables/nft.8.en.html|nft(8)]].
  
-  chmod +x /etc/network/if-pre-up.d/iptables+===== UFW na Debianu a Ubuntu =====
  
-Od této chvíle se i startu serveru aplikují firewallová pravidla podle vašich ání.+UFW nabízí jednodušší rozhraní ke stavovému firewallu. Tento íklad přidá 
 +pravidla, která povolí SSH a web. Stávající uživatelská pravidla zůstanou 
 +platná a vestavěná pravidla dál obslouží loopback a nezbytný síťový řídicí 
 +provoz. Pro provoz, na který se žádné z těchto pravidel nevztahuje, výchozí 
 +politiky zahodí nová íchozí spojení a povolí odchozí provozVýchozí 
 +instalace spravuje IPv4 i IPv6; skript před zapnutím ověří, že 
 +''/etc/default/ufw'' obsahuje ''IPV6=yes'':
  
-===== Shorewall =====+<code bash> 
 +#!/usr/bin/env bash 
 +set -eu
  
-Nastavení firewallu se dělá pomocí balíku //shorewall//.+apt update 
 +apt install -y ufw 
 +ufw default deny incoming 
 +ufw default allow outgoing 
 +ufw allow 22/tcp comment 'SSH' 
 +ufw allow 80/tcp comment 'HTTP' 
 +ufw allow 443/tcp comment 'HTTPS' 
 +ufw show added 
 +grep -Fx 'IPV6=yes' /etc/default/ufw 
 +ufw --force enable 
 +ufw status verbose 
 +</code>
  
-  apt-get install shorewall +**Výsledek:** UFW na IPv4 i IPv6 povolí navázaná spojení a nová TCP spojení 
-  cd /etc/shorewall+na porty 22, 80 a 443. Stávající uživatelská pravidla i vestavěná pravidla UFW 
 +zůstanou platná. Pro provoz, na který se žádné pravidlo nevztahuje, výchozí 
 +politiky zahodí nová příchozí spojení a povolí odchozí provoz.
  
 +Pokud kontrola ''IPV6=yes'' selže, UFW se nezapne a nejprve musíš nastavení
 +opravit. Pravidlo smažeš například příkazem ''ufw delete allow 80/tcp''.
 +Číslovaný seznam zobrazí ''ufw status numbered''. Podrobnosti najdeš v
 +[[https://documentation.ubuntu.com/server/how-to/security/firewalls/|dokumentaci firewallu pro Ubuntu]].
  
-**/etc/shorewall/zones**+===== firewalld na Fedoře a distribucích rodiny RHEL =====
  
-Nastavení zón ($FW v ostatních souborech se automaticky nahrazuje "fw").+firewalld sdružuje rozhraní a pravidla do zón a umí služby pojmenovat. 
 +Následující nastavení použije výchozí zónu ''public'', trvale v ní povolí SSH a 
 +web a pak trvalou konfiguraci načte:
  
-  #ZONE   TYPE            OPTIONS         IN                      OUT +<code bash> 
-                                        OPTIONS                 OPTIONS +#!/usr/bin/env bash 
-  fw      firewall +set -eu
-  net     ipv4 +
-  vpn     ipv4+
  
 +dnf install -y firewalld
 +systemctl enable --now firewalld
 +firewall-cmd --set-default-zone=public
 +firewall-cmd --permanent --zone=public --add-service=ssh
 +firewall-cmd --permanent --zone=public --add-service=http
 +firewall-cmd --permanent --zone=public --add-service=https
 +firewall-cmd --reload
 +firewall-cmd --get-active-zones
 +firewall-cmd --zone=public --list-all
 +</code>
  
-**/etc/shorewall/policy**+**Výsledek:** Zóna ''public'' na IPv4 i IPv6 povolí služby ''ssh'', ''http''
 +''https'' vedle služeb a pravidel, které už v zóně máš. Veškerý další příchozí 
 +provoz se dál řídí existujícími pravidly a cílem zóny. Toto nastavení neomezuje 
 +odchozí provoz z VPS.
  
-Tohle je nastaveni implicitních akcí (vyhodnocuje se v zadaném pořadí!).+Použij zónu, kterou pro rozhraní VPS ukáže ''firewall-cmd 
 +--get-active-zones''; nemusí se vždy jmenovat ''public''. Změna bez 
 +''--permanent'' platí jen do restartu nebo načtení konfigurace, zatímco trvalá 
 +změna se projeví až po ''firewall-cmd --reload''. Více příkladů obsahuje 
 +[[https://firewalld.org/documentation/howto/open-a-port-or-service.html|dokumentace firewalld]].
  
-  #SOURCE         DEST            POLICY          LOG     LIMIT:    CONNLIMIT: +===== NixOS =====
-  #                                               LEVEL   BURST           MASK +
-   +
-  # povol spojeni "ze serveru na internet" +
-  $FW             net             ACCEPT +
-   +
-  # zahod vsechno "z internetu na server" +
-  net             all             DROP            info +
-   +
-  # odmitni vsechno "z vpn na internet" (aby si vpn klienti nebrouzdali pres server) +
-  vpn             net             REJECT          info +
-   +
-  # povol vsechno ostatni "z vpn" +
-  vpn             all             ACCEPT +
-   +
-  # The FOLLOWING POLICY MUST BE LAST +
-  all             all             REJECT          info+
  
 +NixOS má ''networking.firewall.enable'' ve výchozím nastavení zapnuté. Otevřené
 +porty popiš deklarativně. Následující modul můžeš uložit jako
 +''/etc/nixos/firewall.nix'' a přidat ''./firewall.nix'' do existujícího seznamu
 +''imports'' v ''/etc/nixos/configuration.nix'':
  
-**/etc/shorewall/interfaces**+<code nix> 
 +{ ... }: 
 +
 +  networking.firewall = { 
 +    enable = true; 
 +    allowedTCPPorts = [ 22 80 443 ]; 
 +  }; 
 +
 +</code>
  
-  FORMAT 2 +**Výsledek:** Modul na IPv4 i IPv6 přidá mezi povolené nové TCP porty 22, 80 
-  ############################################################################### +a 443. Firewall dál povolí navázaná spojení a vestavěný síťový řídicí provoz. 
-  #ZONE           INTERFACE               OPTIONS +Výchozí politika zahodí ostatní nový příchozí provozkterý nepovolí tento ani 
-  net             venet0                  tcpflags,logmartians,nosmurfs +jiný modul. Odchozí provoz modul neomezuje.
-  vpn             tun0+
  
-**/ets/shorewall/rules**+Některé služby mají vlastní volbu ''openFirewall'', která potřebné porty 
 +otevře automaticky. Před změnou si ověř, co daný modul nastavuje. První 
 +aktivaci proveď pomocí ''nixos-rebuild test'':
  
-Tady se nastavují jednotlivá pravidla, kterými se pak firewall řídí. V následujícím souboru jsou v komentářích vysvětleny jendotlivé příklady.+<code bash> 
 +#!/usr/bin/env bash 
 +set -eu
  
-  #ACTION   SOURCE            DEST         PROTO  DEST    SOURCE    ORIGINAL   RATE    USER/   MARK   CONNLIMIT   TIME    HEADERS     SWITCH +nixos-rebuild test 
-  #                                               PORT    PORT(S)   DEST       LIMIT   GROUP +</code>
-  #SECTION ALL +
-  #SECTION ESTABLISHED +
-  #SECTION RELATED +
-  SECTION NEW +
-   +
-  # povoleni SSH sluzby pro klienty z internetu  +
-   +
-  ACCEPT    net               $FW          tcp    ssh +
-  # pro urcitou IP adresu +
-  #ACCEPT    net:78.80.8.27    $FW          tcp    ssh +
-  # - pro skupinu IP adres (subnet) +
-  #ACCEPT    net:81.25.21.0/24 $FW          tcp    ssh +
-   +
-  # OpenVPN +
-  ACCEPT    net               $FW          udp    1194 +
-  ACCEPT    $FW               net          udp    -       1194 +
-   +
-  # WEB +
-  ACCEPT    all               all          tcp    80 +
-  ACCEPT    all               all          tcp    443+
  
-**/etc/default/shorewall**+Ověř nové SSH spojení. Teprve když funguje, ulož konfiguraci do nové bootovací 
 +generace: 
 + 
 +<code bash> 
 +#!/usr/bin/env bash 
 +set -eu 
 + 
 +nixos-rebuild switch 
 +</code>
  
-V tomto souboru je potřeba Shorewallu říci, že má začít pracovat a načítat konfigurační soubory.+Viz [[https://nixos.org/manual/nixos/stable/#sec-firewall|firewall v manuálu NixOS]].
  
-  startup=1+===== Docker a jiné kontejnery =====
  
 +Port publikovaný Dockerem může procházet pravidly, která vytvoří Docker, a
 +nemusí se řídit očekáváním z UFW nebo firewalld. Nepovažuj proto ''deny
 +incoming'' samo o sobě za ochranu všech kontejnerů. Publikuj jen porty, které
 +mají být opravdu veřejné; službu pro místní reverzní proxy navaž například na
 +''127.0.0.1:8080:80''. Po nasazení ověř dostupnost také z jiného stroje.
  
-Poté můžeme nechat Shorewall zkontrolovat konfiguraci:+Podrobnosti a možnosti filtrování popisuje 
 +[[https://docs.docker.com/engine/network/packet-filtering-firewalls/|dokumentace firewallu Docker Engine]].
  
-  shorewall check +===== Když se odřízneš =====
-   +
-Pokud potvrdí ''Configuration Validated'' alebo ''Shorewall configuration verified'',žeme ho spustit+
  
-  shorewall start|stop|restart|...+Pokud nové SSH spojení po změně firewallu nefunguje, **nezavírej původní 
 +relaci**Z ní zkontroluj ''ss -lntp'' a stav správce, který sis vybral: 
 +''iptables -L -n'', ''nft list ruleset'', ''ufw status verbose'' nebo 
 +''firewall-cmd --get-active-zones''.
  
-Další itečné íkazy+Když už žádné SSH spojení nemáš, návod ke [[navody:vps:konzole|vzdálené konzoli 
-   +ve vpsAdminu]] tě provede obnovením ístupu. [[navody:vps:start_menu|Start 
-  shorewall status +menu]] nabízí záchranný postup nezávislý na funkční síti a povoleném portu SSH. 
-  shorewall show +Položka **Run shell** při restartu zpřístupní shell přímo v souborovém systému 
-  shorevall safe-start +VPS, odkud můžeš pravidla opravit.
-  shorewall safe-restart+
  
-Odkazy: [[http://shorewall.net/ | shorewall.net/]] [[https://wiki.debian.org/HowTo/shorewall | wiki.debian.org/HowTo/shorewall]] +V normálně spuštěném systému UFW dočasně vypne ''ufw disable''firewalld 
 +''systemctl stop firewalld'' a nftables ''systemctl stop nftables''U ručních 
 +iptables nejdřív nastav politiku INPUT pro IPv4 i IPv6 na ''ACCEPT'' a teprve 
 +potom pravidla opravuj.
  
-===== FirewallD =====+V prostředí **Run shell** neběží systemd ani správce firewallu. Obnov v něm 
 +trvalou konfiguraci, například ''/etc/iptables/rules.v4''
 +''/etc/iptables/rules.v6'' nebo ''/etc/nftables.conf'', ukonči shell a systém 
 +spusť normálně. Na NixOS můžeš ve start menu místo toho vybrat předchozí 
 +funkční generaci a pak konfiguraci opravit.
  
-FirewallD v defaultním nastavení na CentOS7 na vpsFree nefunguje - pokud jej zapnete bez následujícího kroku, nejspíš se pak nebudete moct na svou VPS připojit přes SSH. Je potřeba v konfiguráku ''/etc/firewalld/firewalld.conf'' nastavit ''IPv6_rpfilter'' na ''no'':+Dočasné vypnutí odstraňuje ochrannou vrstvu. Firewall potom znovu zapni a nové 
 +SSH spojení ověřNemaž naslepo nízkoúrovňová pravidla, pokud mohou patřit 
 +Dockeru, VPN nebo jiné službě.
  
-  IPv6_rpfilter=no 
navody/server/firewall.1537876410.txt.gz · Poslední úprava: autor: andrej