VPN ఇంటర్ఫేస్ వచ్చే సమయంలో nftables విధానాన్ని స్థిరంగా ఉంచండి
పేరు ఆధారిత nftables నియమాలు వచ్చిపోయే టన్నెల్ను తట్టుకుంటాయి, కానీ మార్గాలు మరియు ఉన్న ప్రవాహాలు స్వయంచాలకంగా అనుసరించవు. యజమానులను వేరు చేయండి.
టన్నెల్లు తాత్కాలికమైనవి; విధానం అలా ఉండకూడదు. Linux గేట్వేలో టన్నెల్ ఇంటర్ఫేస్ను పేరు ద్వారా సరిపోల్చే nftables నియమాన్ని ఒకసారి లోడ్ చేయవచ్చు, ఆ ఇంటర్ఫేస్ వచ్చిన ప్రతిసారీ అది వర్తిస్తూనే ఉంటుంది. ఇంటర్ఫేస్కు ఇంకా జీవన చక్రం ఉంది: అది సృష్టించబడుతుంది, పోతుంది, దాని చుట్టూ ఉన్న మార్గాలు మరియు అనువాదాలు తమ సొంత షెడ్యూల్ను అనుసరిస్తాయి. ఈ యజమానులను వేరు చేయడమే తిరిగి కనెక్ట్ అయ్యే సమయంలో ప్రాప్తిని స్థిరంగా ఉంచుతుంది.
పేరు సరిపోలిక ఇంటర్ఫేస్ కంటే ఎక్కువ కాలం జీవిస్తుంది
nftables సంఖ్యాత్మక ఇంటర్ఫేస్-సూచిక సరిపోలికలు మరియు చలనశీల పేరు-సరిపోలికలు iifname మరియు oifname అందిస్తుంది. ఈ పేర్లను ఉపయోగించే నియమాలు టన్నెల్ పరికరం ఇంకా సృష్టించబడకపోయినా శుభ్రంగా లోడ్ అవుతాయి, ఇది బూట్ సమయంలో నియమాల సమితికి సరిగ్గా కావాల్సినది. ఇంటర్ఫేస్ పేరు మారితే సరిపోలిక ఆగిపోతుంది, కొత్త ఇంటర్ఫేస్ ఆ పేరును తీసుకుంటే మళ్లీ ప్రారంభమవుతుంది. సంఖ్యాత్మక సూచికకు ఆ లక్షణం లేదు, అందుకే టన్నెల్కు పేరు రూపమే సాధారణ ఎంపిక.
పేరు సరిపోలిక కీ, రెండో వైపు ఎవరు ఉన్నారనడానికి సాక్ష్యం కాదు. సహచరుడి ప్రామాణీకరణ VPN పనే.
నియమాలు జోడించే ముందు గొలుసును చదవండి
నియమాల సమితిలో ఇప్పుడు ఏమి ఉంది, కొత్త నియమం ఎక్కడ కూర్చుంటుంది అని చూడండి, ఎందుకంటే క్రమమే ఫలితాన్ని నిర్ణయిస్తుంది.
nft list ruleset
nft -c -f /etc/nftables.confజాబితా గొలుసులు, నియమాలు మరియు హ్యాండిల్లను చూపుతుంది, తనిఖీ మోడ్ అభ్యర్థి ఫైల్ను లోడ్ చేయకుండా ధృవీకరిస్తుంది. అదే ప్రవాహానికి మునుపటి ఆమోదం తర్వాత పెట్టిన టన్నెల్-మాత్ర అనుమతి ఏమీ మార్చదు, ఎందుకంటే మొదట సరిపోలే నియమమే గెలుస్తుంది. అందుకే ఆలస్యంగా వచ్చిన నియమం సరైనదిగా కనిపించవచ్చు కానీ ఎలాంటి ప్రభావం ఉండదు. గొలుసును క్రమంగా చదివి, క్లయింట్ నుండి అప్లింక్ వైపు ట్రాఫిక్ నిషేధం ఇంకా ఏదైనా విస్తృత దానికంటే ముందే ఉందని నిర్ధారించుకోండి.
మార్గాలు, అనువాదం మరియు ప్రవాహాలకు వేరే యజమానులున్నారు
ఇంటర్ఫేస్ ఉనికి మార్గాలను సృష్టించదు, సహచరుడిని ప్రామాణీకరించదు. అవి VPN నిర్వాహకుడికి చెందుతాయి, అనువాదానికి మూడో జీవన చక్రం ఉంది.
conntrack -L -s 10.20.0.0/24 | head
ip route show dev vpn0conntrack జాబితా ఉన్న ప్రవాహాలను వాటి అసలు మరియు అనువదించిన విలువలతో చూపుతుంది, మార్గాల జాబితా నిర్వాహకుడు ఇంటర్ఫేస్ కోసం ఏమి ఇన్స్టాల్ చేశాడో చూపుతుంది. NAT నియమాలు మొదటి ప్యాకెట్ వద్దే కనెక్షన్-ట్రాకింగ్ స్థితిని ఏర్పాటు చేస్తాయి, కాబట్టి స్థిరపడిన ప్రవాహం నియమం మారిన తర్వాత కూడా తన అనువాదాన్ని నిలుపుకుంటుంది. అందుకే నియమం నవీకరించబడటం మరియు కొత్త మార్గాన్ని ఉపయోగించే ప్రవాహం రెండు వేర్వేరు ప్రకటనలు. ఏ సెషన్లు తిరిగి కనెక్ట్ కావాలో నిర్ణయించి, సంబంధం లేని ప్రవాహాలను వదిలేయండి.
చల్లని ప్రారంభం, నష్టం మరియు పునరుద్ధరణను అంగీకరించండి
బూట్ సమయంలో టన్నెల్ లేనప్పుడు, తర్వాత అది ఉన్నప్పుడు, తర్వాత విచ్ఛిత్తి మరియు తిరిగి రావడం తర్వాత గేట్వేను పరీక్షించండి. టన్నెల్ లేనప్పుడు నిషేధిత ఫార్వార్డింగ్ నిషేధితంగానే ఉంటుంది, సహచరుడు ప్రామాణీకరించబడిన తర్వాత కొత్త అనుమతించిన ప్రవాహం పనిచేస్తుంది, పునరుద్ధరణకు సంబంధం లేని స్థితిని ఖాళీ చేయాల్సిన అవసరం లేదు అని నిర్ధారించుకోండి. ఒక ప్రొఫైల్ ఆపే చర్యగా మొత్తం POSTROUTING గొలుసును లేదా ప్రతి conntrack ఎంట్రీని తొలగించవద్దు, ఎందుకంటే ఇతర సేవలు వాటిని పంచుకుంటాయి. స్టార్ట్ హుక్ సున్నాతో బయటపడింది అని మాత్రమే కాదు, ఏ భాగం ఇంటర్ఫేస్, మార్గం మరియు విధానాన్ని మార్చిందో కూడా నమోదు చేయండి.
తిరిగి కనెక్ట్ అవ్వడాన్ని తట్టుకునే విధానం అంటే యజమానులు పేర్కొనబడినది మరియు టన్నెల్ కిందా పైనా ఉన్నప్పుడు నియమాలు పరీక్షించబడినది. విజయాన్ని నివేదించే హుక్ హుక్ నడిచిందని మాత్రమే నిరూపిస్తుంది.