Ilagay ang panuntunan ng pahintulot sa maling posisyon at kikilos ito na parang walang panuntunan. Sa nftables, ang pagpili sa pagitan ng insert at add ang nagtatakda kung saang panig ng isang referensiyadong panuntunan babagsak ang bagong pahayag, at ang handle ay nagngangalan sa panuntunan sa live na set ng mga panuntunan, hindi sa numero ng row nito. Kung mali ang pagkakalagay, maaabot muna ng packet ang drop.

Gumagamit ang paghahambing sa ibaba ng isang nakapirming peer at isang palitan ng panlabas na tagapakinig. Sadyang makitid ito; ang pagpapalit ng buong chain ay ibang pagbabago na may ibang profile ng panganib.

Dalawang pagkakalagay, dalawang magkaibang kinalabasan

insert ay naglalagay ng panuntunan bago ang referensiyadong panuntunan. add ay naglalagay nito pagkatapos. Kung ang referensiyadong panuntunan ang terminal na drop para sa daloy, magkasalungat ang resulta ng dalawang utos na ito kahit magkapareho ang teksto ng panuntunan.

Ang pag-alis ng lokasyon ay may sariling default na pag-uugali, isa pang dahilan para hindi kopyahin ang isang utos mula sa forum nang hindi binabasa kung saan ito nakaangkla. Ang angkla ang buong desisyon. Isulat ang nilalayong panig bago i-type ang utos. Sa file, ang insert at add ay may isang salitang pagkakaiba.

Ang pagkakalagay ay relatibo sa isang panuntunan sa isang partikular na chain. Ang paglipat ng parehong pahayag sa ibang chain o ibang priyoridad ng hook ay nagbabago kung aling mga packet ang nakikita nito, kahit mukhang tama ang syntax ng panuntunan.

Tinutukoy ng handle ang isang panuntunan, hindi ang numero ng linya

Ang handle na tulad ng 42 ay isang identifier sa kasalukuyang estado ng set ng mga panuntunan. Hindi ito ang ikaapatnapu't dalawang panuntunan, at hindi ito matatag sa iba't ibang host, muling pagbuo o manager na naglo-load muli ng configuration nito.

Hanapin ang chain at ang aktwal na terminal na drop bago piliin ang angkla. Pagkatapos ay kumpirmahin ang handle sa panuntunang iyon sa parehong listahan na nagpapakita ng drop, upang mabasa nang sabay ang numero at ang panuntunan. Ang handle na nabasa mula sa lumang listahan ay maaaring pag-aari na ng ibang panuntunan. Basahin itong muli sa session na maglalapat ng pagbabago.

iptables --version
nft -a list ruleset

Ang bersyon ng iptables ay nag-uulat kung aling backend ang ginagamit. Ang set ng panuntunan ng iptables-nft at isang native na talahanayang pinamamahalaan nang hiwalay ay maaaring magkasabay, kaya ang listahan mula sa isang frontend ay hindi awtomatikong kumpletong larawan ng pagsasala. Suriin ang parehong pananaw bago pumili ng chain.

Hanapin ang chain at ang panuntunang talagang nag-drop

Basahin ang input hook, ang priyoridad ng chain at ang panuntunang tumatanggi sa daloy ng tagapakinig na ito. Ang talahanayang inet ay maaaring magdala ng parehong pamilya ng address, ngunit ang isang panuntunan ay maaari pa ring tumugma lamang sa IPv4.

Kumuha ng isang aprubadong peer, gamit ang 198.51.100.25 mula sa saklaw ng dokumentasyon bilang halimbawa. Ang isang sinuri na native na file ay maaaring maglagay ng panlabas na pahintulot bago ang handle 42:

insert rule inet filter input handle 42 iifname "eth0" ip saddr 198.51.100.25 udp dport { 500, 4500 } counter accept

Palitan ang pamilya, talahanayan, chain, handle, ingress interface at peer pagkatapos ng inspeksiyon. Ginagamit ng halimbawa ang anyo ng lokasyon-handle na dokumentado para sa nft 1.0.9, at kabilang ito sa isang input file; ang pag-quote ng braces ay hiwalay na usapin kapag ang utos ay tinatype nang interaktibo.

Panatilihing malinaw ang may-ari ng configuration. Ang manager na muling bumubuo ng mga panuntunan nito ay maaaring mag-overwrite ng pag-edit sa runtime, at ang boot script na hardcode ang lumang handle ay mabibigo o kakapit sa maling panuntunan.

May saklaw ang pahintulot, terminal ang drop

Ang hatol ng pahintulot ay nagtatapos sa pagsusuri sa kasalukuyang landas nito, ngunit ang base chain na naaangkop mamaya ay maaari pa ring mag-drop ng packet. Ang hatol ng drop ay terminal. Iyon ang dahilan kung bakit ang tumataas na counter ng pahintulot ay hindi patunay na nagtagumpay ang daloy.

Suriin ang lahat ng kaugnay na priyoridad ng hook sa halip na isang chain na hiwalay. Ang packet ay maaaring makadaan sa input filter at tanggihan pa rin ng hook ng ibang talahanayan sa ibang priyoridad. Ilahad ang bawat base chain na nakakakita ng daloy.

Ang panuntunang iyon ay sumasaklaw lamang sa palitan ng panlabas na tagapakinig. Ang ESP na nakabalot sa transport, native ESP, mga peer na IPv6 at ang na-decrypt na trapiko sa loob ng tunnel ay lahat nangangailangan ng sariling patakaran. Hindi ito isang kumpletong firewall ng VPN ng site.

Suriin ang file, pagkatapos ay i-verify ang live na resulta

Magpatakbo ng pagsusuri ng syntax at transaksyon sa sinuring file bago ito ilapat. Iniulat ng check mode kung maaaring i-parse at ihanda ng nft ang pagbabago; hindi nito ito inilalapat at hindi nito pinapatunayan na papayagan ng ibang hook ang packet. Nananatiling panukala ang file hanggang ilapat ito ng may-ari:

nft -c -f reviewed-vpn-rule.nft

Ilapat ito sa pamamagitan ng kontroladong proseso ng may-ari at panatilihin ang access sa pagbawi. Kung mali ang panuntunan, ang drop na sinusubukan mong unahan ay maaari ring putulin ang landas na ginagamit mo upang ayusin ito.

Pagkatapos ng pagbabago, obserbahan ang isang bagong pagtatangkang aprubadong peer at suriin na ang mga pinagmulan sa labas ng aprubadong peer ay tinatanggihan pa rin. Ilipat ang matatag na panuntunan sa manager na nagmamay-ari ng set ng mga panuntunan, dahil ang mga handle sa runtime ay naglolokasyon ng kasalukuyang mga bagay sa halip na kilalanin ang mga ito sa iba't ibang boot.

Kaugnay na mga artikulo