એક જ લીટીથી અલગ પડતી બે પ્રોફાઇલ એ જ હોસ્ટ પર બીજો ક્લાયન્ટ શરૂ થાય તે ક્ષણે જ અલગ રીતે વર્તે છે. એક nobind ધરાવે છે અને કર્નલ જે પણ સ્થાનિક પોર્ટ આપે તે લે છે; બીજી 1194 આરક્ષિત કરે છે, અને બીજું ઇન્સ્ટન્સ પહેલેથી વપરાયેલા સરનામા સાથે મૃત્યુ પામે છે. તે લીટી નક્કી કરે છે કે સ્રોત પોર્ટ કોણ પસંદ કરે છે, જે વળી નક્કી કરે છે કે પ્રોફાઇલ મશીન પર બીજું કંઈ પણ સાથે રહી શકે છે કે નહીં. ત્રણ પ્રશ્નો આ નક્કી કરે છે, અને પહેલો પ્રશ્ન બીજા બે સુધી પહોંચતા પહેલા મોટા ભાગની પ્રોફાઇલોનો જવાબ આપે છે.

nobind ખરેખર શું છોડી દે છે

ડિફૉલ્ટ રૂપે ક્લાયન્ટ જોડાતા પહેલા સ્થાનિક સોકેટ બાંધે છે, અને પ્રોફાઇલ બીજું ન કહે તો સ્થાનિક પોર્ટ 1194 હોય છે. nobind તે આરક્ષણ દૂર કરે છે, તેથી જોડાણ સમયે સ્ટેક વપરાયેલ ન હોય એવો પોર્ટ ફાળવે છે. તે ડિફૉલ્ટ નહીં, પણ અપવાદ છે, અને લીટી વગરનો ક્લાયન્ટ 1194 રાખે છે, તેથી જ પિન ન કરેલું બીજું ઇન્સ્ટન્સ અથડાય છે. મોટા ભાગની વિતરિત ક્લાયન્ટ પ્રોફાઇલો તે કારણે જ આ સૂચના ધરાવે છે, અને નમૂના ફાઇલ કંઈક કરે એ એવું નથી કે મેકેનિઝમ ડિફૉલ્ટ રૂપે એ કરે.

જે બદલાતું નથી તે દૂરની બાજુ છે. સર્વર હજી પણ ત્યાં જ સાંભળે છે જ્યાં પ્રોફાઇલ કહે છે કે તે સાંભળે છે, અને રૂપરેખામાંનો ગંતવ્ય પોર્ટ હજી પણ ગંતવ્ય પોર્ટ છે. ગતિશીલ સ્રોત પોર્ટ તમારા પોતાના સોકેટનું પરત સરનામું બદલે છે અને સર્વરના સોકેટનું કંઈ નહીં.

તે કંઈ છુપાવતું પણ નથી. તમારું જાહેર સરનામું એ છે જેમાં માર્ગ તેને અનુવાદિત કરે છે, પેકેટ હજી પણ સ્થાનિક નેટવર્ક પાર કરે છે, અને જે તે નેટવર્ક ચલાવે છે તે હજી પણ પ્રવાહ જુએ છે. nobind ન તો ગોપનીયતાનું લક્ષણ છે ન તો ફાયરવૉલની આસપાસનો માર્ગ.

ત્રણ શરતો જે આ નક્કી કરે છે

એક પ્રશ્ન બીજા બે નક્કી કરે છે, તેથી કંઈ પણ સંપાદિત કરતા પહેલા તેનો જવાબ આપો. જો સાથી બહાર જોડાય છે, તો બાકીના પ્રશ્નો પહેલેથી લીધેલા નિર્ણયને જ વધુ ચોક્કસ કરે છે. જો તે અંદર આવતા જોડાણો સ્વીકારે છે, તો સ્થાનિક પોર્ટનું કોઈ પણ ગોઠવણ તેને પહોંચી શકાય તેવું કરતું નથી.

