Keresés

Új hozzászólás Aktív témák

  • Dißnäëß

    nagyúr

    válasz Mr Dini #28035 üzenetére

    Hátha ez segít, a sorrendiség fontos. Alapból ezeken az "állomásokon" mennek át a csomagok, iránytól függően, illetve nyilván default-ból minden nyitva + amikor csak chain-t nevezel meg, tábla nélkül, akkor az a filter táblán operál (mindaddig, míg az adott lánc filter-ben értelmezett, például PREROUTING lánchoz hiába adsz szabályt hozzá filter-en, hibát dob, ő a nat-ban és a mangle-ben értelmezett).

    Egyébként meg igen, a szabályok egy adott chain-en belül sorrendiség alapján haladnak előre, szabályról szabályra vizsgálja a kernel, az adott szabály érvényes-e a csomagra, ha igen, annak megfelelően kezd vele valamit, ha nem, lépteti a következőre. Ha egy szabály sem illett a láncban egy adott csomagra, a lánc policy-nak megfelelően dobódik, vagy kikerül a láncról, vissza a fő láncra, ahonnan meghívódott a "custom" (saját) lánc.

    Mint egy futószalagon és ami csomagra érvényessé válik egy szabály, azt leveszi a "futószalagról" és már nincs rajta többé (kivéve mondjuk egy log-olós szabály lánc, ami a log-olást elvégzi úgy a csomagra, hogy közben a csomagot nem mozdítja el erről a futószalagról).

    Én amúgy sosem támogattam a DROP-ot, szerintem sokkal biztonságosabb és emberi hibát elkerülőbb, ha nincs DROP-od a lánc végén, ellenben a lánc policy-jét állítod DROP-ra. Valahogy butabiztosabb, de ezt csak lezárásra értem, ha menet közben kell okkal DROP-olni valamit egy viszonylag megengedő láncban, jó a DROP.

    Egy piszok egyszerű ultraalap mókán szemléltetve:

    iptables -A INPUT -i lo -j ACCEPT
    iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -P INPUT DROP

Új hozzászólás Aktív témák

Hirdetés