Tunel, který naskočí a pak se každou půlminutu restartuje, obvykle není problém šifry ani MTU. Je to jedna identita použitá dvakrát. Server vidí známé common name, přijme novou relaci jako nejnovější a starší zařízení zjistí, že bylo nahrazeno. Z pohledu klienta to vypadá jako nečinnostní timeout a restart, a proto vyšetřování tak často začíná na špatném místě.

Začněte intervalem restartu

Interval je stopa dřív než cokoli jiného. Pravidelný rytmus, který odpovídá oknu ping-restart, ukazuje na nahrazovanou relaci, ne na selhávající cestu, protože selhání cesty jsou málokdy tak pravidelná. Zapište přesný rozdíl mezi restarty a řádek s důvodem v klientském logu. Timeout následovaný restartem vypráví jiný příběh než neúspěšný handshake.

Zkontrolujte, kdy restarty začaly vzhledem k druhému zařízení. Nový notebook, telefon nebo profil zkopírovaný na záložní stroj jsou obvyklé spouštěče a čas obvykle odpovídá dni, kdy ho někdo nastavil.

Zapište interval i důvod. Obojí je důkaz a obojí se sbírá levně.

Přečtěte, co server řekl o druhém přihlášení

Na serveru, který ovládáte, log uvádí common name a ukazuje druhé připojení. Bez duplicate-cn toto připojení nahradí existující relaci stejného jména a zpráva to obvykle říká přímo. S duplicate-cn obě relace koexistují a příznak se mění: klienti zůstávají připojení, ale sdílejí jednu sadu nastavení na klienta a jedno rozhodnutí o odvolání. Čtěte oba záznamy společně, protože nahrazení je vidět jen v posloupnosti.

U hostované služby nemusíte mít žádný serverový log. Stopou je pak časování: stabilní tunel, který spadne vždy, když se připojí jiný stroj, a v klientském logu nic kromě timeoutu.

Porovnejte bloky certifikátu a klíče v obou profilech, ne jen vzdálené jméno hostitele. Zkopírované profily se obvykle liší jen názvem souboru.

Rozdělte identitu na straně serveru

Vydávejte jeden certifikát na zařízení přes CA, která podepisuje pro tento server. S Easy-RSA to znamená samostatné klientské jméno pro každé zařízení a profil se pak sestaví z tohoto certifikátu a jeho klíče. Common name se stává identitou zařízení, což je přesně to, co serveru chybělo. Pojmenujte je podle zařízení, ne podle osoby, aby výměna dala nové jméno.

Sdílený klíč řídicího kanálu je samostatná věc. tls-crypt nebo tls-auth chrání řídicí kanál pro každého klienta a je určen ke sdílení. Není to identita klienta a jeho výměna duplikovaný certifikát neopraví.

Držte certifikát, klíč a každý konfigurační soubor klienta pod stejným common name, jinak se mapování při dalším připojení rozbije. Nesoulad tam vytvoří klienta, který se ověří a pak nic nedostane.

Po rozdělení udržujte adresy a nastavení sladěné

Pevné adresy zavádějí druhý způsob kolize. Pokud je server přiděluje přes ifconfig-pool-persist nebo soubor na klienta, tyto záznamy stále ukazují na staré jméno. Dvě zařízení mohou dostat stejnou adresu tunelu i po rozdělení certifikátů a tato závada vypadá jinak než původní smyčka.

Aktualizujte mapování současně s certifikátem, potom znovu připojte obě zařízení a porovnejte přidělené adresy. Duplicitní adresa se projeví jako přerušované ztráty, ne jako čisté opětovné připojení.

Nastavení, která se mají lišit podle zařízení, posílejte vlastním souborem daného zařízení, ne společnou šablonou. Společná šablona také ztěžuje odhalení dalšího duplikátu.

Odstavte starou identitu řádně

Odvolejte certifikát, když je hardware vyřazen nebo chybí, místo smazání profilu ze starého stroje. Odvolání vytvoří nový CRL a server potřebuje tento soubor tam, kam ukazuje crl-verify. S touto direktivou na místě způsobí chybějící nebo nečitelný CRL, že server odmítne každého klienta, proto po každé aktualizaci otestujte jeden známý účet.

Veďte inventář, který váže každý certifikát k osobě nebo zařízení, s daty vydání a odvolání. Ten inventář odpovídá, kdo ještě má přístup, aniž byste četli názvy souborů, a brání tomu, aby další zkopírovaný profil smyčku spustil znovu.

Související články