pristup k lokalnym sluzbam cez domenu

Všetko o sieťach, nastaveniach, problémoch ...
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

Idem tu s dalsiou mojou blbou networkingovou otazkou:

chcel by som aby lokalne beziace sluzby boli dostupne cez domenu. napr. ked dnes mam transmission na adrese 192.168.50.8:9091 tak chcel by som sa k nemu dostat cez transmission.domena.tld, ked plex je na 192.168.50.8:32400 tak by som ho chcel mat na plex.domena.tld.

Trosku som sa hral s nginx reverse proxy, tam toto viem nastavit, ale on zaroven tie sluzby exposne aj na wan, co nechcem. Pre mailserver sa mi podarilo nastavit hairpin nat, takze tam to ide, ze len interne sluzby sa mi vedia pripojit na mail.domena.tld a odosielat mailu a porty nemam forwardnute na wan. ale ten reverese proxy funguje na portoch 80/443 a nechcem ich dat smerom von.
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
Používateľov profilový obrázok
Snake
VIP
VIP
Príspevky: 13677
Dátum registrácie: Ne 23. Júl, 2006, 02:00
Bydlisko: Bratislava/Galanta

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa Snake »

A toto naco robis? Vsetka comm pôjde cez cez tu ARR a bohvie co nepôjde (veľa veci uz totiž používa daky pinning na zabezpecenie), toto je homelab alebo to plánuješ aj využívať? Lebo si zbytocne vytvaras artificial load na sieťové komponenty, ak ti ide o to okaslat porty tak bohužiaľ, na to sú spravené





.
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

chcem sa jednoducho dostat k roznym sluzbam ktore mi doma bezia. mam na to nastaveny taky dashboard na styl heimdallu a mam to aj v zalozkach, ale ja radsej chodim tak ze zacnem tukat nieco do URL a tam mi to naskoci. lenze dost sa s tym hram, IP adresy a porty sa menia (teraz som vacsinu veci z docker macvlan presunul na bridge - macvlan som mal prave preto, že IP adresy sa mi lepsie pamatali, ale zasa je to zlozitejsie na nastavenie a udrziavanie). ale na tvoju otazku: robim to tak trosku z nudy + aby som sa nieco naucil :)
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
faugusztin
Moderátor
Moderátor
Príspevky: 15044
Dátum registrácie: Ut 26. Feb, 2008, 14:00
Bydlisko: Bratislava/Štúrovo

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa faugusztin »

Tebou popisovana otazka je silne zavisla od toho, ako mas svoju domacu siet implementovanu.

Napriklad ja mam tebou pozadovane riesenie implementovane nasledovne:
  • V sieti mi bezi DNSMasq server, ktory riesi resolvovanie hostnames, pricom vybrane domeny resolvne na interne IP adresy, zvysok posle upstream DNS servru. Tym mam zabezpecene to, ze povedzme Jenkins mi bezi pod domenou jenkins.domena.tld, no na verejnom DNS servri taky zaznam vobec neexistuje a zvonku takato sluzba logicky nie je dostupna.
  • Nasledne na lokalnom servri, kde mi bezia tieto sluzby (lokalne alebo v dockeri) spravim nginx reverse proxy. To, ze na aky interface nabindujes nginx je vecou konfiguracie.
  • Pre sluzby, ktore chcem mat verejne pouzijem OpenSSH plus moju VPS. Tym konkretne myslim to, ze zo servra spravim SSH spojenie na server, pricom forwardnem lokalne porty na "localhost" porty na VPS. Nasledne na VPS uz potom spravim dalsie reverse proxy pre dane hostname na lokalny port. Samozrejme v pripade vypadku SSH spojenia dane sluzby nebudu fungovat, ale to je uz bohuzial riziko, s ktorym som ja ochotny zit.
Potom je tu este problematika synchronizacie Let's Encrypt SSL klucov medzi VPS (kde sa automaticky aktualizuju cez LE klienta) a lokalnym servrom, ale to sa da vyriesit dennym spustatnim rsync/scp.

Predpokladam, ze ty to mas cele robene na urovni nejakeho routeru, a preto mas taketo problemy.
Používateľov profilový obrázok
Hexaris
Sponzor fóra gold
Sponzor fóra gold
Príspevky: 781
Dátum registrácie: Št 11. Júl, 2019, 19:35
Bydlisko: Nekde na zahori

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa Hexaris »

Uz tu asi bolo povedane vsetko, inak u nginx si mozes u listen nastavit pristup na rozne IP. Co sa tyk LE tak bud wildcard alebo SNI. Na domenu osobne pouzivam bud bind s multiview alebo nieco podobne. U dnsmasq obcas niektore zariadenia strajkuju a nefunguje prekladanie.
Your value does not decrease because of someone's inability to see your worth.
BOOK: MB Air M1 2020 AMP: Topping DX3Pro+ HEADPHONES: HiFiMAN HE400SE
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

