Таймерът на VPN сесията и токенът за удостоверяване изтичат поотделно
Лимитът на сесията в шлюза, таймерът за бездействие и многократният токен за удостоверяване изтичат по различни правила. Редът с грешката при прекъсването казва кой от тях е изтекъл.
Прекъсване на VPN може да възникне по причини, които изглеждат еднакви от страна на клиента и нямат нищо общо под повърхността: сесията на тунела приключи, задейства се таймер за бездействие или остаряха идентификационните данни, които клиентът използваше повторно. Всяка причина има различен собственик и различно решение. Последователността на грешката в момента на прекъсването е това, което ги разграничава, и обикновено е един ред.
Три часовника работят срещу един тунел и само един от тях е тунелът.
Три различни часовника на един тунел
Часовникът на сесията принадлежи на шлюза: максимална продължителност на връзката, таймаут за бездействие или и двете, и той прекратява тунела, когато се достигне някое от тях. Часовникът на токена принадлежи на системата за удостоверяване и решава колко дълго идентификационни данни могат да се представят отново без човек. Часовникът на пътя принадлежи на който и да е NAT или защитна стена между клиента и шлюза и изтича транслациите за потоци, които смята за приключени. И трите водят до прекъсване и нито един не дава същия ред в журнала.
Само първият е концепция на VPN. Останалите два са заети от идентичността и мрежите и редовно се бъркат с него.
Как токенът всъщност се използва повторно
OpenVPN сървъри могат да издадат токен за удостоверяване след първоначалния вход, така че повторното договаряне на контролния канал не иска от потребителя идентификационни данни отново. Клиентът продължава да представя този токен и сървърът решава колко дълго той остава приемлив. Когато животът на токена е по-кратък от интервала на повторно договаряне, следващото договаряне се проваля и клиентът съобщава грешка за удостоверяване вместо таймаут. Затова същият профил работи един час и после се проваля в фиксирана точка.
Интервалът на повторно договаряне е отделна настройка. Промяната му мести кога токенът се представя, не колко дълго живее.
Как изглежда всяко изтичане от страна на клиента
Таймаутът на сесията обикновено идва като чисто прекъсване с причина от сървъра, често след предвидима продължителност и без грешка за удостоверяване. Таймаутът за бездействие изглежда като тишина: тунелът спира да носи трафик, после поддържането на връзката се отказва. Изтичането на токена идва като AUTH_FAILED по средата на сесия, която работеше преди секунда.
Прочетете реда, после погледнете часовника. Продължителност, която съвпада с настроена стойност, не е случайност.
Защо запазената парола не помага
Кешираната парола отговаря на предизвикателство за парола. Тя не удължава живота на токена и не удовлетворява предизвикателство за втори фактор или проверка на състоянието на устройството. Увеличаването на честотата на опитите, намаляването на таймаутите на връзката или повторното импортиране на профила не променя нищо в това колко дълго системата за идентичност ще приема данните.
Трайните поправки са правилният живот на правилния обект или клиентски поток, който може да изпълни нужното предизвикателство без човек.
Какво да документирате и тествате
Запишете и трите стойности: лимитите за сесия и бездействие на шлюза, живота на токена и най-краткия подходящ таймаут на транслация по пътя. След това тествайте всяко изтичане умишлено, като скъсите една стойност, наблюдавате какво съобщава клиентът и я възстановите. Потвърдете какво трябва да направи потребителят на всяка граница, защото изискването на пълен вход всеки час е политическо решение, което някой е трябвало да вземе нарочно.
Прекъсване, което идва без никакво събитие за удостоверяване, принадлежи на пътя или на таймера за бездействие, а това е друго разследване с други доказателства.