Възрастта на ръкостискането на WireGuard не е таймаут на сесия
Таймерите за подмяна на ключове управляват ключовете, а не достъпа на потребителите. Четенето на latest-handshakes говори за протоколното състояние на един peer, а не дали оторизацията му е изтекла.
Peer, който спре да пропуска трафик, не губи от това своя ключ, а ново ръкостискане не доказва, че някой е подновил разрешението да го използва. Таймерите на WireGuard поддържат ключовете свежи и пакетите в движение; те не моделират потребител, който излиза от системата след зададен брой минути. Тук се бъркат три въпроса и всеки има различни доказателства. Разграничението решава кой инструмент да използваме.
Три въпроса, един изход от команда
Операторите питат дали peer е достъпен, дали е бил активен и дали все още е разрешен. Първото е състояние на протокола, второто са броячи на трафик, а третото е оторизация. Само първите две могат да се прочетат от интерфейс на WireGuard и те редовно се използват, за да се отговори на трите.
| Question | Evidence it needs | What does not answer it |
|---|---|---|
| Is the peer reachable now? | A recent handshake and a working return path | An interface that exists |
| Has it been active? | Transfer counters moving over time | A handshake timestamp alone |
| Is access still granted? | The configuration or controller that authorizes it | Any protocol timer |
Четете редовете като три отделни разследвания. Първите две са евтини и могат да се отговорят със собствените броячи на интерфейса. Третото се нуждае от конфигурацията, която дава достъп, а тя живее в друг файл или друга система. Изборът на грешен ред означава да поискаме от протоколен таймер да свърши работата на политика.
Какво всъщност управляват таймерите
Протоколът дефинира константи за повторение на ръкостискането, ротация на транспортните ключове и отхвърляне на пакети, защитени от стар ключ. Те реагират на трафик и на състояние, а не на календар или на политика, която казва, че човек може да е свързан до 17:00. Затова неактивен peer може да изглежда бездействащ с часове и въпреки това да е оторизиран.
PersistentKeepalive често се бърка с липсващия таймаут. Той изпраща автентикирани празни пакети, за да поддържа NAT съпоставяне живо, а задаването му на нула спира тези пакети, без да отнема нещо.
Четете състоянието по време на изпълнение за всеки peer, като използвате публичния ключ, а не коментара:
wg show wg0 latest-handshakes
wg show wg0 transfer
Скорошно ръкостискане казва, че едно ръкостискане е завършило. То не казва, че частната услуга зад тунела е достъпна, а стара времева марка може да принадлежи на peer, който просто мълчи.
Защо неактивен peer не е peer, излязъл от системата
WireGuard няма обект на сесия с начало и край. Peer е публичен ключ с разрешени адреси, а ръкостискането, което защитава трафика му, се подменя при нужда без никакво видимо за потребителя влизане. Да се третира липсата на скорошен трафик като излизане обръща модела.
Ако истинската жалба е, че връзка се проваля след бездействие, причината обикновено е другаде: изтекло NAT съпоставяне, устройство, което е заспало, или защитна стена, която е загубила състояние. Тествайте, като изпращате трафик от другата страна и стартирате нов поток, и сравнете какво се променя.
Поставете срока там, където живее оторизацията
Ако достъпът трябва да приключи в определен час, срокът принадлежи на това, което дава достъпа. Контролер, който издава конфигурации на peer, може да изисква подновено одобрение, преди да издаде нова, и това е свойство на контролера, а не скрит параметър на интерфейса.
За ръчно управлявани peer-и премахването трябва да достигне до две места: работещия интерфейс и запазената конфигурация. Премахването на peer само по време на работа се отменя от рестарт или цикъл на съгласуване, който възстановява идентичността, която смятахте за изтекла:
sudo wg set wg0 peer <public-key> remove
sudo wg-quick save wg0
След това тествайте границата, а не етикета. Потвърдете, че peer се отхвърля след срока, че пътят за подновяване работи и че състоянието оцелява след презареждане на мениджъра. Възрастта на ръкостискането е полезен оперативен сигнал и не е запис за достъп.