શું આ સાથી જોડાણ શરૂ કરે છે? જો તે બહાર જોડાય છે, તો ગતિશીલ સ્રોત પોર્ટ હાનિકારક નથી અને સામાન્ય રીતે વધુ સારું છે, કારણ કે જવાબ એ જ પ્રવાહમાં પાછો આવે છે. જો તે અંદર આવતા જોડાણોની રાહ જુએ છે, તો ગતિશીલ પોર્ટ તેને પહોંચાતી બહાર કરે છે, સિવાય કે આગળ કંઈક પોર્ટ પ્રકાશિત કરે. તે એક જ જવાબ દરેક ક્લાયન્ટ પ્રોફાઇલને દરેક સર્વર પ્રોફાઇલથી અલગ પાડે છે.

શું માર્ગ સ્રોત પોર્ટ પર ફિલ્ટર કરે છે? એક જાણીતા પોર્ટ માટે લખાયેલો કડક નિયમ સ્પષ્ટ સ્થાનિક પોર્ટ ફરજિયાત કરે છે, અને પ્રોફાઇલે નોંધવું જોઈએ કે તે કયો નિયમ પૂરો કરે છે. મોટા ભાગનાં નેટવર્ક ફક્ત ગંતવ્ય પર ફિલ્ટર કરે છે, તેથી આ શરત પહેલી કરતાં વધુ દુર્લભ છે. જ્યાં તે લાગુ પડે છે, ત્યાં તે ગતિશીલ પોર્ટની પસંદગીને બાજુ પર રાખે છે.

શું ઘણાં ઇન્સ્ટન્સ હોસ્ટ વહેંચે છે? એક નિશ્ચિત પોર્ટ તેમાંથી બેને સેવા આપી શકતું નથી, અને ફરી શરૂ થયેલું ઇન્સ્ટન્સ 1194 હજી બંધ થવાની સ્થિતિમાં જોઈ શકે છે. ગતિશીલ પોર્ટ બીજું કંઈ બદલ્યા વગર તે સંઘર્ષ દૂર કરે છે. જો તમે આનો આત્મવિશ્વાસથી જવાબ આપી શકતા નથી, તો હા ધારી લો અને કર્નલને પસંદ કરવા દો.

જ્યાં પિન કરેલો પોર્ટ સાચો જવાબ છે

કેટલાંક નેટવર્ક ગંતવ્યની સાથે સ્રોત પોર્ટ પર પણ ફિલ્ટર કરે છે, તેથી ઓપરેટરે એવો નિયમ લખ્યો હોઈ શકે જે ફક્ત એક જાણીતા પોર્ટનો ટ્રાફિક પસાર કરે. ત્યારે સ્થાનિક પોર્ટ પિન કરવો સાચો છે, અને પ્રોફાઇલે એ નિયમનું નામ આપતી ટિપ્પણી ધરાવવી જોઈએ જે તે પૂરો કરે છે. સર્વર પોર્ટ સાથે સમપ્રમાણતા માટે પિન કરવું કારણ નથી, કારણ કે બે સંખ્યાઓનો એકબીજા સાથે કોઈ સંબંધ નથી. જો પિન ફક્ત એટલા માટે હોય કે ટેમ્પલેટમાં તે હતું, તો તેને કાઢી નાખો.

અન્યથા પિન કરેલો પોર્ટ મુશ્કેલી ખરીદે છે: એક જ મશીન પરના બે ક્લાયન્ટ બંને 1194 રાખી શકતા નથી, અને બીજો ભૂલ સાથે નિષ્ફળ જાય છે જે પ્રોફાઇલને નહીં, પોર્ટને ઇશારો કરે છે. ઝડપથી ફરી શરૂ થતું કન્ટેનર એ જ દીવાલ સાથે અથડાય છે. સમારકામ એ સૂચના છે જે વિતરિત પ્રોફાઇલોમાં પહેલેથી હતી.

