MFA суроосун бүтүрөсүз, туннел көтөрүлөт, терминалды жабуу байланышты өзү менен түшүрөт. Бул көзөмөл маселеси, аутентификация эмес, жана OpenConnect'те аны чечүүчү которгуч бар. Чечим — кардардын иштетүү бүткөндөн кийин, интерактивдүү бөлүк чынында бүткөндө фонго бутактанышына жол берүү. Төмөндө текшерүүлөрдүн тизмеги: аларды ирети менен аткарып, шлюзуңузга туура келбеген биринчисинде токтоңуз.

Кирүүдө шлюз эмнени талап кыларын ырастаңыз

Буйрук жазганга чейин жайгаштыруу талап кылган каттоо маалыматтарынын жолун жазып алыңыз. Тек гана сертификат, сырсөз жана токен, SAML провайдери аркылуу браузердик айлануу ар башкача иштейт, ал эми фондук режим алардын эч бирин өткөрө албайт. Бул параметр иштетүүдөн кийин эмне болорун өзгөртөт, анын учурунда эмес.

Азгыра турган чечим — суроону автоматташтыруу. Сырсөз суроосун тааныганда туруктуу жооп жазган каптама шлюз бир жолку код сураган учурда бузулат жана башка каттоолор окуй ала турган файлда каттоо маалыматтарын калтырат. Эгер сессияны адам ырастоосу керек болсо, адамды процессте кармаңыз.

Биринчи сессияны алдыңкы планда иштетип, чыгууну окуңуз

Бир жолу кадимкидей туташып, бүт кол алышууну басып чыгарыңыз. Колдонулган протоколду, сертификат же токен жолун, сервер берген туннел дарегин жана байланыш кабыл алынга чейинки ар бир эскертүүнү жазып алыңыз. Ошол жазуу — сиздин базалык сызыгыңыз жана кийин кардар маселесин шлюз өзгөрүүсүнөн ажыратуунун жалгыз арзан жолу. Аны терминал буферинен тышкары сактаңыз.

Анан ошол эле чакырууну фондук режим жана PID файлы менен кайталаңыз, мисалы openconnect --background --pid-file /run/openconnect.pid vpn.example.net, шлюзуңуз талап кылган протокол жана аутентификация параметрлерин ошол сапта кармаңыз. OpenConnect колдонмосу бул параметрди иштетүү бүткөндөн кийин фондо улантуу деп сүрөттөйт, ошондуктан интерактивдүү баскыч биринчи бүтүшү керек.

Иштеп жаткан процессти табууга жана токтотууга боло тургандай кылыңыз

PID файлы тирүү процесске дал келгенче гана далил. Аны тейлөө эсебине таандык папкага салып, сигнал жөнөтүүдөн мурун жазылган санды процесстер таблицасы менен салыштырыңыз. Кайра жүктөө жана кулап түшүү файлды калтырат, ал эми эскирген файл токтотуу скриптинин туннел дагы туруп турганда ийгилик билдирүүсүнүн кадимки себеби. Текшерүүнү токтотуу жол-жобосунун бөлүгү деп эсептеңиз, милдеттүү эмес кадам эмес.

Ырасталган PID'ге сигнал жөнөтүп, анан чыгуу абалына ишенүүнүн ордуна туннел интерфейси чынында жоголгонун ырастаңыз. Эгер кардарга интерфейсти конфигурациялоо үчүн жогорку укуктар керек болсо, сигнал аны жөнөтүүгө уруксаты бар эсептен келиши керек.

Фондук режимди көзөмөлчүнүн астына каттабаңыз

systemd жана ушуга окшош көзөмөлчүлөр өздөрү иштеткен процессти ээлөөнү күтүшөт, ошондуктан бутактанган кардар аларды адаштырат. Көзөмөлчү иштеткичтин чыгышын көрөт, ал эми чыныгы байланыш уланат, ошондуктан кайра иштетүү логикасы, абал отчёту жана токтотуу убакыт чеги азыр туура эмес нерсени сүрөттөйт. Бирдикти колдоого алынган алдыңкы план курулушунда жазып, демон ишин көзөмөлчүгө калтырыңыз.

--background'ди адам баштап, анан кеткен сессияларга калтырыңыз. Эгер талап кимдир бирөө киргенге чейин бар болгон туннель болсо, жетишпеген бөлүк — бекитилген интерактивдүү эмес инсандык жана аны жаңыртуу планы, ал эми эч бир буйрук сабынын желеги экөөнү тең бербейт. Желекти жүктөө скриптине кошуу биринчи мөөнөтү өткөн каттоо маалыматында үнсүз ишке ашпай калган туннелди жаратат.

Сессия cookie файлын каттоо маалыматы катары караңыз

OpenConnect --authenticate аркылуу өзүнчө аутентификация баскычын документтештирет, ал эми алынган материалды --cookie-on-stdin менен кайтарууга болот. Бул жуп интеграциялык иш үчүн, жана ал өндүргөн нерсе аны жараткан сырсөздөй эле сезимтал.

Маанини shell тарыхынан, журналдардан жана ачкан ар кандай билеттен тышкары кармаңыз. Өткөрүп берүү скрипти cookie менен бирге кардар алган ырасталган акыркы чекит маалыматын да сакташы керек; эгер жоготсоңуз, кийинки иштетүү эч качан аутентификациялаган эмес хостко туташы мүмкүн, бул жөн гана ишке ашпаган байланыштан жаман.

Терминалды жапканга чейин тизмени бүтүрүңүз

Төрт нерсе туура болушу керек: интерактивдүү кирүү алдыңкы планда бүттү, PID файлы сиз ырастаган процессти көрсөтөт, көзөмөлчү маселеси бир тарапка чечилди жана cookie'нин жөнөкөй тексттик файл эмес сактоо планы бар. Төртөө тең туура болгондо, терминалдан кетүү коопсуз жана туннел ишин улантат.

Эгер бири ишке ашпаса, калгандарына тийүүдөн мурун ошол пунктту оңдоңуз, анткени калган текшерүүлөр аны ордун толтура албайт. Биринчи иштетүүнүн алдыңкы план жазуусун да сактаңыз: кийинки жолу туннел эскертүүсүз кулаганда, ошол базалык сызык шлюз тараптагы өзгөрүүнү кардар тараптагыдан ажыратат.

Тектеш макалалар