Režim se statickým klíčem propojuje přesně dva rovnocenné uzly a to je jeho konstrukce, nikoli omezení, které někdo zapomněl zrušit. client-to-client je možnost předávání v režimu serveru, takže její přidání do konfigurace --secret nic nemění na tom, kolik klientů se může připojit. Rozhodnutí není o tom, kterou volbu přidat, ale zda nasazení potřebuje spojení typu bod-bod, nebo službu pro více klientů. Pokud se musí několik zařízení připojovat nezávisle, režim ochrany se mění a každé zařízení dostane identitu.

Dva rovnocenné uzly, jeden klíč a žádný stav pro jednotlivého klienta: tento tvar je celý příběh režimu.

K čemu režim se statickým klíčem slouží

V režimu tajného klíče oba uzly sdílejí jeden soubor s klíčem a tento klíč chrání provoz přímo. Neexistuje handshake, výměna certifikátů ani relace pro jednotlivého klienta, protože v pojetí serveru žádní klienti nejsou, pouze dva koncové body.

Režim zůstává užitečný pro pevnou dvojici strojů se zdokumentovaným postupem rotace klíčů a OpenVPN 2.6 jej označuje za zastaralý právě proto, že režim TLS tyto případy pokrývá s lepšími vlastnostmi. Co nedokáže, je rozlišit jedno připojující se zařízení od druhého, protože držení souboru je celý příběh ověřování. Přidání třetího zařízení znamená sdílet s ním stejný klíč, a poté první dva už nedokážou rozlišit, že jde o někoho jiného.

Proto je mez dvou uzlů konstrukční, nikoli nastavení, které by šlo změnit.

Proč client-to-client není chybějící díl

client-to-client řídí, zda si připojení klienti mohou vyměňovat provoz přes server. Nepřijímá klienty, nepřiřazuje identity ani nevytváří režim serveru, který nebyl nakonfigurován, a v konfiguraci se statickým klíčem neexistuje žádný seznam klientů, který by mohl spravovat.

Další časté zmatení se týká materiálu tls-crypt nebo tls-auth. Server TLS může jeden z těchto klíčů sdílet mezi všemi klienty, protože chrání řídicí kanál, nikoli dokazuje, kdo který klient je. Sdílený klíč řídicího kanálu v režimu TLS je jiný objekt než sdílený statický datový klíč, i když oba přicházejí jako podobně vypadající soubory.

Volba mezi režimy se redukuje na dvě otázky. Musí se připojovat nezávisle více než jedno zařízení a potřebuje nasazení odvolání pro každé zařízení? Ne na obojí udržuje režim se statickým klíčem životaschopný; ano na kteroukoli z nich ukazuje na TLS. Neexistuje třetí možnost, kdy by byl druhý klient přijat bez vlastní identity.

Budování serveru pro více klientů

Server pro více klientů potřebuje režim TLS, certifikát na straně serveru a identitu pro každého klienta. Pomocník serveru nastaví fond adres a režim pro více klientů, ale nedodá konfiguraci TLS, důvěryhodný kořen ani klientské certifikáty, které činí přijetí smysluplným.

Zaregistrujte každé zařízení přes stávající certifikační autoritu místo kopírování pověření jednoho klienta. Právě odlišné identity umožňují odvolání, směrování pro jednotlivé klienty a užitečné záznamy, a jediný sdílený klientský certifikát zhroutí všechny tři.

Pokud nasazení ověřuje uživatele přes externí adresář nebo druhý faktor, tento návrh zůstává tak, jak je. Přechod do serverového režimu TLS rozhoduje o tom, jak se uzly prokazují na vrstvě tunelu, a nediktuje backend účtů. Držte obě rozhodnutí oddělená, aby změna v jednom tiše nezměnila druhé.

Potom vědomě rozhodněte o politice předávání. client-to-client povoluje provoz mezi klienty v serverové cestě v uživatelském prostoru, což mnoho nasazení chce a některá nesmějí mít. Je to přepínač politiky, nikoli mechanismus identity, a má se zapnout proto, že to návrh vyžaduje, ne proto, že ho zahrnul nějaký návod.

Kontrola, že klienti jsou skutečně nezávislí

Připojte dva klienty a potvrďte, že dostávají různé adresy a objevují se s různými identitami v protokolu serveru. Potom jednoho odvolejte a potvrďte, že druhý dál funguje, což je praktický test, že identity nebyly sdílené.

Otestujte povolenou službu mezi uzly a službu, která má zůstat blokovaná. Dvě úspěšná přihlášení dokazují přijetí, ne izolaci, a rozdíl je důležitý, když má nasazení oddělovat skupiny uživatelů.

Nakonec čtěte režim serveru z běžící konfigurace, ne z paměti. Konfigurace se statickým klíčem a dalšími volbami je stále spojení bod-bod a správný server TLS je jediné uspořádání, v němž je několik klientů skutečně oddělených uzlů.

Pokud protokol ukazuje jedno společné jméno pro každé zařízení, problém není v režimu. Problém je v procesu registrace.

Související články