nftables: ingiza kanuni ya idhini ya VPN kabla ya kishikio cha drop
Katika nftables, insert na add huweka kanuni pande mbili tofauti za kishikio. Tafuta drop, chagua upande, kisha kagua faili kabla seti ya kanuni haijabadilika.
Weka kanuni ya idhini mahali pabaya na itatenda kana kwamba hakuna kanuni hiyo. Katika nftables, chaguo kati ya insert na add huamua upande gani wa kanuni inayorejelewa taarifa mpya itakaa, na kishikio hukitaja kanuni katika seti hai ya kanuni, si namba ya mstari wake. Kama mahali ni pabaya, pakiti hufikia drop kwanza.
Ulinganisho ulio hapa chini hutumia mwenza mmoja aliyewekwa na mabadilishano moja ya msikilizaji wa nje. Ni mwembamba kwa makusudi; kubadilisha mnyororo mzima ni badiliko lingine lenye wasifu mwingine wa hatari.
Mikao miwili, matokeo mawili tofauti
insert huweka kanuni kabla ya kanuni inayorejelewa. add huiweka baada yake. Kama kanuni inayorejelewa ndiyo drop ya mwisho kwa mtiririko, amri hizo mbili hutoa matokeo kinyume hata maandishi ya kanuni yakiwa sawa.
Kuacha mahali kuna tabia yake ya msingi, ambayo ni sababu nyingine ya kutonakili amri kutoka jukwaa bila kusoma inakotegemea. Kitegemeo ndiyo uamuzi mzima. Andika upande unaokusudiwa kabla ya kuandika amri. Katika faili, insert na add zinatofautiana kwa neno moja.
Mkao ni wa jamaa na kanuni katika mnyororo maalum. Kuhamisha taarifa hiyo hiyo kwenda mnyororo mwingine au kipaumbele kingine cha hook hubadilisha pakiti zipi inaziona, hata sintaksia ya kanuni ikionekana sahihi.
Kishikio hutambua kanuni, si namba ya mstari
Kishikio kama 42 ni kitambulisho katika hali ya sasa ya seti ya kanuni. Si kanuni ya arobaini na mbili, na hakina uthabiti kati ya wenyeji, ujenzi upya au meneja anayepakia upya usanidi wake.
Tafuta mnyororo na drop halisi ya mwisho kabla ya kuchagua kitegemeo. Kisha thibitisha kishikio kwenye kanuni hiyo katika orodha ile ile inayoonyesha drop, ili namba na kanuni zisomwe pamoja. Kishikio kilichosomwa kutoka orodha ya zamani kinaweza kuwa tayari ni cha kanuni nyingine. Kisome tena katika kikao kitakachotumia badiliko.
iptables --version
nft -a list ruleset
Toleo la iptables hutaarifu ni backend gani inatumika. Seti ya kanuni ya iptables-nft na jedwali asili linalosimamiwa kwa kujitegemea zinaweza kuwepo pamoja, kwa hiyo orodha kutoka frontend moja si picha kamili ya uchujaji kiotomatiki. Kagua maoni yote mawili kabla ya kuchagua mnyororo.
Tafuta mnyororo na kanuni inayofanya drop kweli
Soma hook ya ingizo, kipaumbele cha mnyororo na kanuni inayokataa mtiririko huu wa msikilizaji. Jedwali la inet linaweza kubeba familia zote mbili za anwani, lakini kanuni moja bado inaweza kuendana na IPv4 pekee.
Chukua mwenza mmoja aliyedhinishwa, ukitumia 198.51.100.25 kutoka safu ya nyaraka kama mfano. Faili asili iliyokaguliwa inaweza kuweka idhini ya nje kabla ya kishikio 42:
insert rule inet filter input handle 42 iifname "eth0" ip saddr 198.51.100.25 udp dport { 500, 4500 } counter accept
Baada ya ukaguzi badilisha familia, jedwali, mnyororo, kishikio, kiolesura cha kuingia na mwenza. Mfano hutumia umbo la mkao-kishikio lililoandikwa kwa nft 1.0.9, na huwa katika faili ya ingizo; kunukuu mabano ni suala tofauti amri inapoandikwa kwa mwingiliano.
Weka mmiliki wa usanidi wazi. Meneja anayejenga upya kanuni zake anaweza kuandika juu ya uhariri wa wakati wa utekelezaji, na skripti ya kuwasha inayoweka kwa uthabiti kishikio kilichopitwa na wakati itashindwa au itashikamana na kanuni isiyo sahihi.
Idhini ina mipaka, drop ni ya mwisho
Hukumu ya idhini humaliza tathmini kwenye njia yake ya sasa, lakini mnyororo msingi unaotumika baadaye bado unaweza kuangusha pakiti. Hukumu ya drop ni ya mwisho. Ndiyo sababu kihesabu cha idhini kinachoongezeka si uthibitisho kwamba mtiririko ulifanikiwa.
Kagua vipaumbele vyote vya hook vinavyohusika badala ya mnyororo mmoja kwa kutengwa. Pakiti inaweza kupita kichujio cha ingizo na bado ikakataliwa na hook ya jedwali lingine kwa kipaumbele tofauti. Orodhesha kila mnyororo msingi unaoweza kuona mtiririko.
Kanuni hiyo inashughulikia mabadilishano ya msikilizaji wa nje pekee. ESP iliyofungwa kwa usafiri, ESP asili, wenzi wa IPv6 na trafiki iliyofumbuliwa ndani ya handaki zote zinahitaji sera zao. Hii si firewall kamili ya VPN ya tovuti.
Kagua faili, kisha thibitisha matokeo hai
Kabla ya kuitumia, endesha ukaguzi wa sintaksia na muamala kwenye faili iliyokaguliwa. Hali ya ukaguzi hutaarifu kama nft inaweza kuchanganua na kuandaa badiliko; haitumi badiliko hilo na haithibitishi kwamba hook nyingine itaruhusu pakiti. Faili hubaki pendekezo hadi mmiliki atumie:
nft -c -f reviewed-vpn-rule.nft
Itumie kupitia mchakato uliodhibitiwa wa mmiliki na uhifadhi ufikiaji wa urejeshaji. Kama kanuni si sahihi, drop uliyokuwa ukijaribu kuipita inaweza pia kukata njia unayotumia kuirekebisha.
Baada ya badiliko, angalia jaribio jipya la mwenza aliyeruhusiwa na kagua kwamba vyanzo nje ya mwenza aliyedhinishwa bado vinakataliwa. Hamishia kanuni ya kudumu kwa meneja anayemiliki seti ya kanuni, kwa sababu vishikio vya wakati wa utekelezaji hupata vitu vya sasa badala ya kuvitambua kati ya kuwasha.