Ketjun nimi ei ole koukku: iptables vastaan nftables
Ketju on säiliö; koukku ratkaisee, katsooko ydin sitä. Vertaa iptablesin sisäänrakennettuja ketjuja nftablesin perusketjuihin ennen sääntöjen muokkaamista.
Molemmat palomuurit voivat suodattaa edelleen välitettyä VPN-liikennettä, ja ne liittävät säännöt paketin reitille eri tavoin. iptablesissa on sisäänrakennettuja ketjuja taulun sisällä, joten FORWARD on olemassa nimettynä koukkupisteenä. nftables erottaa ketjun nimen sen tyypistä, koukusta ja prioriteetista, mikä tarkoittaa, että FORWARD-niminen tavallinen ketju ei suodata yhtään mitään. Mallien vertailu selittää, miksi kirjaus, joka näyttää yhdessä työkalussa oikealta, ei vaikuta toisessa.
Ketju on säiliö. Katsooko ydin sitä, riippuu toteutuksesta ja siitä, miten sääntökokonaisuus liittää sen.
Kaksi mallia, kaksi erilaista liitosta
iptablesissa filter-taulussa on kolme sisäänrakennettua ketjua, INPUT, FORWARD ja OUTPUT, ja -N luo käyttäjän määrittämän ketjun, joka vaikuttaa vasta, kun siihen hypätään jostakin niistä. nftablesin käsikirja määrittelee sen sijaan perusketjut, jotka ilmoittavat tyyppinsä, koukkunsa ja prioriteettinsa, sekä tavalliset ketjut, jotka eivät tee niin. Perusketju voi kantaa minkä tahansa nimen, eikä FORWARD-niminen tavallinen ketju saa merkinnästään mitään ominaisuuksia. Siinä on koko ero, ja se on näkymätön oppaassa, joka näyttää vain säännön tekstiä.
Yhteensopivuustaustat lisäävät toisen syyn olla päättelemättä käyttäytymistä komennon nimestä. iptablesin dokumentaatio mainitsee toiminnot, jotka eroavat iptables-nft:n alla, joten käsittele natiivia nftablesia, iptables-nft:tä ja vanhaa sääntökokonaisuutta kolmena järjestelmänä kolmen kirjoitusasun sijaan.
Lue virhe sen todellisessa asiayhteydessä
Puuttuva taulu, käyttöoikeusvirhe, käyttämätön ydinominaisuus ja puuttuva nimetty ketju ovat neljä eri havaintoa, ja vain yksi koskee ketjua. Kirjaa työkalun versio, pyydetty osoiteperhe ja taulu, verkon nimiavaruus ja ensimmäinen tarkka virhe. Tarkista sitten, mikä komponentti omistaa sääntökokonaisuuden: palomuuripalvelu tai tuotteen hallitsema yhdyskäytävä voi luoda omat ketjunsa ja järjestyksensä. Natiivin ketjun lisääminen niiden viereen jättää hallitun käytännön koskemattomaksi ja tekee luettelosta sekavamman.
Kontin nimiavaruudessa voi olla eri sääntökokonaisuus kuin isännässä, joten väärässä asiayhteydessä ajettu komento ei voi näyttää, mikä ketju näki välitetyn paketin. Oikeuksien korottaminen siksi, ettei odotettu ketju ollut näkyvissä, ei ole diagnoosi.
Laskurit todistavat ulottuvuuden, eivät tuomiota
Sääntölaskurit kertovat, että sääntöön päädyttiin. Ne eivät kerro, että myöhempi sääntö salli toiminnon, eivätkä ne todista, että kaikki vaihtoehtoiset polut hylättiin. Lue niitä yhden vaarattoman valtuutetun virtauksen aikana yhdessä sääntöjärjestyksen ja ketjun liitoksen kanssa, ja kohtele niitä yhtenä havaintona, ei tuomiona. Pudotussäännön nollasta poikkeava laskuri tarkoittaa, että liikenne osui siihen; se ei kerro mitään liikenteestä, joka ei osunut.
Ytimen IP-edelleenvälitys on täysin erillinen asetus. Ketjun olemassaolo ei ota edelleenvälitystä käyttöön, eikä tutun merkinnän puuttuminen tarkoita, että edelleenvälitys pysähtyi.
Kuvaa virtaus, jonka odotat suojaavasi
Kirjaa yksi asiakaspyyntö purkamisen jälkeen: sen lähde, kohde, osoiteperhe ja se, päättyykö se yhdyskäytävään vai kulkeeko se sen läpi. Paikallisen palvelun syöte ja välitetty liikenne havaitaan eri pisteissä, joten ne tarvitsevat eri säännöt ja eri testit. Sillatun VPN:n kohdalla tarkista myös sillan polku, koska IP-tason ketju ei valvo Ethernet-kehyksiä automaattisesti.
Säilytä riippumaton palautumispääsy ennen etäyhdyskäytävän muuttamista. Vahvista sitten aiottu virtaus ja vaaditut hylkäykset samassa sääntökokonaisuudessa. Uusi tyhjä ketju tutulla nimellä ei ole korjaus.
Vertailu päättyy yhteen kysymykseen: mihin koukkuun ydin todella soittaa tämän paketin kohdalla? Vastaa siihen, niin ketjun nimellä ei ole enää väliä.