Vlastní TLS certifikační autorita

Vlastní TLS certifikační autorita
« kdy: 29. 04. 2023, 13:31:58 »
Zdravím všechny,

snažím se něco naučit o tls certifikátech a tak sem se pustil do pár experimentů a narazil na problém, se kterým nemůžu hnout. Moc bych Vás, místní odborníky, chtěl poprosit o pomoc.

V rámci domací experimentální LAN mám hosta (rpi4) s homeassistantem (že je to zrovna hass podle mě není důležité) a jednoduchý DNS. Mým cílem bylo vytvořit doménu pro hosta s hass, vytvořit si root certifikát a certifikát pro tu doménu. Doména se povedla a ve firefoxu sem byl schopný pomocí http://doména:port se krásně dostat na hass. Dále sem si i nějak vytvořil ten root certifikát a i certifikát pro doménu toho hosta. Naimportoval sem root certifikát do firefoxu, v hass sem nastavil ať se použivá certifikát a jeho klíč a ono to fungovalo na první dobrou. Po zadaní doména:port sem se přes https dostal na hass. Supr. Další krok byl to oživit v Chromu. No ale tam jsem narazil a možná i něco pohnojil s úložištěm certifikátů na win10 protože mi přestal fungovat přístup přes https i ve firefoxu. Dokonce nefungovalo ani zadání ip hosta místo domény. Potom, co jsem v hass zakázal používání certifikátu sem se mohl připojit pomocí ip hosta. Pak sem to zase povolil, ale furt mi funguje přihlášení jen pomocí ip hosta. A to jak ve firefoxu tak i v chromu.

Teď mé dotazy na Vás:

- Co jsem pohnojil?
- Je možné, že si prohlížeče zapamatují vztah mezi ip, doménou a certifikátem?
- Je lepší postup než jsem zvolil (v rámci uzavřeného LANu bez přístupu ven)?

Předem děkuji za Váš čas a odpovědi.

Ondřej


Re:Vlastní TLS certifikační autorita
« Odpověď #1 kdy: 29. 04. 2023, 20:39:44 »
Co jste udělal špatně vám takhle těžko někdo napíše, protože nevíme skoro nic o tom, co se u vás dělo – jak vypadaly ty certifikáty, jak jste to nakonfiguroval, jak vypadala komunikace.

Vazbu mezi DNS názvem a IP adresou zjišťuje prohlížeč z DNS, nějakou dobu si to pamatuje prohlížeč a nějakou dobu také systémový resolver. Vazba mezi certifikátem a IP adresou není žádná (s výjimkou výjimečných certifikátů vystavených na IP adresu a ne na jméno). Prohlížeč si může pro dané doménové jméno pamatovat, že musí být použito HTTPS a důvěryhodný certifikát (nastavuje se to přes HTTP hlavičky a rozhodně není dobrý nápad zapínat to hned na začátku, ale až po nějaké době, kdy máte ověřeno, že je vše funkční). Vazbu mezi DNS názvem a certifikátem je možné zjistit i z DNS, ale prohlížeče to ještě nepoužívají (technologie DANE). Také bylo možné, aby si prohlížeč pamatoval vazbu mezi DNS názvem a certifikátem nebo klíčem (HTTP Public Key Pinning), ale to už se nepoužívá.

Re:Vlastní TLS certifikační autorita
« Odpověď #2 kdy: 29. 04. 2023, 23:06:24 »
Ahoj,
a naimportoval jsi root certifikát?
Do windows je třeba spustit "správa certifikátů počítačů" a tam nahrát root certifikát do Důvěryhodné kořenové ...
Pozor, některé prohlížeče (tuším že i chrome) si nově udržují vlastní seznam a kašlou na OS. V tom případě si najdi návod, jak naimportovat root CA do konkrétního prohlížeče.
Lordrak