faugusztin napísal: Ne 24. Máj, 2020, 10:47
  • V sieti mi bezi DNSMasq server, ktory riesi resolvovanie hostnames, pricom vybrane domeny resolvne na interne IP adresy, zvysok posle upstream DNS servru. Tym mam zabezpecene to, ze povedzme Jenkins mi bezi pod domenou jenkins.domena.tld, no na verejnom DNS servri taky zaznam vobec neexistuje a zvonku takato sluzba logicky nie je dostupna.
resolving ti funguje aj vtedy ak mas na jednej ip adrese 10 roznych sluzieb na roznych portoch?

vedel by si sem hodit priklad jednej konfiguracie pre reverse proxy?
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
faugusztin
Moderátor
Moderátor
Príspevky: 15044
Dátum registrácie: Ut 26. Feb, 2008, 14:00
Bydlisko: Bratislava/Štúrovo

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa faugusztin »

Podstatna je nginx konfiguracia pre kazdy hostname:

Kód: Vybrať všetko

server {
        # SSL configuration
        #
        listen 443 ssl;
        listen [::]:443 ssl;

        ssl_certificate /etc/nginx/ssl/fullchain.pem;
        ssl_certificate_key /etc/nginx/ssl/privkey.pem;
        include snippets/ssl_params;

        # Add index.php to the list if you are using PHP
        index index.html index.htm index.nginx-debian.html;

        server_name hostname.domena.tld;

        location = /favicon.ico {
            alias /var/www/media/images/favicon.remote.ico;
        }

        location / {
            proxy_pass http://hostname:port/;
            proxy_buffering off;
            proxy_http_version 1.1;
            proxy_set_header Connection "upgrade";
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header        Referer                 $http_referer;
            proxy_set_header        Host                    $host;

            # by default nginx times out connections in one minute
            proxy_read_timeout 1d;
        }
}
Dolezite je co mas v polozke server_name (pre SNI ak pouzivas SSL) a potom mas samozrejme ciel uvedeny v proxy_pass konfiguracii.

Takze povedzme v tvojom pripade spravis konfiguraciu so server_name transmission.domena.tld, ktora bude mat proxy_pass na http://192.168.50.8:9091/, a druhy konfiguracny subor so server-name plex.domena.tld s proxy_pass na http://192.168.50.8:32400/.

Teda:
  • interne DNS pre interny resolving, v konfiguracii pridas hostname -> IP prevod na server kde ti bezi NGINX.
  • NGINX, pricom pre kazdy hostname vytvoris samostatnu konfiguraciu server {}
PS: ssl_params subor je iba o nastaveny ssl parametrov.
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

skusam tvoj config, vyhodil som z toho veci na ssl zatial pre testing a davami to chybu

Kód: Vybrať všetko

nginx: [warn] conflicting server name "jackett.domena.tld" on 0.0.0.0:80, ignored,
nginx: [warn] conflicting server name "jackett.domena.tld" on [::]:80, ignored,
inac rovnaku chybu mi davaju priklady reverse proxy ktore su zahrnute do letsencrypt docker balicka. kontajnery mi bezia vsetky na rovnakom subnete, takze mali by sa vidiet navzajom.

v default config mam nastavene server_name _; co podla dokumentacie by malo zabezpecit aby nedoslo ku konfliktom. prehladal som vsetkt nginx subory na server_name a bud tam mam hodnotu _ alebo ten jackett co som daval
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
faugusztin
Moderátor
Moderátor
Príspevky: 15044
Dátum registrácie: Ut 26. Feb, 2008, 14:00
Bydlisko: Bratislava/Štúrovo

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa faugusztin »

Prever, ze ci ti tvoj editor neponechava nejake zalozne subory v danom adresari.
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

google mi tiez nasiel tu odpoved, ale nie, pregrepoval som vsetky subory nginxu a server_name tam nie je nikde kde by mohol byt konflikt.

napadlo mi ze problem bude v tom ze nginx ktory by mal robit reverse proxy mi bezi na adrese 192.168.50.8 na portoch 10443 a 1080. na rovnakej ip adrese mi bezi ale aj openmediavault ktory vlastne hostuje cez docker vsetky sluzby, a ten ma svoj vlastny nginx server na porte 80 a mal som pocit ze tieto dve su v konflikte. ale prestahovanie omv na iny port nepomohlo, a ip adresy neviem oddelit, lebo potom by na seba jednotlive sluzby nevideli
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
faugusztin
Moderátor
Moderátor
Príspevky: 15044
Dátum registrácie: Ut 26. Feb, 2008, 14:00
Bydlisko: Bratislava/Štúrovo

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa faugusztin »

Skus spustit prikaz:

Kód: Vybrať všetko

nginx -T 
To by ti malo vypisat cely aktivny config nginx, prezri si ho, pripadne ak nevies najst problem, mozes ho cely sem aj dat.
Používateľov profilový obrázok
Hexaris
Sponzor fóra gold
Sponzor fóra gold
Príspevky: 781
Dátum registrácie: Št 11. Júl, 2019, 19:35
Bydlisko: Nekde na zahori

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa Hexaris »

