abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 07:00 | Nová verze

    Byl vydán svobodný kancelářský balík OnlyOffice Docs 7.0. Nově umožňuje vytvářet online formuláře, vylepšuje správu revizí dokumentů, přidává možnost zaheslovat tabulky, efekty v prezentacích či tmavý motiv vzhledu.

    Fluttershy, yay! | Komentářů: 0
    dnes 06:55 | Bezpečnostní upozornění

    Stránky s titulky OpenSubtitles.org byly hacknuty. Již v létě. Hacker získal emailové adresy a přihlašovací údaje všech uživatelů. Doporučena je změna hesla.

    Ladislav Hagara | Komentářů: 2
    včera 16:22 | Nová verze

    Monitorix (Wikipedie), svobodný software pro monitorování služeb a systémových zdrojů, byl vydán ve verzi 3.14.0. Přibyly tři nové moduly: nvme.pm, amdgpu.pm a nvidiagpu.pm.

    Ladislav Hagara | Komentářů: 0
    včera 15:55 | Komunita

    Spolek OpenAlt napsal otevřený dopis Národnímu úřadu pro kybernetickou a informační bezpečnost (NÚKIB) a Ministerstvu vnitra ČR k Bezpečnostním doporučením pro vývoj otevřeného software ve veřejné sféře: "Kromě samotného faktu, že takový dokument vůbec vzniká, velmi oceňujeme jeho zveřejnění a možnost zasílání připomínek formou komentářů (issues) i konkrétních návrhů na změny (pull requesty)".

    Ladislav Hagara | Komentářů: 1
    včera 08:00 | Komunita

    Do svidanija, Igor, a dík za NGINX. Igor Sysoev, autor webového serveru nginx (2002) a spoluzakladatel stejnojmenné společnosti (2011), opouští NGINX a F5. Chce trávit více času se svými přáteli a rodinou a věnovat se osobním projektům.

    Ladislav Hagara | Komentářů: 16
    včera 07:00 | Nová verze

    Wine, vrstva umožňující běh aplikací určených pro MS Windows, bylo vydáno v nové hlavní verzi 7.0. Novinky zahrnují vylepšenou podporu např. vstupních zařízení nebo motivů vzhledu, více v oznámení vydání.

    Fluttershy, yay! | Komentářů: 1
    včera 06:00 | Zajímavý software

    Open source syntezátor Surge XT byl vydán ve verzi 1.0.0. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GPLv3. Více v dokumentaci.

    Ladislav Hagara | Komentářů: 0
    18.1. 15:33 | IT novinky

    Microsoft kupuje Activision Blizzard (Warcraft, Diablo, Overwatch, Call of Duty, Candy Crush, …) za 68,7 miliard dolarů.

    Ladislav Hagara | Komentářů: 32
    18.1. 13:33 | Zajímavý článek

    Fedora Magazine rozebírá restartování a offline aktualizování Fedora Linuxu. První Fedora s offline aktualizováním byla v lednu 2013 vydaná Fedora 18. Tenkrát ještě s kódovým označením Spherical Cow.

    Ladislav Hagara | Komentářů: 15
    18.1. 12:55 | IT novinky

    The Qt Company dnes představila platformu Qt Digital Advertising 1.0 pro monetizaci Qt aplikací.

    Ladislav Hagara | Komentářů: 3
    Jestliže jste používali distribuci CentOS Linux, jejíž konec byl oznámen před rokem, kam jste přešli?
     (33%)
     (1%)
     (6%)
     (17%)
     (1%)
     (5%)
     (35%)
    Celkem 172 hlasů
     Komentářů: 14, poslední 14.1. 14:44
    Rozcestník



    Dotaz: ProxyPassReverse a SSL certifikát

    7.11.2021 15:16 P. Marek
    ProxyPassReverse a SSL certifikát
    Přečteno: 549×

    Dobré odpoledne,

    Když chci použít reverzní proxy a požadavek poslat na jiný server jak je to s ssl certifikátem?

    a) musí být v konfiguraci odkud se volá ProxyPassReverse a v konfiguraci na koncovém stroji již být nemusí

    b) nemusí být v konfiguraci odkud se volá ProxyPassReverse ale musí být v konfiguraci na koncovém stroji

    a) musí být jak v konfiguraci odkud se volá ProxyPassReverse tak musí být v konfiguraci na koncovém stroji

    Děkuji za objasnění


    Řešení dotazu:


    Odpovědi

    7.11.2021 16:56 X
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Vsechny varianty jsou mozne.
    7.11.2021 17:29 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Díky za informaci, nyní zkouším variantu b) ale dostanu chybu v prohlížeči: "Připojení tohoto webu není zabezpečené. Server www.example.com odeslal neplatnou odpověď."

    Nevíte prosím co je tam špatně?

    Na hlavní serveru na který chodí veškerá komunikace 80 a 443 mám
    
    <VirtualHost *:443>
       ServerName example1.com
       SSLProxyEngine on
       ProxyPreserveHost On
       ProxyPass / 192.168.0.51:443/
       ProxyPassReverse / 192.168.0.51:443/
    </VirtualHost>
    
    <VirtualHost *:443>
       ServerName example2.com
       SSLProxyEngine on
       ProxyPreserveHost On
       ProxyPass / 192.168.0.52:443/
       ProxyPassReverse / 192.168.0.52:443/
    </VirtualHost>
    
    Na serveru 192.168.0.51 mám
    
    <VirtualHost *:443>
       ServerName example1.com
       DocumentRoot /var/www/html/example1.com
       SSLEngine on
       SSLCertificateFile /etc/ssl/example1.com/cert.pem
       SSLCertificateKeyFile /etc/ssl/example1.com/privkey.pem
       SSLCertificateChainFile /etc/ssl/example1.com/chain.pem
    </VirtualHost>
    
    Na serveru 192.168.0.52 mám
    
    <VirtualHost *:443>
       ServerName example2.com
       DocumentRoot /var/www/html/example2.com
       SSLEngine on
       SSLCertificateFile /etc/ssl/example2.com/cert.pem
       SSLCertificateKeyFile /etc/ssl/example2.com/privkey.pem
       SSLCertificateChainFile /etc/ssl/example2.com/chain.pem
    </VirtualHost>
    Výpis error.log
    [Sun Nov 07 17:18:08.766379 2021] [mpm_event:notice] [pid 4109:tid 140184108125504] AH00493: SIGUSR1 received.  Doing graceful restart
    [Sun Nov 07 17:18:08.775992 2021] [mpm_event:notice] [pid 4109:tid 140184108125504] AH00489: Apache/2.4.51 (Debian) OpenSSL/1.1.1k configured -- resuming normal operations
    [Sun Nov 07 17:18:08.776025 2021] [core:notice] [pid 4109:tid 140184108125504] AH00094: Command line: '/usr/sbin/apache2'
    7.11.2021 23:41 čavo | skóre: 4
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    V každom prípade musí byť na stroji kde ukončuješ spojenie z internetu (alebo odkiaľ sa pripájaš), teda tam kde konfiguruješ ProxyPass. ProxyPassReverse je barlička, ktorá opravuje odpovede 301 a 302, teda presmerovvanie spojenia.

    Teda a je správne. Na cielovom nemusí byť, ale môže. Dokonca na cielový môžeš smerovať na port 80 bez https, ale musíš si zabezpečiť odovzdanie Hlavičiek, aby cieľ vedel generovať správne odpovede.
    Řešení 1× (Jеdna)
    Jendа avatar 8.11.2021 01:00 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Nevím jak v Apache, ale normálně reverzní proxy umí směrovat třeba podle SNI přímo to šifrované spojení bez jeho terminace.
    8.11.2021 02:32 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Nejraději bych volil tu variantu B, aby na tom proxy serveru nebyl žádný certifikát a byl jenom až na každém koncovém serveru 192.168.0.51, 192.168.0.52 atd.. ale vůbec nic jsem nenašel jako to nastavit.
    Řešení 1× (Jеdna)
    Jendа avatar 8.11.2021 03:20 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Potřebuješ najít něco jako apache proxy by sni without ssl termination (alternativně s haproxy místo apache).
    8.11.2021 13:49 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Díky, haproxy jsem nainstaloval ale potřebný návod jsem nenašel, jak jsem psal níže, je to všechno s ssl certifikátem.
    Jendа avatar 8.11.2021 19:02 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Tak jsem to teda udělal:
    frontend tcp-proxy
      bind :5050
      mode tcp
      tcp-request inspect-delay 5s
      tcp-request content accept if { req_ssl_hello_type 1 }
    
      use_backend centrum if { req.ssl_sni -i www.centrum.cz }
      use_backend seznam if { req.ssl_sni -i www.seznam.cz }
    
    backend seznam
      mode tcp
      server server1 www.seznam.cz:443
    
    backend centrum
      mode tcp
      server server1 www.centrum.cz:443
    
    Použité zdroje: 1, 2, 3

    Každý si to teď může vyzkoušet na hrach.eu:5050, než mě to přestane bavit a vypnu to.
    9.11.2021 03:38 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Díky moc za ukázku.

    Mám to takto ale vůbec se nenačte soubor.css a taky nefunguje https://www.example.com/cokoliv. Je tam potřeba něco doplnit?
    frontend tcp-proxy
      bind :443
      mode tcp
      tcp-request inspect-delay 5s
      tcp-request content accept if { req_ssl_hello_type 1 }
    
      use_backend web1 if { req.ssl_sni -i www.example1.com }
      use_backend web2 if { req.ssl_sni -i www.example2.com }
    
    backend web1
      mode tcp
      server server1 192.168.0.51:443
    
    backend web2
      mode tcp
      server server1 192.168.0.52:443
    
    Řešení 1× (Jеdna)
    Jendа avatar 9.11.2021 10:22 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Jednak www.example.com není v tom seznamu, a když nemáš default_backend tak to na neuvedenou doménu nějak divně selže, jednak cesta se v SNI neposílá (pak by HTTPS nemělo z části smysl), jednak máš v odkazech napsáno jak to vyzkoušet pomocí s_clienta (protože browser má kdovíjakou cache a HSTS/HPKP) a jednak „nenačte“ a „nefunguje“ je popis problému k ničemu (dojde spojení na backend? zaloguje se něco?)
    9.11.2021 14:01 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Jednak www.example.com není v tom seznamu
    V jakém seznamu myslíš?
    jednak „nenačte“ a „nefunguje“ je popis problému k ničemu (dojde spojení na backend? zaloguje se něco?)
    Ano, ke spojení dojde, stránky se načtou ale nejsou nastylované a funguje pouze www.example.com, třeba www.example.com/css/style.css se nenačte.
    Řešení 1× (Jеdna)
    Jendа avatar 9.11.2021 16:46 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    V jakém seznamu myslíš?
    V tomhle
      use_backend web1 if { req.ssl_sni -i www.example1.com }
      use_backend web2 if { req.ssl_sni -i www.example2.com }
    Ano, ke spojení dojde, stránky se načtou ale nejsou nastylované a funguje pouze www.example.com, třeba www.example.com/css/style.css
    Tak to se SNI nemůže mít nic společného, protože URL se přenáší uvnitř TLS tunelu.
    se nenačte.
    Tak to máš blbý, nic jiného s tím nejde dělat. Pomohl by použitelný popis problému. Například jak už jsem psal, že se máš zkusit připojit řádkovým s_clientem (a v tomto případě provést HTTP GET ručně).
    9.11.2021 17:24 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    use_backend centrum if { req.ssl_sni -i www.centrum.cz }
    use_backend seznam if { req.ssl_sni -i www.seznam.cz }
    
    Ty tam ty domény ale taky nemáš, tak jak to že ti to funguje?
    Řešení 1× (Jеdna)
    Jendа avatar 9.11.2021 17:38 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Jak nemám? Podle SNI zjistím, jestli chceš na Seznam nebo na Centrum a podle toho tě přepojím, a pokud chceš něco jiného, tak tě odmítnu.
    9.11.2021 17:58 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Hm, takto je to teď OK? Dík
    frontend tcp-proxy
      bind :443
      mode tcp
      tcp-request inspect-delay 5s
      tcp-request content accept if { req_ssl_hello_type 1 }
    
      use_backend www.example1.com if { req.ssl_sni -i www.example1.com }
      use_backend www.example2.com if { req.ssl_sni -i www.example2.com }
    
    backend www.example1.com
      mode tcp
      server server1 192.168.0.51:443
    
    backend www.example2.com
      mode tcp
      server server1 192.168.0.52:443
    
    Řešení 1× (Jеdna)
    Jendа avatar 9.11.2021 18:24 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Ano, je. Tak si to zkus nejdřív s tím Seznamem a Centrem, klidně nejdřív s mým serverem (furt to běží) ať víš co máš čekat a pak to teprve zkus přesměrovat na svoje služby…
    9.11.2021 19:45 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Tvůj server na portu: 5050 se mi vůbec nezobrazí. Nevím jestli ostatní ano ale mě ne.

    Řešení 1× (Jеdna)
    Jendа avatar 9.11.2021 19:47 Jendа | skóre: 77 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Protože když do browseru zadáš prostě https://hrach.eu:5050/, tak pošleš SNI pro hrach.eu, který neservíruju (jak si můžeš přečíst v konfiguraci, tak poskytuji www.seznam.cz a www.centrum.cz). Já to testoval tím s_clientem a pak z prohlížeče zapsáním adresy do /etc/hosts.
    10.11.2021 12:36 čavo | skóre: 4
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Prípadne môžeš vyskúšať takéto:
    curl -v --connect-to www.seznam.cz:443:hrach.eu:5050 https://www.seznam.cz
    ...
    * Server certificate:
    *  subject: CN=www.seznam.cz
    *  start date: Oct  8 14:00:56 2021 GMT
    *  expire date: Jan  6 14:00:55 2022 GMT
    *  subjectAltName: host "www.seznam.cz" matched cert's "www.seznam.cz"
    *  issuer: C=US; O=Let's Encrypt; CN=R3
    *  SSL certificate verify ok.
    
    8.11.2021 08:32 X
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Pokud na te proxy neprovozujes dalsi weby ani zadnou nepotrebujes. Staci klasicky DNAT na firewallu.
    8.11.2021 08:03 čavo | skóre: 4
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Apache httpd je webserver. Ukončuje spojenie a potom ho spracováva. Je tam možnosť aj reverzného proxy. Ak bez ukončenia spojenia, tak nejaký TCP proxy, ale nie apache httpd.

    https://httpd.apache.org/docs/2.4/howto/reverse_proxy.html
    8.11.2021 08:16 MP
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    a] Pokud je proxy v rezimu L4 (ip), staci certifikat na cilovem serveru.

    b] Pokud je v rezimu L7 (http), je nutne certifikat na proxy, pricemz na cilovem serveru jsou tyto moznosti:

    1] tentyz certifikat

    2] jiny certifikat - v tom pripade se vypne overovani certifikatu na proxy

    3] zadny certifikat - tzv. ssl offloading
    8.11.2021 12:04 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Předpokládám, že Apache režim L4 neumí, nějaký tip na L4? Díky
    8.11.2021 12:07 MP
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    haproxy, mozna i caddy/traefik dle chuti
    8.11.2021 13:47 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Dík, haproxy ale ve všech návodech používá ssl certifikáty, nenašel jsem jediný návod, kde to jen přepošle na jinou ip bez ssl certifikátu.
    8.11.2021 14:06 MP
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Asi by se to chtelo procvicit v hledani.

    https://www.haproxy.com/blog/layer-4-and-layer-7-proxy-mode/
    8.11.2021 15:06 P. Marek
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    To jsem taky našel, ale je to pro pro komunikaci na portu 80 což mi je k ničemu když řeším ssl.
    8.11.2021 17:14 X
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Asi uplne nechapes fungovani SSL. To zabezpecuje dva konce mezi sebou. Dva, ne tri..
    8.11.2021 20:42 majales | skóre: 28 | blog: Majales
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    A nestačil by Apache SSLProxyEngine ? SSL terminuje a dál pokračuje SSL. Není to L4 mode, ale na většinu aplikací to stačí. To je totiž to co vám v tom konfigu nahoře chybí.
    8.11.2021 21:14 X
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Ma to tam dobre:
    SSLProxyEngine on
    Jenze on by chtel terminovat SSL az v lokalni siti a to dost dobre s prostrednikem nejde..
    8.11.2021 21:27 majales | skóre: 28 | blog: Majales
    Rozbalit Rozbalit vše Re: ProxyPassReverse a SSL certifikát
    Aha .. nerozbalil jsem si celý konfig. Já myslím, že autor neví co chce. Celé by to asi fungovalo, kdyby měl pořešené SNI pokud potřebuje na reverzní proxy volat jmenný backend example.com tak to musí zapsat do hosts na tom stroji s reverzní proxy a nemít a apache configu ProxyPass na IP ale na jméno. Pak musí být ovšem v konfigu i toto:
     SSLProxyVerify none
     SSLProxyCheckPeerCN off
     SSLProxyCheckPeerName off
     SSLProxyCheckPeerExpire off
    
    Pak je jedno jaký má v cíli cerifikát.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.