ESP એ IP પ્રોટોકોલ 50 છે, TCP પોર્ટ 50 નહીં: શું મંજૂર કરવું
પ્રોટોકોલ નંબર અને પોર્ટ નંબર અલગ નામસ્પેસ છે. TCP પોર્ટ 50 માટેનો નિયમ કંઈપણ મંજૂર કરતો નથી, અને NAT ટ્રાવર્સલ ESP ને UDP 4500 માં ખસેડે છે.
ફાયરવોલ ફોર્મ TCP પોર્ટ માંગે છે, અને સ્પષ્ટ એન્ટ્રી 50 છે. તે એન્ટ્રી કંઈપણ મંજૂર કરતી નથી, કારણ કે ESP એ IP પ્રોટોકોલ નંબર 50 છે અને પ્રોટોકોલ નંબર પોર્ટ નથી. બંને નામસ્પેસ ફક્ત નાના પૂર્ણાંકો વહેંચે છે અને બીજું કંઈ નહીં, અને ભૂલ ત્યાં સુધી અદૃશ્ય રહે છે જ્યાં સુધી IKE પૂરું ન થાય અને સુરક્ષિત ટ્રાફિક ક્યારેય ન પહોંચે.
નાના આંકડા વહેંચતા બે નામસ્પેસ
IP હેડરમાં પ્રોટોકોલ ફીલ્ડ હોય છે જે આગળ શું આવે છે તેનું નામ આપે છે: TCP માટે 6, UDP માટે 17, ICMP માટે 1, ESP માટે 50, AH માટે 51. TCP અથવા UDP હેડરમાં પોર્ટ નંબર હોય છે, જે ગંતવ્ય હોસ્ટ પર પ્રક્રિયા પસંદ કરે છે. પ્રોટોકોલ 50 અને TCP પોર્ટ 50 અસંબંધિત મૂલ્યો છે, પણ સંવાદ બોક્સ તેમને અદલાબદલી કરી શકાય તેવા દેખાડી શકે છે.
તેથી પોર્ટ ફોરવર્ડિંગ નિયમ સ્વદેશી ESP વ્યક્ત કરી શકતો નથી. ફોરવર્ડ કરવા માટે કોઈ ESP ગંતવ્ય પોર્ટ નથી, અને ફક્ત પોર્ટ નિયમો સમજતા ઉપકરણ પાસે તે પેકેટ માટે કોઈ શબ્દભંડોળ જ નથી. સાચો નિયમ તેના બદલે IP પ્રોટોકોલનું નામ આપે છે. કોઈપણ પોર્ટ સંવાદ તે પેકેટ માટે ખોટું સાધન છે.
ગૂંચવણનો બીજો અડધો ભાગ છે. જ્યારે પેકેટ એન્ક્રિપ્ટેડ હોય છે, ત્યારે તેની અંદરનું બધું અસ્પષ્ટ હોય છે, જેમાં મૂળ કનેક્શનનું TCP હેડર પણ સામેલ છે. તે પેકેટ પર પોર્ટ તપાસતી ફાયરવોલ બહારના હેડરને જુએ છે, જેમાં સ્વદેશી કિસ્સામાં તપાસવા માટે કોઈ પોર્ટ હોતો નથી.
સ્વદેશી ESP, પછી એન્કેપ્સ્યુલેટેડ વિકલ્પ
સ્વદેશી ESP સીધો IP પ્રોટોકોલ તરીકે વહન થાય છે, જે સમાન રીતે કાર્યક્ષમ અને અગવડભર્યું છે. તે કાર્યક્ષમ છે કારણ કે વધારાનું હેડર નથી, અને અગવડભર્યું છે કારણ કે સરનામાં અને પોર્ટનું ભાષાંતર કરતું કોઈપણ ઉપકરણ તેને ટ્રેક કરી શકતું નથી. NAT ટ્રાવર્સલ આ જ ઉકેલવા માટે છે: ESP પેકેટને UDP ની અંદર લપેટીને, જેથી અનુવાદક પાસે ફરીથી લખવા માટે પોર્ટ હોય.
| Form on the wire | How it is identified | What the firewall must permit |
|---|---|---|
| IKE negotiation | UDP with a destination port | UDP 500, and 4500 once traversal is detected |
| Native ESP | IP protocol 50 in the outer header | The protocol itself, with no port to name |
| ESP inside UDP | UDP 4500 carrying an ESP payload | The UDP port pair, which translation devices can track |
બંને સ્વરૂપો એક જ ડેટા ચેનલની વૈકલ્પિક જમાવટ છે, એકનાં સ્તરો નથી. સ્વદેશી ESP મંજૂર કરવાથી એન્કેપ્સ્યુલેટેડ સ્વરૂપ મંજૂર થતું નથી, અને UDP 4500 મંજૂર કરવાથી સ્વદેશી ટ્રાફિક મંજૂર થતો નથી, તેથી નિયમ સમૂહ જમાવટ સાથે મેળ ખાવો જોઈએ, આકસ્મિક રીતે બંનેને આવરી લેવા નહીં.
શોધ અહીં પણ મહત્વપૂર્ણ છે. અંતિમ બિંદુઓ વાટાઘાટ દરમિયાન સ્વરૂપો વચ્ચે નિર્ણય લે છે, અને સ્વિચ સામાન્ય રીતે ત્યારે થાય છે જ્યારે તેમની વચ્ચે NAT શોધાય છે. તેથી ટનલ સ્થપાયા પછી બદલાતો માર્ગ ટ્રાફિકને એવા નામસ્પેસમાં ખસેડી શકે છે જે તમારા નિયમોએ ક્યારેય આવર્યું ન હતું.
કનેક્શન ખરેખર કયું સ્વરૂપ વાપરે છે તે વાંચો
ફાયરવોલ પરથી અનુમાન કરવાને બદલે અંતિમ બિંદુને પૂછો. Linux માં સ્થિતિ એન્ટ્રી જણાવે છે કે સંગઠન UDP એન્કેપ્સ્યુલેશન વાપરે છે કે નહીં અને કયા પોર્ટ સંડોવાયેલા છે. પેકેટ કેપ્ચર તારમાંથી એ જ પ્રશ્નનો જવાબ આપે છે, અને બંને નિયમ સમૂહ વાંચીને આશા રાખવા કરતાં ઝડપી છે.
ip xfrm state | grep -A3 encap
tcpdump -ni any 'ip proto 50 or udp port 4500'
પ્રથમ આદેશ NAT ટ્રાવર્સલ વપરાય ત્યારે એન્કેપ્સ્યુલેશન પ્રકાર દેખાડે છે અને ન વપરાય ત્યારે કંઈ નહીં. બીજો દેખાડે છે કે બેમાંથી કયું સ્વરૂપ ખરેખર ઇન્ટરફેસ પાર કરે છે, અને તે કાગળ પર સાચું દેખાતા રૂપરેખાંકન વિશેની દલીલો પૂરી કરે છે.
વિરોધી પુરાવો એ જ પગલાનો ભાગ છે. શૂન્ય મેળ બતાવતો નિયમ તમને કહે છે કે પેકેટ ક્યારેય તેની સુધી પહોંચ્યું નહીં, અને તે ફાયરવોલનો નહીં, રૂટિંગ કે સિલેક્ટરનો પ્રશ્ન છે.
પછી નિયંત્રણ ચેનલ અલગથી પુષ્ટિ કરો. IKE પાસે પોતાના પોર્ટ અને પોતાના લોગ છે, અને ડેટા વગર પૂરી થયેલી વાટાઘાટ એ જ વિભાજન છે જેના વિશે આ લેખ છે.
નિયમ સાચા નામસ્પેસમાં લખો
પ્રોટોકોલ નિયમ અને પોર્ટ નિયમ અલગ સૂચનાઓ છે, તેથી સાધનને તમે જે ઇચ્છો તે વ્યક્ત કરવું જોઈએ. nftables માં પ્રોટોકોલ મેળ સ્પષ્ટ છે, અને એન્કેપ્સ્યુલેટેડ વિકલ્પને પોતાનો UDP નિયમ મળે છે. બંને નિયમોને એકબીજાની બાજુમાં રાખો જેથી સમીક્ષામાં જોડી દેખાય.
nft add rule inet filter input ip protocol esp accept
nft add rule inet filter input udp dport { 500, 4500 } accept
ખોટા નિદાનની ભરપાઈ માટે કોઈપણ નિયમને પહોળો કરવાના લોભનો પ્રતિકાર કરો. દરેક ઇન્ટરફેસ પર ESP પ્રોટોકોલ માટે બધું મંજૂર કરવું, અથવા ગમે ત્યાંથી ગમે ત્યાં UDP મંજૂરી, લક્ષણ સુધારે છે અને તમે ગોઠવવા માગતું નિયંત્રણ દૂર કરે છે. સ્વરૂપ જાણી લીધા પછી સાંકડો સમર્થિત પ્રવાહ લગભગ હંમેશા પૂરતો હોય છે.
અંતે, ટનલ કામ કરે છે અને એપ્લિકેશન નથી કરતું ત્યારે સ્તરો સીધાં રાખો. ગેટવે પર પહોંચતા પેકેટને હજી ફોરવર્ડિંગ, પરત માર્ગ અને તેમને સ્વીકારતી નીતિની જરૂર છે, અને તેમાંથી કંઈપણ ESP નિયમ વ્યક્ત કરતો નથી. ખૂટતો પોર્ટ ચોક્કસ નિષ્ફળતા સમજાવે છે, દરેક IPsec નિષ્ફળતા નહીં. નિયમ સુધારણા અને રૂટિંગ તપાસને બે અલગ તારણો તરીકે રાખો.
તમે જોયેલું સ્વરૂપ, ઉમેરેલો પ્રોટોકોલ નિયમ અને પછી જોયેલો કાઉન્ટર નોંધો. ત્રણ લીટીઓ, અને આગલી વ્યક્તિ એક બપોરને બદલે એક મિનિટમાં નામસ્પેસની ભૂલને રૂટિંગની ભૂલથી અલગ પાડી શકે.