Fórum Root.cz

Hlavní témata => Server => Téma založeno: darebacik 30. 03. 2024, 14:23:47

Název: HTTPS certifikát v lokální síti
Přispěvatel: darebacik 30. 03. 2024, 14:23:47
Pouzival som freenom (https://www.freenom.com/), ktory zrusil vsetky free domeny. Chcel by som si tieto domeny zachovat v lokalnej sieti. Certifikat pouzivam od LE. Zatial vsetko funguje OK, pretoze cerifikat expiruje zajtra. Ake mam moznosti aby to fungovalo dalej v LAN a aby to normalne akceptovali prehliadace (bez zasahu do prehliadacov).
Samozrejme, ze LE uz dalsi cert. nevida, ked neexistuje verejna domena.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 30. 03. 2024, 21:42:40
Prohlížeče (bez dodatečného zásahu) akceptují jen certifikáty vystavené důvěryhodnými certifikačními autoritami. Důvěryhodné certifikační autority vám vystaví jen certifikát k doméně, u které prokážete její vlastnictví. Takže když tu doménu nevlastníte, možnosti nemáte žádné.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: robac 31. 03. 2024, 01:40:09
Prohlížeče (bez dodatečného zásahu) akceptují jen certifikáty vystavené důvěryhodnými certifikačními autoritami. Důvěryhodné certifikační autority vám vystaví jen certifikát k doméně, u které prokážete její vlastnictví. Takže když tu doménu nevlastníte, možnosti nemáte žádné.
Pokud se ale situace za poslednich par let neznenila, tak prohlizece brali duveryhodne certifikacni autority z OS (s vyjimkou Firefoxu, kde byl vychozi, tusim  certiface store prohlizece)...
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Zopper 31. 03. 2024, 07:29:17
Počítá se vytvoření vlastní soukromé CA a instalace jejího certifikátu do systému jako zásah do prohlížeče, nebo ne?  Takové self-signed na steroidech, kdy si nic nestěžuje (pokud to má ten CA cert).
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: BobTheBuilder 31. 03. 2024, 07:55:45
Prohlížeče (bez dodatečného zásahu) akceptují jen certifikáty vystavené důvěryhodnými certifikačními autoritami. Důvěryhodné certifikační autority vám vystaví jen certifikát k doméně, u které prokážete její vlastnictví. Takže když tu doménu nevlastníte, možnosti nemáte žádné.
Pokud se ale situace za poslednich par let neznenila, tak prohlizece brali duveryhodne certifikacni autority z OS (s vyjimkou Firefoxu, kde byl vychozi, tusim  certiface store prohlizece)...
Firefoxu můžete říct, že má ke svému certicate storu přidat důvěryhodné CA ze systému několika způsoby. To se hodí nejen pro vlastní CA, ale i pro takové Post Signum.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: lordrak 31. 03. 2024, 08:54:34
Ahoj, za me mas dve moznosti a obe nejsou jednoduche na nasazeni behem minuty.
Jako CA muzes mit bud open ssl, nebo windows AD Cs nebo s super nastroj v GUI jmenem XCA.
Pokud mas windows, pak pomoci GPO nadistribuujes CA a s ADCS lze i automaticky vydavat.
Na linuxu distribuci udelas pokud vim jen dalsimi nastroji.
Distribuci na stoije tedy pro zacatek rucne.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: darebacik 02. 04. 2024, 10:29:43
Pustil som sa teda do mkcert (https://www.root.cz/clanky/duveryhodne-https-certifikaty-na-radce-pomoci-nastroje-mkcert/). Ano je to jednoduche a cert je vygenerovany okamzite. Nahodil som cesty do nginx.
Uz len potrebujem preniest CA do systemu na inych PC v LAN sieti a to mi akosi nejde.
Pokial som to dobre pochopil, tak defaultne sa CA (kvazi) na servery ulozi do
Kód: [Vybrat]
mkcert -CAROOT
Kód: [Vybrat]
/home/user/.local/share/mkcertNa inkriminovanych PC, kde chcem aby jej doverovali (hlavne) prehliadace, tak tiez nainstalujem mkcert + doinstalujem
Kód: [Vybrat]
sudo apt install libnss3-toolsRucne som skopiroval zo servera
Kód: [Vybrat]
/home/user/.local/share/mkcert/rootCA.pem/Na klientovi
Kód: [Vybrat]
sudo mkcert -install
The local CA is already installed in the system trust store! 👍
ERROR: no Firefox and/or Chrome/Chromium security databases found
Obsah CA, ktory som skopiroval zo servera som prepisal na klientovi
Kód: [Vybrat]
/home/user/.local/share/mkcert/rootCA.pem/znova som spustil
Kód: [Vybrat]
sudo mkcert -install
The local CA is already installed in the system trust store! 👍
ERROR: no Firefox and/or Chrome/Chromium security databases found
Ale nebola najdena DB pre FF a chrome

Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: wsh wsh 02. 04. 2024, 10:48:44
Jaká je tedy momentálně best practice? Mám Home Assistent běžící v docker kontejneru na Turrisu a chtěl bych ho přepnout na https. Vytvořit si vlastní CA bych zvládl, na Linuxu si ji přidám. Ale když mám několik uživatelů s Androidem, tak musím také obíhat jejich telefony a nějak jim tam přidávat svoji CA? Nebo existuje nějaké víc user-friendly řešení?
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: czechsys 02. 04. 2024, 10:54:58
Jaká je tedy momentálně best practice? Mám Home Assistent běžící v docker kontejneru na Turrisu a chtěl bych ho přepnout na https. Vytvořit si vlastní CA bych zvládl, na Linuxu si ji přidám. Ale když mám několik uživatelů s Androidem, tak musím také obíhat jejich telefony a nějak jim tam přidávat svoji CA? Nebo existuje nějaké víc user-friendly řešení?

Bez centralizovane administrace zarizeni nelze pouzit jiny postup, nez provest akci rucne.
Nebo si proste poridit verejnou domenu.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 02. 04. 2024, 15:24:54
Jaká je tedy momentálně best practice?
Mít veřejnou doménu. Běžné veřejné domény v TLD .cz nebo .eu pořídíte do 20 Kč za měsíc, různé domény třetího řádu i levněji nebo dokonce zdarma.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: darebacik 02. 04. 2024, 16:01:53
OT: Ja som kupil minuly rok domenu druheho radu za 0.24€/mes na cloudflare. Teraz pozeram, ze uz isli cenou hore.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: darebacik 02. 04. 2024, 17:23:01
CA mkcert som si pridal rucne do G-chromu/chromiu a firefoxu, cize je to vyriesene. Zaujmalo by ma ako by som to pridal do systemu.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Zopper 02. 04. 2024, 20:57:54
Jaká je tedy momentálně best practice? Mám Home Assistent běžící v docker kontejneru na Turrisu .... Nebo existuje nějaké víc user-friendly řešení?

Best practice a nejvíc user i admin friendly v tomhle případě bude instalace nginx-proxy-manager (https://github.com/hassio-addons/addon-nginx-proxy-manager) addonu, doména s DNS serverem třeba u cloudflare nebo jiného podporovaného providera s API, a Let's Encrypt certifikát vystavený přes DNS challenge, takže není třeba vystrkovat žádné zařízení do internetu.

Je to všechno na pár kliknutí a výsledek je obnovovaný certifikát platný ve všech zařízeních. Jen tam je ta podmínka nějaké koupené domény. .CZ stojí nějakých 150-180 korun ročně myslím.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 02. 04. 2024, 21:58:09
Best practice a nejvíc user i admin friendly v tomhle případě bude instalace nginx-proxy-manager (https://github.com/hassio-addons/addon-nginx-proxy-manager) addonu
Ještě víc admin friendly bude Caddy server (https://caddyserver.com). HTTPS s Let's Encrypt to umí hned po startu bez jakékoli konfigurace, reverzní proxy přidáte jedním řádkem konfigurace (nebo dvěma parametry při startu), na ověřování certifikátů přes DNS jsou potřeba další 4 řádky konfigurace.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Zopper 03. 04. 2024, 14:31:24
Jak nginx proxy manager, tak Caddy, mají plugin pro HA, který vypadá, že je obsahuje všechno potřebné a "stačí zapnout." U nginx jsem po instalaci jen nastavil přes klikátko, co má přes proxy překládat na co a že doména je u cloudflare, tady je api klíč. Nedokážu si představit, že by to Caddy pro DNS challenge dokázal nějak dál zjedodušit. Hlavní rozdíl asi je, že v Caddy se to zřemě dělá přes config místo přes klikátko, což je spíš otázka osobního vkusu (osobně mi klikátko přijde lepší, pokud se tomu nástroji člověk nevěnuje nějak víc), a že nginx je přímo v core addonech, zatímco Caddy je v HASSIO.

A tak jako tak bude v HA configu potřeba povolit proxy požadavky se správnou IP, jinak to bude HA zahazovat.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 03. 04. 2024, 17:22:53
Používat v diskusi o HTTPS serverech a reverzních proxy zkratku HA pro Home Assistant bez uvedení celého názvu alespoň při prvním použití je poněkud matoucí :-) Ne každý si musí pamatovat, že tu byl včera zmíněn Home Assistant a snadno „HA“ zamění za HAProxy, která se v kontextu HTTPS serverů a reverzních proxy vyskytuje přeci jen častěji…

Hlavní rozdíl je, že v Caddy je HTTPS by default a musel byste ho naopak explicitně vypnout, kdybyste ho nechtěl. Zatímco v nginx to musíte nakonfigurovat ručně včetně automatické obnovy certifikátů externím nástrojem, nebo si musíte k nginxu doinstalovat ještě něco, kde to nakonfigurujete třeba přes nějaké klikátko.

Samozřejmě, pokud už někdo nginx má nainstalovaný a zprovozněný a jenom přidá další doménu, bude to jednoduché. Ale pokud ten reverzní proxy server staví od nuly, je konfigurace Caddy serveru jednodušší.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Zopper 03. 04. 2024, 20:47:25
Ok, tak tedy Home Assistant, to máte pravdu.  :D Co se tu ale snažím říct je, že zrovna v tomhle případě, kdy tazatel uvedl, že mu jde konkrétně o schování Home Assistenta za SSL, je ten nginx proxy manager opravdu triviální, a troufám si říct že o trošku přátelštější, než konfigurace Caddy. Všechno, co je totiž potřeba udělat je:
A to je všechno - ten addon je předkonfigurovaný a pořeší si certifikát, automaticky ho obnoví...

I v Caddy bych musel vyplnit všechny tyhle informace a navíc místo klikátka to dělat v konfiguračním souboru, kde je přece jen snazší udělat chybu. Odkud a kam má dělat proxy, že má použít Let's Encrypt, nějakou formu autentizace vůči DNS poskytovateli (a nebo dělat manuální úpravy DNS záznamů)... To, že to začne fungovat po HTTP hned, jak vyplním první formulář, takže si to můžu otestovat dřív, než se do toho zamíchá ještě SSL, je drobný bonus.

Pokud by to člověk instaloval bokem, tak Caddy možná vyhraje. Ale tohle single-purpose řešení pro Home Assistenta mě nenapadá, jak by šlo rozumně dál zjednodušit.

A pokud má člověk Home Assistenta jako HAOS, jejich distribuci, a ne jen vlastnoručně puštěnou službu (což zjednodušuje zálohování a obnovu na nové železo), tak ty addony jsou jediný způsob, jak tu proxy pustit na stejném stroji.

Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 03. 04. 2024, 21:02:51
Ano, pokud chce to HTTPS jen pro Home Assistanta, bude ten plugin asi jednodušší řešení. Já jsem automaticky předpokládal, že za tu reverzní proxy bude postupně chtít přidat další servery, tím pádem bude lepší vybudovat si rovnou  reverzní proxy jako samostatný server (software, ne nutně samostatné železo).
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Zopper 03. 04. 2024, 22:32:40
Jasně, to dává smysl. Na druhou stranu, v rámci domácí LAN je to SSL z hlediska bezpečnosti celkem zbytečné. Jediný důvod, proč jsem si ho do Home Assistenta dával já, je, že přístup k USB-Serial převodníku jde v prohlížeči povolit jen pro HTTPS weby. Tj. pokud chci mít ESPHome běžící pod Home Assistentem a pohodlně flashovat ESP32 a podobné destičky s minimem námahy… Tak stavět univerzální proxy server je overkill. A technicky vzato, ten nginx plugin jde univerzálně použít, kdyby na to přišlo.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Filip Jirsák 04. 04. 2024, 08:51:56
Je zbytečné (a nebezpečné) rozlišovat, kdy je TLS zbytečné a kdy ne. I v té domácí LAN můžete mít nějakou ne dobře zabezpečenou WiFi, můžete tam mít třeba kamery, jejichž obraz by sousedi zrovna nemuseli vidět atd. Pro používání prohlížečů je zdaleka nejbezpečnější, když HTTPS bude prostě všude – protože každá výjimka znamená potenciální skulinu pro útočníka.
Doufám, že jednou bude standardem, že doménu a vydání certifikátů bude zprostředkovávat domácí router, případně zajistí reverzní proxy pro zařízení, která by měla s HTTPS problém.
Jinak samozřejmě je to řešitelné kterýmkoli serverem, který umí dělat reverzní proxy – třeba i Apache. Ale Apache někomu připadal jako moc velký moloch, tak vznikl lehčí nginx, ale i ten pak někomu připadal pořád jako zbytečně složitá věc, tak vzniklo mimo jiné Caddy.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: ivoszz 05. 04. 2024, 12:26:30
CA mkcert som si pridal rucne do G-chromu/chromiu a firefoxu, cize je to vyriesene. Zaujmalo by ma ako by som to pridal do systemu.
V macOS a Windows se root CA přidá kliknutím na certifikát a jeho instalací. V linuxu nakopírováním certifikátu do správného adresáře a spuštěním aplikace, která jej přidá do databáze. Aplikace závisí na distribuci. Podrobněji to máte popsané na Githubu mkcert.
Název: Re:HTTPS certifikát v lokální síti
Přispěvatel: Vít Šesták (v6ak) 05. 04. 2024, 13:13:09
Možných útoků na HTTP je v domácí síti více, zvlášť u zařízení, které se připojuje do více sítí (mobily, notebooky, …). Například lze otrávit cache. A bez HTTPS se také lépe dělá DNS rebinding attack (trik, jak si z webového prohlížeče udělat proxy do vnitřní sítě nebo dokonce na localhost), ačkoli HTTPS by zde neměla být primární ochrana…
V neposlední řadě WPA2 nemá forward secrecy (WPA3 už snad jo), takže pokud časem unikne heslo k Wi-Fi, lze jej (za určitých celkem splnitelných podmínek) použít k přečtení dříve zachycené komunikace.
Jo, tyto útoky lze typicky nějak řešit, ale:

1. Seznam nejspíš nebude kompletní.
2. I pokud se omezíme na to, co jsem zde během chvilky vytáhl z hlavy, nejspíš bude jednodušší to HTTPS… 😊