ഇന്ററാക്ടീവ് ലോഗിന് ശേഷം OpenConnect എങ്ങനെ പിന്നണിയിൽ പ്രവർത്തിപ്പിക്കാം
ലോഗിൻ മുൻപിലായി പൂർത്തിയാക്കി, പിന്നെ ടണൽ ക്ലയന്റിന്റെ സ്വന്തം പിന്നണി മോഡിലേക്ക് കൈമാറുക. അതിനെ കണ്ടെത്താനും നിർത്താനും സാധ്യമാക്കുന്ന പരിശോധനകൾ.
MFA പ്രോംപ്റ്റ് പൂർത്തിയാക്കുമ്പോൾ ടണൽ ഉയരുന്നു, ടെർമിനൽ അടയ്ക്കുമ്പോൾ കണക്ഷനും പോകുന്നു. ഇത് നിരീക്ഷണത്തിന്റെ പ്രശ്നമാണ്, പ്രാമാണീകരണത്തിന്റേതല്ല, OpenConnect-ൽ അത് പരിഹരിക്കുന്ന സ്വിച്ച് ഇപ്പോഴുണ്ട്. പ്രാരംഭം കഴിഞ്ഞ്, ഇന്ററാക്ടീവ് ഭാഗം ശരിക്കും തീർന്നപ്പോൾ ക്ലയന്റിനെ പിന്നണിയിലേക്ക് ശാഖപ്പെടാൻ അനുവദിക്കുകയാണ് പരിഹാരം. താഴെ പരിശോധനകളുടെ ക്രമം: അവ ക്രമത്തിൽ ചെയ്ത് നിങ്ങളുടെ ഗേറ്റ്വേയ്ക്ക് പൊരുത്തപ്പെടാത്ത ആദ്യത്തേതിൽ നിർത്തുക.
ലോഗിനിൽ ഗേറ്റ്വേ എന്താണ് ആവശ്യപ്പെടുന്നതെന്ന് ഉറപ്പാക്കുക
കമാൻഡ് എഴുതുന്നതിന് മുൻപ് വിന്യാസം അടിച്ചേൽപ്പിക്കുന്ന ക്രെഡൻഷ്യൽ പാത എഴുതിവയ്ക്കുക. സർട്ടിഫിക്കറ്റ് മാത്രം, പാസ്വേഡും ടോക്കണും, SAML ദാതാവിലൂടെയുള്ള ബ്രൗസർ യാത്ര—ഇവ വ്യത്യസ്തമായി പെരുമാറുന്നു, പിന്നണി മോഡിന് ഇവയിലൊന്നും ഒഴിവാക്കാനാവില്ല. ഈ ഓപ്ഷൻ പ്രാരംഭത്തിന് ശേഷം സംഭവിക്കുന്നത് മാറ്റുന്നു, അതിനിടയിൽ സംഭവിക്കുന്നതല്ല.
പ്രലോഭനീയമായ പരിഹാരം പ്രോംപ്റ്റ് സ്വയം പ്രവർത്തിപ്പിക്കുകയാണ്. പാസ്വേഡ് പ്രോംപ്റ്റ് തിരിച്ചറിയുമ്പോൾ സ്ഥിരമായ ഉത്തരം ടൈപ്പ് ചെയ്യുന്ന റാപ്പർ, ഗേറ്റ്വേ ഒറ്റത്തവണ കോഡ് ആവശ്യപ്പെടുന്ന നിമിഷം തകരുന്നു, മറ്റ് അക്കൗണ്ടുകൾക്ക് വായിക്കാവുന്ന ഫയലിൽ ക്രെഡൻഷ്യൽ വിടുന്നു. ഒരു വ്യക്തി സെഷൻ അംഗീകരിക്കേണ്ടതുണ്ടെങ്കിൽ ആ വ്യക്തിയെ പ്രക്രിയയിൽ നിർത്തുക.
ആദ്യ സെഷൻ മുൻപിലായി പ്രവർത്തിപ്പിച്ച് ഔട്ട്പുട്ട് വായിക്കുക
ഒരിക്കൽ സാധാരണയായി കണക്ട് ചെയ്ത് മുഴുവൻ ഹാൻഡ്ഷേക്കും അച്ചടിക്കാൻ അനുവദിക്കുക. ഉപയോഗിക്കുന്ന പ്രോട്ടോക്കോൾ, സർട്ടിഫിക്കറ്റ് അല്ലെങ്കിൽ ടോക്കൺ പാത, സർവർ നൽകുന്ന ടണൽ വിലാസം, കണക്ഷൻ സ്വീകരിക്കുന്നതിന് മുൻപുള്ള ഓരോ മുന്നറിയിപ്പും രേഖപ്പെടുത്തുക. ആ രേഖയാണ് നിങ്ങളുടെ അടിസ്ഥാനരേഖ, പിന്നീട് ക്ലയന്റ് പ്രശ്നത്തെ ഗേറ്റ്വേ മാറ്റത്തിൽ നിന്ന് വേർതിരിക്കാനുള്ള ഏക വിലകുറഞ്ഞ വഴി. ടെർമിനൽ ബഫറിന് പുറത്ത് സൂക്ഷിക്കുക.
പിന്നെ അതേ വിളി പിന്നണി മോഡും PID ഫയലും ചേർത്ത് ആവർത്തിക്കുക, ഉദാഹരണം openconnect --background --pid-file /run/openconnect.pid vpn.example.net, നിങ്ങളുടെ ഗേറ്റ്വേ ആവശ്യപ്പെടുന്ന പ്രോട്ടോക്കോളും പ്രാമാണീകരണ ഓപ്ഷനുകളും അതേ വരിയിൽ നിർത്തുക. OpenConnect കൈപ്പുസ്തകം ഈ ഓപ്ഷനെ പ്രാരംഭം കഴിഞ്ഞ് പിന്നണിയിൽ തുടരൽ എന്ന് വിവരിക്കുന്നു, അതുകൊണ്ടാണ് ഇന്ററാക്ടീവ് ഘട്ടം ആദ്യം തീരേണ്ടത്.
പ്രവർത്തിക്കുന്ന പ്രക്രിയയെ കണ്ടെത്താനും നിർത്താനും സാധ്യമാക്കുക
PID ഫയൽ ജീവനുള്ള പ്രക്രിയയുമായി ഒത്തുപോകുന്നിടത്തോളം മാത്രമാണ് തെളിവ്. സേവന അക്കൗണ്ടിന്റെ ഉടമസ്ഥതയിലുള്ള ഡയറക്ടറിയിൽ വയ്ക്കുക, സിഗ്നൽ അയയ്ക്കുന്നതിന് മുൻപ് രേഖപ്പെടുത്തിയ നമ്പർ പ്രക്രിയ പട്ടികയുമായി താരതമ്യം ചെയ്യുക. റീബൂട്ടും ക്രാഷും ഫയൽ വിടുന്നു, പഴയ ഫയലാണ് ടണൽ ഇപ്പോഴും ഉയർന്നിരിക്കെ സ്റ്റോപ്പ് സ്ക്രിപ്റ്റ് വിജയം അറിയിക്കാനുള്ള സാധാരണ കാരണം. പരിശോധനയെ സ്റ്റോപ്പ് നടപടിക്രമത്തിന്റെ ഭാഗമായി കാണുക, ഓപ്ഷണൽ ഘട്ടമല്ല.
സ്ഥിരീകരിച്ച PID-യ്ക്ക് സിഗ്നൽ അയച്ച്, എക്സിറ്റ് സ്റ്റാറ്റസിൽ വിശ്വസിക്കുന്നതിന് പകരം ടണൽ ഇന്റർഫേസ് ശരിക്കും അപ്രത്യക്ഷമായെന്ന് ഉറപ്പാക്കുക. ഇന്റർഫേസ് ക്രമീകരിക്കാൻ ക്ലയന്റിന് ഉയർന്ന അനുമതികൾ വേണ്ടെങ്കിൽ, സിഗ്നൽ അയയ്ക്കാൻ അനുമതിയുള്ള അക്കൗണ്ടിൽ നിന്ന് വരണം.
പിന്നണി മോഡ് സൂപ്പർവൈസറിന് കീഴിൽ അടുക്കരുത്
systemd പോലുള്ള സൂപ്പർവൈസറുകൾ തങ്ങൾ ആരംഭിച്ച പ്രക്രിയയുടെ ഉടമസ്ഥത പ്രതീക്ഷിക്കുന്നു, അതിനാൽ പുറത്തേക്ക് ശാഖപ്പെടുന്ന ക്ലയന്റ് അവയെ ആശയക്കുഴപ്പത്തിലാക്കുന്നു. സൂപ്പർവൈസർ ലോഞ്ചറിന്റെ പുറത്തുപോക്ക് കാണുന്നു, യഥാർത്ഥ കണക്ഷൻ തുടരുന്നു, അതിനാൽ റീസ്റ്റാർട്ട് യുക്തി, സ്റ്റാറ്റസ് റിപ്പോർട്ടിംഗ്, സ്റ്റോപ്പ് സമയപരിധികൾ എന്നിവ ഇനി ശരിയല്ലാത്തത് വിവരിക്കുന്നു. യൂണിറ്റ് പിന്തുണയുള്ള മുൻപിലെ ക്രമീകരണത്തിൽ എഴുതി ഡീമൺ ജോലി സൂപ്പർവൈസറിന് വിടുക.
--background ഒരു വ്യക്തി തുടങ്ങി പിന്നീട് പോകുന്ന സെഷനുകൾക്കായി സൂക്ഷിക്കുക. ആരും ലോഗിൻ ചെയ്യുന്നതിന് മുൻപ് നിലനിൽക്കുന്ന ടണലാണ് ആവശ്യമെങ്കിൽ, ഇല്ലാത്ത ഭാഗം അംഗീകൃത നോൺ-ഇന്ററാക്ടീവ് ഐഡന്റിറ്റിയും അത് പുതുക്കാനുള്ള പദ്ധതിയുമാണ്, കമാൻഡ് ലൈൻ ഫ്ലാഗ് ഇവയൊന്നും നൽകുന്നില്ല. ബൂട്ട് സ്ക്രിപ്റ്റിലേക്ക് ഫ്ലാഗ് ചേർത്താൽ ആദ്യ കാലഹരണപ്പെട്ട ക്രെഡൻഷ്യലിൽ നിശബ്ദമായി പരാജയപ്പെടുന്ന ടണൽ ഉണ്ടാകും.
സെഷൻ കുക്കിയെ ക്രെഡൻഷ്യലായി കാണുക
OpenConnect --authenticate വഴി പ്രത്യേക പ്രാമാണീകരണ ഘട്ടം രേഖപ്പെടുത്തുന്നു, ഫലമായുണ്ടാകുന്ന വസ്തു --cookie-on-stdin ഉപയോഗിച്ച് തിരികെ നൽകാം. ഈ ജോടി സംയോജന ജോലിക്കുള്ളതാണ്, അത് നിർമ്മിക്കുന്നത് അത് സൃഷ്ടിച്ച പാസ്വേഡിനോളം തന്നെ സംവേദനക്ഷമമാണ്.
മൂല്യം ഷെൽ ചരിത്രത്തിൽ നിന്നും ലോഗുകളിൽ നിന്നും നിങ്ങൾ തുറക്കുന്ന ഏത് ടിക്കറ്റിൽ നിന്നും അകറ്റി നിർത്തുക. കൈമാറ്റ സ്ക്രിപ്റ്റ് കുക്കിയോടൊപ്പം ക്ലയന്റിന് ലഭിച്ച സ്ഥിരീകരിച്ച എൻഡ്പോയിന്റ് വിവരങ്ങളും സൂക്ഷിക്കണം; അവ നഷ്ടപ്പെട്ടാൽ പിന്നീടുള്ള പ്രവർത്തനം നിങ്ങൾ ഒരിക്കലും പ്രാമാണീകരിക്കാത്ത ഹോസ്റ്റുമായി ബന്ധപ്പെടാം, അത് വെറുതെ പരാജയപ്പെടുന്ന കണക്ഷനേക്കാൾ മോശമാണ്.
ടെർമിനൽ അടയ്ക്കുന്നതിന് മുൻപ് പട്ടിക പൂർത്തിയാക്കുക
നാല് കാര്യങ്ങൾ ശരിയാകണം: ഇന്ററാക്ടീവ് ലോഗിൻ മുൻപിലായി തീർന്നു, PID ഫയൽ നിങ്ങൾ സ്ഥിരീകരിച്ച പ്രക്രിയയിലേക്ക് ചൂണ്ടുന്നു, സൂപ്പർവൈസർ ചോദ്യം ഒരു വശത്തേക്ക് തീർപ്പായി, കുക്കിക്ക് സാധാരണ ടെക്സ്റ്റ് ഫയലല്ലാത്ത സംഭരണ പദ്ധതിയുണ്ട്. നാലും ശരിയാകുമ്പോൾ ടെർമിനലിൽ നിന്ന് അകലുന്നത് സുരക്ഷിതമാണ്, ടണൽ പ്രവർത്തിക്കുന്നു.
അവയിലൊന്ന് പരാജയപ്പെട്ടാൽ, മറ്റുള്ളവയെ തൊടുന്നതിന് മുൻപ് ആ ഇനം ശരിയാക്കുക, കാരണം ബാക്കിയുള്ള പരിശോധനകൾക്ക് അത് നികത്താനാവില്ല. ആദ്യ പ്രവർത്തനത്തിന്റെ മുൻപിലെ രേഖയും സൂക്ഷിക്കുക: അടുത്ത തവണ ടണൽ മുന്നറിയിപ്പില്ലാതെ വീഴുമ്പോൾ, ആ അടിസ്ഥാനരേഖയാണ് ഗേറ്റ്വേ വശത്തെ മാറ്റത്തെ ക്ലയന്റ് വശത്തെ മാറ്റത്തിൽ നിന്ന് വേർതിരിക്കുന്നത്.