OpenConnect කැඩුණු VPN එකක් නැවත උත්සාහ කළ යුත්තේ කොපමණ කාලයක් ද?
OpenConnect හි නැවත සම්බන්ධ වීමේ කාල සීමාව සම්බන්ධතාවය බිඳුණු පසු හෝ මළ සහකරුවෙකු පසු නැවත උත්සාහ කිරීම් සීමා කරයි. මෙය ක්රියාවලි අධීක්ෂණයක්, අක්තපත්ර අලුත් කිරීමක් හෝ රථවාහන අවහිර කිරීමක් නොවේ.
--reconnect-timeout පටු ප්රශ්නයකට පිළිතුරු දෙයි: උමග වැටුණු පසු මෙම සේවාදායක ක්රියාවලිය අත්හැරීමට පෙර කොපමණ කාලයක් උත්සාහ කරයි ද. OpenConnect අත්පොත පිටුව එම විකල්පය නැතිවූ සම්බන්ධතාවයක් හෝ පිළිතුරු දීම නැවැත්වූ සහකරුවෙකු පසු නැවත උත්සාහ සඳහා 300 තත්පරයක ලේඛනගත පෙරනිමිය සමඟ සටහන් කරයි, මෙම සංඛ්යාව එක් ධාවනය වන සේවාදායකයකට අවසන් දිනයක් මිස VPN ප්රවේශ විය හැකිව පවතින බවට සාක්ෂියක් නොවේ. එය ක්රියාවලිය ජීවමානව තබා ගැනීමේ ප්රතිපත්තියක් ද නොවේ, ව්යාකූලත්වයේ වැඩි කොටස ආරම්භ වන්නේ එතැනිනි.
උඩින් දෙවන යාන්ත්රණයක් වාඩි වූ විට ව්යාකූලත්වය වැඩි වේ. සේවාදායකය නැවත ආරම්භ කරන අධීක්ෂකය, ගේට්වේ එකට පිංග් කරන පරීක්ෂකය සහ ගොඩනඟා ඇති නැවත උත්සාහ කවුළුව — මේ සියල්ලට එක් අසාර්ථකත්වයකට ප්රතිචාර දැක්විය හැක, පසුව සිද්ධිය කිසිවෙකුට සමගාමී කළ නොහැකි කාලරේඛා තුනක් ලබා දෙයි.
නැවත සම්බන්ධ වීමේ කවුළුව සැබවින්ම සීමා කරන්නේ කුමක් ද
ප්රවේශ ජාලය තත්පර කිහිපයකට අතුරුදහන් වේ යැයි සිතන්න. සේවාදායකය සම්බන්ධතාවය බිඳෙනු දකී, නැතහොත් මළ සහකරුගේ පිළිතුරු ඇසීම නවත්වයි, සහ හැකි තරම් තත්ත්වය රඳවාගෙන සැසිය නැවත ස්ථාපිත කිරීම ආරම්භ කරයි. උත්සාහ ගේට්වේ නැවත පිළිගන්නා තෙක් හෝ කවුළුව අවසන් වන තෙක් පවතී, අවසන් වූ කවුළුවක් ශුන්ය නොවන පිටවීමකින් අවසන් වේ. එම පිටවීම, කාල සීමාවේ අගය නොව, ජීවන චක්රයේ හිමිකාරිත්වය ක්රියාවලිය අධීක්ෂණය කරන අයට මාරු වන ස්ථානයයි.
කවුළුව පරීක්ෂකය කොපමණ වාරයක් ධාවනය වේ ද යන්න ගැන කිසිවක් නොකියයි, එය සත්යාපනය දිගු කළ නොහැක. ගේට්වේ සැසිය අවලංගු කර ඇත්නම්, නැතහොත් ගිණුම දැන් නව දෙවන සාධකයක් ඉල්ලා සිටින්නේ නම්, වැඩි වේලාවක් රැඳී සිටීම පැරණි සැසිය නැවත වලංගු නොකරයි. නැවත උත්සාහයක් සාර්ථක වන්නේ මාර්ගය ආපසු පැමිණ, ගේට්වේ තවමත් සැසිය හඳුනාගෙන, ඉල්ලා සිටින අක්තපත්ර භාවිතයට සුදුසුව පවතින විට පමණි, එබැවින් මෙම සංඛ්යාව ජීවන කාල පරතරයක් නොව අවසන් දිනයක් ලෙස කියවන්න.
කවුළුව ධාවනය වන අතරතුර යෙදුම් කරන දේ ද එය නියාමනය නොකරයි. වේදිකාව සහ අසාර්ථකත්වය කොතෙක් දුර ගියේ ද යන්න මත, සේවාදායකය මාර්ග තවම ස්ථාපිතව ඇති විට හෝ ඒවා ඉවත් කළ පසු නැවත සම්බන්ධ විය හැක. එබැවින් බාධාවක් මැදින් නිකුත් කරන ලද ඉල්ලීමක් ඉක්මනින් අසාර්ථක වීම වෙනුවට කාල සීමාව දක්වා එල්ලී තිබේ.
අධීක්ෂක නැවත ආරම්භයන් සහ සේවාදායක නැවත උත්සාහ දෙපැටියක් වේ
ධාවනය වන සේවාදායකයට එහිම කවුළුව වියදම් කිරීමට ඉඩ දෙන්න, සේවා කළමනාකරුට පිටවීමට ප්රතිචාර දැක්වීමට ඉඩ දෙන්න. systemd යටතේ නැවත ආරම්භ කිරීමේ ප්රතිපත්තියක් සහිත පෙරමුණු සේවාදායකයක් හරියටම එම බෙදීම ලබා දෙයි: සීමිත කාලයක් සඳහා උත්සාහ, පසුව එක් නැවත ආරම්භ තීරණයක්. ප්රතිඵලය පසුව ද නැවත ගොඩනඟා ගත හැකි එක් කාලරේඛාවකි.
පසුබිම් සේවාදායකයක් සහ අතුරුමුහුණතක් නොපෙනෙන විට තවත් පිටපතක් ආරම්භ කරන ස්වාධීන පෝලරයක් — මෙයයි වැරදි යන රටාව. එවිට ක්රියාවලි දෙකම එකම උපාංග නෝඩය, මාර්ග සහ විසඳුම්කරු සැකසුම් සඳහා තරඟ කරයි. ඇත්තටම ඩීමන් අවශ්ය නම්, සේවාදායකය සැබවින්ම ආරම්භ වන විධාන පේළියේ එම විකල්පය තබන්න:
sudo openconnect --background --pid-file=/run/openconnect/vpn.pid \
--reconnect-timeout=180 \
--user=<account> https://vpn.example.eduඑම පේළියේ විස්තර දෙකකට බරක් ඇත. --background ක්රියාවලිය වෙන් කරයි, එබැවින් pid ගොනුව එය මත ඇති එකම විශ්වාසනීය අල්ලා ගැනීම බවට පත් වේ, සහ කාල සීමාව වියදම් වන්නේ එම ක්රියාවලියම ජීවමානව ඇති තාක් පමණි; එය මරා දමන අධීක්ෂකය ඉදිරියට යාමට අයවැයක් ඉතිරි නොකරයි.
හිතාමතා කරන විසන්ධි කිරීම්වලට තමන්ගේම සංඥාවක් අවශ්යයි. සැලසුම් කළ විරාමයක් සහ සැබෑ බාධාවක් නොදැනුවත් නිරීක්ෂකයෙකුට සමානව පෙනේ, දෙකම «සම්බන්ධ නැත» ලෙස කියවේ. විරාමය අධීක්ෂකයේ නැවැත්වීමේ ක්රියාවලිය හරහා හෝ ආවරණය තේරුම් ගන්නා සලකුණක් හරහා මෙහෙයවන්න, එවිට හිතාමතා නැවැත්වීම කිසිවෙකු නොඉල්ලූ නැවත ආරම්භයක් ඇති නොකරයි.
භාරදීම නැවත උත්සාහ ලූපය සමඟ තරඟ නොකිරීම
අධීක්ෂණයකින් තොර ප්රතිසාධනය පුද්ගලයෙකු නොමැතිව අලුත් වන අක්තපත්ර මත රඳා පවතී. අන්තර්ක්රියාකාරී ඩෙස්ක්ටොප් සැසියක් තුළ පමණක් විවෘත වන යතුරු මිටියක් හෝ සැමවිටම ටයිප් කළ කේතයක් ඉල්ලන ටෝකනයක් මාර්ගය ආපසු පැමිණි විට සේවාදායකය සත්යාපන අදියරේ සිර කරයි. කවුළුව දිගු කිරීමට පෙර එම කාර්ය ප්රවාහය විසඳන්න, මන්ද දිගු කවුළුවක් එම අවහිර වූ ඉල්ලීමට අසාර්ථක වීමට වැඩි කාලයක් ලබා දෙයි.
ඉල්ලීම් අඩු කිරීම සඳහා සේවාදායක සත්යාපනය ලිහිල් නොකළ යුතුය. ගේට්වේ තහවුරු කරන පින් හෝ විශ්වාස නැංගුරම විසින් ස්වයංක්රීය නැවත සම්බන්ධ වීම ආරක්ෂිත කරයි, සහ සහතික ප්රශ්නයක් මඟ හැරීමට එය අක්රීය කිරීම දෘශ්ය බාධාවක් අදෘශ්ය බාධාවක් සමඟ මාරු කරයි. සත්යාපිත අනන්යතාවය තබාගෙන ඒ වෙනුවට ඉල්ලීම අලුත්වැඩියා කරන්න; ඕනෑම ගේට්වේ එකකට සම්බන්ධ වීමට සූදානම් සේවාදායකයක් නතර වී බලා සිටින එකට වඩා නරකය.
අතුරුමුහුණතේ පැවැත්ම ද සෞඛ්ය සංඥාවක් නොවේ. උමග උපාංගයක් එහි පිටුපස මළ සැසියක් සමඟ පැවතිය හැක, සහ දියත් කිරීමේ ක්රියාවලියක් කිසිසේත් උමගක් නොමැතිව පැවතිය හැක. එම නිරීක්ෂණවලින් කිසිවක් සැබෑ ඉල්ලීමකට ඔරොත්තු දෙන්නේ නැත. සෞඛ්යය පැමිණිය යුත්තේ පරිශීලකයාට අවශ්ය දෙයින්, උදාහරණයක් ලෙස උමග හරහා දන්නා අභ්යන්තර සේවාවකට යන ඉල්ලීමකින්.
බාධාවක් අතරතුර සහ පසුව සත්යාපනය කළ යුත්තේ කුමක් ද
සිදුවීම් හතරක් වෙන වෙනම පරීක්ෂණ ලෙස ධාවනය කරන්න: කවුළුවට වඩා කෙටි බාධාවක්, එයට වඩා දිගු බාධාවක්, සත්යාපන අසාර්ථකත්වයක් සහ හිතාමතා නැවැත්වීමක්. එක් එක් අයට වෙනස්, අනාවැකි කළ හැකි තත්ත්වයකින් අවසන් විය යුතුය, සහ පළමු දෙක අතර මායිම අගයක් තෝරා ගැනීමට ඇති සම්පූර්ණ හේතුවයි.
පරීක්ෂණ පිටතට මුහුණලා තබන්න, මන්ද ක්රියාවලි වගුව තනිවම ඉතා අල්පයක් ඔප්පු කරයි. කෙටි බාධාව පුරා pid ස්ථාවරව පවතින්නේ දැයි බලන්න, පසුව දිගු එකෙන් පසු එය ගොස් ඇති බවත් එක් වරක් ප්රතිස්ථාපනය වී ඇති බවත් තහවුරු කරන්න:
curl -sS --max-time 5 -o /dev/null -w '%{http_code}\n' https://intranet.example.internal/health
cat /run/openconnect/vpn.pid
ps -o pid,etime,cmd -p "$(cat /run/openconnect/vpn.pid)"කෙටි බාධාව අතරතුර සේවාදායකය සැබවින්ම නැවත උත්සාහ කළ බවත්, කලින් පිටව නොගිය බවත්, මාර්ග සහ විසඳුම්කරු සටහන් අනුපිටපත් නොමැතිව ආපසු පැමිණි බවත් තහවුරු කරන්න. දිගු බාධාව සඳහා පිරිසිදු පිටවීමක් සහ ඊට පසු හරියටම එක් නැවත ආරම්භයක් තහවුරු කරන්න. සත්යාපන අසාර්ථකත්වය සඳහා සේවාදායකය තමා ප්රතික්ෂේප කරන ගේට්වේ එකකට එරෙහිව කැරකෙන්නේ නැති බව තහවුරු කරන්න. pid එකතු වීම වෙනුවට එක් අගයකට ආපසු පැමිණෙන බවට පරීක්ෂාවක් එක් කරන්න.
හිතාමතා නැවැත්වීම සඳහා සෞඛ්ය URL ප්රවේශ විය නොහැකිව පවතින අතර ක්රියාවලිය පහළින් පවතින්නට ඕනෑ. පසුව යෙදුමේ පැත්තෙන් ලූපය වසන්න: එම ඉල්ලීමම උමග නොමැති විට අසාර්ථක විය යුතු අතර එය ආපසු පැමිණි පසු ඔබේ ප්රතිපත්තිය අපේක්ෂා කරන මූලාශ්ර ලිපිනයෙන් සාර්ථක විය යුතුය. හරිත උමග නිරූපකය සාක්ෂියක් නොවේ, නමුත් සම්පූර්ණ කළ ඉල්ලීමක් සාක්ෂියකි.