Který strojový certifikát nabízí VPN ve Windows?
Několik strojových certifikátů, jeden nabídnutý, a brána ho odmítne. Zužte výběr filtry vystavitele a EKU, místo abyste cokoli mazali.
Certifikáty jsou nainstalované, privátní klíče existují a tunel přesto selhává při ověřování. Počítač s několika certifikáty může VPN nabídnout kandidáta, kterého nikdo nezamýšlel, a klient nemá jak zjistit, který z nich brána přijme. Smazání ostatních je politika výběru s důsledky pro každou službu na počítači. Zužte místo toho přípustnou množinu a potom potvrďte, který certifikát byl skutečně nabídnut.
Několik certifikátů, jeden nabídnutý
Nativní profily VPN ve Windows s ověřováním strojovým certifikátem nabízejí dva filtry, které omezují kandidáty: filtr vystavitele a filtr rozšířeného použití klíče. Zmenšují množinu, ze které může klient vybírat. Neopravují nevhodný certifikát a nezaručují, že server přijme to, co zbyde. Tuto hranici stojí za to uvést v záznamu o změně, protože další čtenář bude předpokládat, že filtr rozhodl víc, než rozhodl.
Selhání, které řeší, je úzké a konkrétní. Platný certifikát od nesprávné autority nebo certifikát vydaný pro účel, který brána nepřijímá, se vybere před zamýšleným, což vyvolá selhání ověřování vedle zdravého úložiště. Dva filtry z toho udělají množinu dost malou na to, aby se o ní dalo uvažovat, a zbytek této stránky je aplikuje v pořadí.
Prohlédněte úložiště dřív, než upravíte profil
Vypište kandidáty a jejich vlastnosti v úložišti, které profil skutečně používá. Nic zde neexportuje privátní klíč a žádný certifikát nemusí opustit počítač:
Get-VpnConnection -Name 'Office' | Select-Object Name, TunnelType, AuthenticationMethod
Get-ChildItem Cert:\LocalMachine\My | Select-Object Subject, Issuer, Thumbprint, NotAfter, HasPrivateKey, EnhancedKeyUsageList
Přečtěte si výstup kvůli vlastnostem, na kterých rozhodnutí závisí: použitelný privátní klíč, přijatelné období platnosti, zamýšlený vystavitel a účely v rozšíření. Certifikát může být zároveň přítomný, správně zapsaný a pro toto připojení nepoužitelný. Sloupec s otiskem je to, s čím budete později porovnávat, takže si výstup uložte.
Před úpravou potvrďte profil a jeho rozsah, protože strojový certifikát v LocalMachine, uživatelský certifikát EAP-TLS a vlastní úložiště privátních klíčů aplikace jsou tři různé kontexty. Použijte rozsah všech uživatelů a administrativní kontext, pokud tam spravovaný profil žije. Vytvoření druhého profilu s podobným názvem zakryje, kterou konfiguraci připojení skutečně používá.
Filtr vystavitele chce objekt
Parametr vystavitele očekává objekt certifikátu, ne zobrazované jméno a ne holý řetězec otisku. Dodejte certifikát schválené autority z cesty, kterou jste zkontrolovali, do úložiště, kam patří:
$issuerPath = Read-Host 'Certificate-provider path for the approved issuer CA'
$issuer = Get-Item -LiteralPath $issuerPath
Set-VpnConnection -Name 'Office' -MachineCertificateIssuerFilter $issuer
Nenahrazujte vlastní koncový certifikát klienta, jinou autoritu s podobným subjektem ani čerstvě vygenerovaný kořen jen proto, že typ parametru to přijímá. Dvě autority mohou sdílet stejný řetězec subjektu, a proto je objekt důležitější než text. Referenční příručka k rutinám Microsoftu dokumentuje oba typy vstupu a stojí za to si ji přečíst před první úpravou, ne až po neúspěšném pokusu.
Filtr použití chce řetězec OID
Parametr rozšířeného použití klíče přijímá řetězce OID a účelem ověřování klienta je 1.3.6.1.5.5.7.3.2. Jeho použití omezí kandidáty na certifikáty nesoucí tento účel, což je přesně to, co nasazení s ověřováním klienta chce:
Set-VpnConnection -Name 'Office' -MachineCertificateEKUFilter '1.3.6.1.5.5.7.3.2'
Hodnota je pole, takže nasazení, které potřebuje několik účelů, je předá jako seznam. Filtr nemůže přidat účel do certifikátu: je to výraz výběru vyhodnocovaný proti podepsaným rozšířením a žádný filtr je nepřepisuje, takže certifikát bez účelu musí projít znovu zápisem.
Držte konfiguraci EAP uživatelských certifikátů odděleně od filtrování strojových certifikátů, protože žijí na různých místech a změna v jednom zřídka vysvětlí selhání ve druhém. Zkontrolujte také, zda profil nevlastní doména nebo správa zařízení, protože místní úprava může být při další obnově zásad nahrazena, aniž by se někdo počítače dotkl.
Dokažte, který certifikát klient nabídl
Navažte nové připojení a přečtěte si důkazy ověření klienta a serveru pro zamýšlenou identitu. Když filtry splňuje víc než jeden certifikát, výsledkem je menší množina, ne připíchnutý koncový certifikát, takže další pokus může vybrat jiného člena. Poznamenejte si otisk, který se v těchto důkazech objeví, a porovnejte ho s tím, který jste si zapsali z úložiště.
Úspěšný příkaz není úspěšné ověření. Výsledek, který stojí za zapsání, je zamýšlený certifikát ověřující se podle spravovaných zásad, zatímco každý nesouvisející certifikát zůstává dostupný službám, které na něm závisí. Pokud selhání přežije oba filtry, dalším místem ke zkoumání jsou zbývající kandidáti, ne celý profil.