સર્વર અને ક્લાયન્ટ સમપ્રમાણ નથી

OpenVPN 2.6 માર્ગદર્શિકા ને nobind ની બાજુમાં lport મૂકે છે, જે એક લીટીમાં દલીલ છે: એક વિકલ્પ કહે છે કે કર્નલ પસંદ કરે છે, બીજો કહે છે કે તમે પસંદ કરો છો. ગતિશીલ સ્થાનિક પોર્ટ ફક્ત તે સાથી માટે કામ કરે છે જે બહાર જોડાય છે, કારણ કે જવાબ આપતી બાજુ પોર્ટ અગાઉથી જાણી શકતી નથી. તેથી ક્લાયન્ટ પ્રોફાઇલને સર્વર પર કૉપિ કરવાથી એવો શ્રોતા બને છે જ્યાં કોઈ પહોંચી શકતું નથી.

ઘણાં નેટવર્ક ઇન્ટરફેસ ધરાવતા હોસ્ટ પર સરનામું પોર્ટથી અલગ નિર્ણય છે. ચોક્કસ સ્થાનિક સરનામું બાંધવું અને ચોક્કસ પોર્ટ બાંધવો બે અલગ સેટિંગ્સ છે, અને બે અપલિંક ધરાવતું સર્વર સામાન્ય રીતે બંને પિન કરે છે. જે ક્લાયન્ટ બંને પિન કરે છે તેણે કોઈ લાભ વગર એ જ કઠોરતા સ્વીકારી લીધી છે.

સારાંશ ભૂમિકાઓ વિશે છે, સુરક્ષા વિશે નહીં: જે બહાર જોડાય છે તે પોતાના સ્રોત વિશે લવચીક હોઈ શકે છે, અને જે જવાબ આપે છે તે નહીં. બંનેમાંથી કોઈ પસંદગી બીજી બાજુ તમારી ઓળખ વિશે શું શીખે છે તે બદલતી નથી. તેથી જ આ સૂચના ક્લાયન્ટ નમૂનાઓમાં દેખાય છે અને સર્વર નમૂનાઓમાં લગભગ ક્યારેય નહીં.

કર્નલે પસંદ કરેલો પોર્ટ ચકાસો

જોડાણ પછી રૂપરેખા નહીં, સોકેટ વાંચો, કારણ કે રૂપરેખા આશય કહે છે અને સોકેટ શું થયું તે કહે છે. નોંધવા લાયક હકીકતો સ્થાનિક પોર્ટ, દૂરનું અંતિમ બિંદુ અને કંઈ હજી સાંભળે છે કે નહીં તે છે. Linux હોસ્ટ પર ત્રણેય એક આદેશના અંતરે છે.

ss -unp | grep openvpn
ss -lunp | grep openvpn
sudo lsof -nP -i | grep openvpn

ક્લાયન્ટ nobind સાથે ઊંચો સ્થાનિક પોર્ટ અને ગોઠવેલો દૂરનો પોર્ટ દર્શાવે છે, જે અપેક્ષિત આકાર છે. સર્વર પોતાના ગોઠવેલા પોર્ટ પર સાંભળતું સોકેટ દર્શાવે છે, અને જો તે સોકેટ ન હોય તો પ્રોફાઇલ કાં તો શ્રોતા નથી અથવા બાંધી શક્યું નથી. જ્યારે પ્રવાહ હોય પણ પેકેટ પાછાં ન આવે, ત્યારે પ્રોફાઇલ સંપાદિત કરતા પહેલા પસંદ કરેલા સ્રોત પોર્ટની માર્ગ પરના કોઈ પણ પોર્ટ ફિલ્ટર સાથે સરખામણી કરો. એક વસ્તુ બદલો, ફરી જોડાઓ અને સોકેટ ફરી વાંચો.

સંબંધિત લેખો