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 16:55 | Zajímavý software

    pico-usb-wifi je open source firmware pro Raspberry Pi Pico W, který jej promění v USB Wi-Fi adaptér. Po připojení k počítači se objeví jako zařízení USB CDC-NCM.

    Ladislav Hagara | Komentářů: 0
    dnes 16:00 | IT novinky

    Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.

    … více »
    Ladislav Hagara | Komentářů: 1
    dnes 04:55 | Komunita

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)

    Ladislav Hagara | Komentářů: 4
    dnes 00:22 | Zajímavý software

    Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 2
    včera 19:55 | Nová verze

    Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 1
    včera 14:44 | IT novinky

    Na Seznam nepovolených internetových her (Wikipedie) se k 13. 7. 2026 dostala predikční platforma Polymarket.

    Ladislav Hagara | Komentářů: 5
    včera 14:22 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 167 (pdf) a Hello World 30 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 00:44 | Nová verze

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    15.7. 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 2
    15.7. 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2154 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: ProxyPassReverse a SSL certifikát

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

    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: 16
    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: 78 | 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: 78 | 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: 78 | 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: 78 | 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: 78 | 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: 78 | 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: 78 | 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: 78 | 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: 16
    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: 16
    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: 30 | 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: 30 | 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.