VPN ફાયરવોલ હૂક એક જ નિયમ બે વાર કેમ ઉમેરે છે
રીકનેક્ટ તમારા હૂકને ફરી ચલાવી શકે છે, તેથી ઇચ્છિત સ્થિતિ માટે ડિઝાઇન કરો: પોતાની ચેઇન, દાખલ કરતા પહેલા પરીક્ષણ, એક ક્રમિક ફેરફાર અને સાંકડું વિસર્જન.
હૂક પહેલી વાર કામ કરે છે, અને ત્રણ રીકનેક્ટ પછી ચેઇનમાં એક જ નિયમની ત્રણ નકલો હોય છે. કંઈ પણ મોટેથી નિષ્ફળ ન ગયું; સ્ક્રિપ્ટ દર વખતે ચાલે ત્યારે જે કહેવામાં આવ્યું તે જ કરતું હતું. VPN હૂક એ એક રૂપરેખાંકન કામગીરી છે જે એક કરતાં વધુ વાર ચાલી શકે છે, તેથી તેને માલિક, ઇચ્છિત સ્થિતિ અને ક્રમિક ફેરફારની જરૂર છે. તે ક્રમમાં આગળ વધો, અને નકલો બંધ થઈ જશે.
કોઈ પણ નિયમ લખતા પહેલા નિયમોને માલિક આપો
એક પણ નિયમ લખતા પહેલા નક્કી કરો કે આ એકીકરણ કઈ ચેઇન કે ટેબલનું માલિક છે. હૂક જે સમર્પિત ચેઇન બનાવે અને ખાલી કરે તે માલિકીનું સૌથી સ્પષ્ટ સ્વરૂપ છે, કારણ કે સફાઈ પછી બીજા કોઈની નીતિને અડ્યા વિના તે ચેઇન દૂર કરી શકે છે. જો તમારે શેર કરેલી ચેઇનમાં નિયમો ઉમેરવા પડે, તો તેમને ટિપ્પણીથી ચિહ્નિત કરો જેથી પછીની શોધ બરાબર તમારા જ શોધી શકે. માલિકી જ વિસર્જનને સુરક્ષિત બનાવે છે, અને વિસર્જન એ ભાગ છે જે શાંતિથી નિષ્ફળ જાય છે.
iptables -N VPN_HOOK 2>/dev/null || true
iptables -C INPUT -j VPN_HOOK 2>/dev/null || iptables -I INPUT -j VPN_HOOK
iptables -S VPN_HOOK
અહીં ટિપ્પણી સજાવટ નથી. તે તમારો નિયમ દૂર કરવા અને અકસ્માતે મળતો આવતો નિયમ દૂર કરવા વચ્ચેનો ફરક છે, અને તે સાચવેલા નિયમસેટમાં ટકી રહે છે. ટિપ્પણી એક વાર ચલમાં લખો અને ઉમેરે, પરીક્ષણ કરે કે કાઢી નાખે તેવા દરેક આદેશમાં એ જ શબ્દમાળા વાપરો.
ફરી ઉમેરવાને બદલે ઇચ્છિત સ્થિતિનું પરીક્ષણ કરો
ટનલ ઉપર હોય ત્યારે શું હોવું જોઈએ તે લખો: કઈ ઇન્ટરફેસ, કયો સ્રોત અને ગંતવ્ય, કયો પ્રોટોકોલ અને કયો પોર્ટ. પછી દરેક નિયમને પરીક્ષણ અને પછી દાખલ કરવા તરીકે વ્યક્ત કરો, જેથી બીજી વાર ચાલે ત્યારે નિયમ મળે અને કંઈ ન કરે. નિયમ હાજર હોય ત્યારે ચેક આદેશ શૂન્ય સાથે પૂરો થાય છે, અને સ્ક્રિપ્ટને બરાબર એ જ સંકેતની જરૂર છે. iptables સંદર્ભ અહીં વપરાયેલા ચેક, ઉમેરણ અને દાખલ કરવાના સ્વરૂપોનું દસ્તાવેજીકરણ કરે છે.
iptables -C VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT ||
iptables -A VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT
સ્થાન અંગે સાવધ રહો. નિયમ તપાસીને શરૂઆતમાં દાખલ કરવાથી પહેલા આવતી જાણી જોઈને કરેલી ના પાડવાની પહેલાં પરવાનગી ખસી શકે છે, તેથી બીજી વાર ચાલે ત્યારે કંઈ ઉમેર્યા વિના પણ વર્તન બદલાય છે. તમારી પોતાની ચેઇનમાં અંતે ઉમેરો, અને તે ચેઇનમાં કૂદકો ક્યાં છે તેનાથી ક્રમ નિયંત્રિત કરો. જો ચેઇનની અંદર ક્રમ મહત્વનો હોય, તો નિયમ-દર-નિયમ પેચ કરવાને બદલે જાણીતી યાદીમાંથી ચેઇન ફરીથી બનાવો.
જો જરૂરી નિયમ સ્થિર પરીક્ષણ તરીકે વ્યક્ત કરી શકાતો ન હોય તો થોભો. એનો સામાન્ય અર્થ એ છે કે ઇચ્છિત સ્થિતિ હજુ અસ્પષ્ટ છે.
ટકી રહેશે એવી આશા રાખવાને બદલે ફેરફારને ક્રમિક કરો
હૂકના બે આહ્વાનો ઓવરલેપ થઈ શકે છે, અને બંને કોઈ ઉમેરે તે પહેલાં ગેરહાજર નિયમ જોઈ શકે છે. xtablesનો પ્રતીક્ષા વિકલ્પ આદેશને લોકની રાહ જોવડાવે છે, પણ બે આદેશોમાં તપાસ-પછી-ઉમેર ક્રમને પરમાણુ બનાવતો નથી. આખી કામગીરીને તમારા પોતાના લોકથી ક્રમિક કરો, અથવા એવા મેનેજરનો ઉપયોગ કરો જે જાહેર કરેલી બેચને એક વ્યવહાર તરીકે લાગુ કરે. nftables પછીનું કરી શકે છે, અને જ્યાં તે ઉપલબ્ધ હોય ત્યાં તેને પ્રાધાન્ય આપવાનું એ એક કારણ છે.
flock /run/vpn-hook.lock /usr/local/sbin/vpn-firewall-apply
nft -f /etc/nftables/vpn-hook.nft
તમે કોઈ પણ પદ્ધતિ પસંદ કરો, નિર્ણાયક વિભાગ ટૂંકો રાખો અને તેને ફરી પ્રવેશયોગ્ય બનાવો: અડધે રસ્તે નિષ્ફળ જતો હૂક ફરી ચલાવવા માટે સુરક્ષિત હોવો જોઈએ. પરિણામ લોગ કરો જેથી વારંવાર ચાલવું જર્નલમાં દેખાય, નિયમની ગણતરીથી અનુમાન ન કરવું પડે. જો બે અલગ સુપરવાઇઝર હૂકને બોલાવી શકે, તો પહેલા એ સુધારો; કોઈ લોક બે માલિકોને સુધારતું નથી.
ફક્ત તમારું હોય તે જ વિસર્જિત કરો
વિસર્જનને રિપ્લેસમેન્ટ કનેક્શનને તેણે નિવૃત્ત કરેલા કનેક્શનથી અલગ પાડવું જોઈએ, અને એવી ઘટનાનો સામનો કરવો જોઈએ જેને કદી સુઘડ સફાઈ મળતી નથી. જે ઓળખકર્તાઓ વડે ઉમેર્યું હતું તે જ વડે ડિલીટ કરો, અને સફાઈ સરળ કરવા માટે કદી શેર કરેલી ચેઇન ખાલી ન કરો. સખત સ્ટોપ પછી, ડાઉન હૂક ચાલ્યો હોવાનું ધારવાને બદલે આગલી શરૂઆતમાં સમાધાન પાસ ચલાવો.
iptables -D VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT
iptables -F VPN_HOOK
ip -brief link show type tun
ઇન્ટરફેસનું આયુષ્ય પણ ડિઝાઇનનો ભાગ છે. રીકનેક્ટ અલગ નામવાળું ઉપકરણ બનાવી શકે છે, તેથી બીજી ટનલનું નામ હાર્ડકોડ કરતો નિયમ માન્ય દેખાતો હોવા છતાં જૂનો થઈ જાય છે. કનેક્શન પોતે જે ઓળખ દર્શાવે તેને પ્રાધાન્ય આપો, અને દર વખતે ચલાવો ત્યારે તે ફરી વાંચો. ત્રણ ઘટનાઓ અલગ અલગ ચકાસો: પુનરાવર્તિત કનેક્શન, રિપ્લેસમેન્ટ કનેક્શન અને શટડાઉન. મંજૂર ટ્રાફિક ત્રણેયને નકલ વિના પાર કરવો જોઈએ, અને અસંબંધિત સેવાઓ અકબંધ રહેવી જોઈએ.
જ્યારે હૂક પાસે માલિક, તે ઉમેરે તે દરેક નિયમ માટે પરીક્ષણ, એક ક્રમિક માર્ગ અને ફક્ત પોતાની સ્થિતિ દૂર કરતું વિસર્જન હોય ત્યારે આ ચાલ પૂરી થાય છે. બે વાર ચલાવવા સુરક્ષિત હૂક એક વાર હોશિયાર હૂક કરતાં વધુ કિંમતી છે.