Neviem co presne znamena zabmedzit konfliktom, ale direktiva _; je klasika catch-all a berie vsetko, ako u apache kde je wildcard. Taktiez mozes zadat vsetko bez ohladu na referer na port: listen 80 default_server
Your value does not decrease because of someone's inability to see your worth.
BOOK: MB Air M1 2020 AMP: Topping DX3Pro+ HEADPHONES: HiFiMAN HE400SE
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

tak po refershnuti nginx suborov docker kontajnera to ide, ale hodne zaujimavo:

- subdomena.domena.tld je dostupna aj zvonka, co teda rozhodne nebol moj zamer
- subdomena.domena.tld je zvnutra dostupna tak sometimes. ked som odstranil staticke dns pre dashmachine.domena.tld tak to islo, potom zasa nie. vratil som staticke dns, islo. potom zasa nie, ked som odstranil fungovalo to opat. napr. jackett a tautulli zvnutra nejde nikdy, bez ohladu ci jackett.domena.tld je v dns zaznamoch alebo nie. zvonka to ide vzdy. plex ide aj zvnutra, aj ked ho nemam v dns...
- najzaujimavesji je adminer. priamo v docker-compose tam mam nastaveny iny dizajn ui, co je vlastne css subor v kontajnery. zvnutra to natiahne tento zvoleny dizajn, ale zvonka default...

kopiroval som vzdy ten isty subor, jedine co som menil bola cisla portov a subdomena.

radsej som teda vypol vsetky tie configy, lebo fakt nechcem aby boli viditelne zvonka. mohol by som sice vypnut presmerovanie nginx kontajnera na wan, ale chcem mat na domene aspon prazdny obrazok.
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)
faugusztin
Moderátor
Moderátor
Príspevky: 15044
Dátum registrácie: Ut 26. Feb, 2008, 14:00
Bydlisko: Bratislava/Štúrovo

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa faugusztin »

"Obcas ide, obcas nie" - to vyzera, ze mas DNS cudne spravene (raz ides cez interny resolver, raz cez externy).
"Zvonka viditelne" - nechapem preco mas system s OMV akymkolvek sposobom vystrceny do internetu. Sprav si na dalsom systeme proxy pre weby, ktore chces mat vystrcene na internete, a iba tento system spristupni zvonku.

Ale ja to uz viacmenej vzdavam, to co chces spravit je mozne spravit, ale nieco je u teba velmi zle nakonfigurovane, to ale na dialku nenajdeme.
Používateľov profilový obrázok
molnart
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 6646
Dátum registrácie: Ut 19. Jún, 2012, 23:03
Bydlisko: Bratislava/Samorin

Re: pristup k lokalnym sluzbam cez domenu

Príspevok od používateľa molnart »

OMV vystrcene nemam, mam vystrceny nginx z dockeru, lebo:
- generuje a aktualizuje letsencrypt certifikat
- zobrazuje obrazok na mojej domene

OMV Webui sa mi namiesto danej sluzby nacitava interne, externe nikdy.

ono asi ani velmi inu moznost nemam, ak chcem pouzivat jednu instanciu nginx ako realny webserver aj ako reverse proxy tak mi bude strkat tie sluzby von. to by som ich musel rozbehnut dve paralelne. jeden pre webserver a druhy pre reverse proxy, pricom ten druhy by pouzival certifikaty generovane tym prvym.

to cudne DNS bude asi tym, ze primarne DNS na kompe mam na moj interny mikrotik router (na ktorom som nastavoval tie staticke DNS nazvy) a sekundarne DNS mi smeruje na huawei ont od telekomu, kde tie staticke DNS zaznamy nastavene nemam, ani ich nemam ako nastavit. zaujimave je, ze ja som to takto nenastavoval, ani to nie je nikde v nastaveniach, len dhcp to takto proste pridelilo. asi na tom huawei by som mal vypnut dhcp (viem ze ideal by bol bridge mod - aspon som narazil na case kde to DMZ ako to mam nastavene robi sarapatu)
Spoiler: ukázať
PC: CPU: Intel Core i5 12600K with Silentium Fortis 5 ARGB MB: MSI Tomahawk Z690 DDR4 RAM: 2x 16GB G.Skill Ripjaws V 4400-19 DDR4 GPU: GigaByte Eagle GeForce RTX 3060 Ti OC HDD: Samsung 970 1GB GB PSU: Corsair RMx (2018) 650W Case: Fractal Meshify 2 Compact Monitor: Philips 272B7QPJEB OS: Win 11 64-bit
Notebook: HP EliteBook 840 G6 Core i5 8265U, 16 GB RAM, 512 GB SSD
Server: HP Microserver Gen8 Xeon E3-1265Lv2, 16GB ECC DDR3 OS: PVE + OMV + OPNsense
Phone: Samsung Galaxy A52s
Tablet: iPad Pro 11 (2018)

Návrat na "Siete"