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 13:00 | Humor

    OpenChaos.dev je 'samovolně se vyvíjející open source projekt' s nedefinovaným cílem. Každý týden mohou lidé hlasovat o návrzích (pull requestech), přičemž vítězný návrh se integruje do kódu projektu (repozitář na GitHubu). Hlasováním je možné změnit téměř vše, včetně tohoto pravidla. Hlasování končí vždy v neděli v 9:00 UTC.

    NUKE GAZA! 🎆 | Komentářů: 1
    dnes 03:00 | Nová verze

    Byl vydán Debian 13.3, tj. třetí opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.13, tj. třináctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    včera 03:00 | Komunita

    Na stránkách Evropské komise, na portálu Podělte se o svůj názor, se lze do 3. února podělit o názor k iniciativě Evropské otevřené digitální ekosystémy řešící přístup EU k otevřenému softwaru.

    Ladislav Hagara | Komentářů: 6
    9.1. 19:44 | Zajímavý software

    Společnost Kagi stojící za stejnojmenným placeným vyhledávačem vydala (𝕏) alfa verzi linuxové verze (flatpak) svého proprietárního webového prohlížeče Orion.

    Ladislav Hagara | Komentářů: 4
    9.1. 19:11 | IT novinky

    Firma Bose se po tlaku uživatelů rozhodla, že otevře API svých chytrých reproduktorů SoundTouch, což umožní pokračovat v jejich používání i po plánovaném ukončení podpory v letošním roce. Pro ovládání také bude stále možné využívat oficiální aplikaci, ale už pouze lokálně bez cloudových služeb. Dokumentace API dostupná zde (soubor PDF).

    NUKE GAZA! 🎆 | Komentářů: 2
    9.1. 14:22 | Zajímavý článek

    Jiří Eischmann se v příspěvku na svém blogu rozepsal o open source AdGuard Home jako domácí ochraně nejen před reklamou. Adguard Home není plnohodnotným DNS resolverem, funguje jako DNS forwarder s možností filtrování. To znamená, že když přijme DNS dotaz, sám na něj neodpoví, ale přepošle ho na vybraný DNS server a odpovědi zpracovává a filtruje dle nastavených pravidel a následně posílá zpět klientům. Dá se tedy používat k blokování reklamy a škodlivých stránek a k rodičovské kontrole na úrovni DNS.

    Ladislav Hagara | Komentářů: 7
    9.1. 03:33 | Zajímavý software

    AI Claude Code od Anthropicu lépe rozumí frameworku Nette, tj. open source frameworku pro tvorbu webových aplikací v PHP. David Grudl napsal plugin Nette pro Claude Code.

    Ladislav Hagara | Komentářů: 1
    9.1. 00:11 | Nová verze

    Byla vydána prosincová aktualizace aneb nová verze 1.108 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.108 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.1. 20:44 | IT novinky

    Na lasvegaském veletrhu elektroniky CES byl předveden prototyp notebooku chlazeného pomocí plazmových aktuátorů (DBD). Ačkoliv se nejedná o první nápad svého druhu, nepochybně to je první ukázka praktického použití tohoto způsobu chlazení v běžné elektronice. Co činí plazmové chladící akční členy technologickou výzvou je především vysoká produkce jedovatého ozonu, tu se prý podařilo firmě YPlasma zredukovat dielektrickou

    … více »
    NUKE GAZA! 🎆 | Komentářů: 14
    8.1. 16:33 | Zajímavý projekt

    Patchouli je open source implementace EMR grafického tabletu (polohovací zařízení). Projekt je hostován na GitLabu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (7%)
     (4%)
     (0%)
     (9%)
     (21%)
     (4%)
     (5%)
     (3%)
     (10%)
     (50%)
    Celkem 360 hlasů
     Komentářů: 8, poslední včera 23:18
    Rozcestník

    Dotaz: Apache2 proxy SSL, Tomcat, SSL

    23.3.2012 21:58 Nautil | skóre: 2 | Praha
    Apache2 proxy SSL, Tomcat, SSL
    Přečteno: 1506×
    Ahoj!

    Potřebuju nastavit frontendový server s Apache2 jako proxy pro HTTP i HTTPS provoz. Obsluhuje backendový server s Tomcatem 6.0.

    Nastavení pro HTTP na front.dom.cz je dáno v souboru /etc/apache2/default-server.conf - ten je defaultní, nijak jsem ho neupravoval.

    Schéma HTTP
    http://front.dom.cz --> http://back.dom.cz:8080/app1
    V adresním řádku prohlížeče se má zobrazovat http://front.dom.cz/app1

    To už jsem s pomocí zdejší poradny zvládnul: na front.dom.cz inkluduju do httpd.conf soubor mod_proxy.conf s tímto obsahem
    ProxyRequests Off
    ProxyPreserveHost On
    
    <Proxy *>
      Order deny,allow
      Allow from all
    </Proxy>
    
    ProxyPass               /app1   http://back.dom.cz:8080/app1
    ProxyPassReverse        /app1   http://back.dom.cz:8080/app1
    ProxyPass               /       http://back.dom.cz:8080/app1
    ProxyPassReverse        /       http://back.dom.cz:8080/app1
    
    Schéma HTTPS
    https://front.dom.cz --> https://back.dom.cz:8443/app1
    Zobrazovat se má
    https://front.dom.cz/app1

    Popravdě, potřebuju šifrované spojení HTTPS jen pro přihlašování, ale to bych zatím neřešil. Klidně ať zatím běží celá aplikace na HTTPS, před přihlášením i po. To je ostatně věc aplikace.

    Na frontendu jsem zapnul SSL v Apache a definoval virtuálního hosta /etc/apache2/vhosts.d/front.dom.cz
    <IfDefine SSL>
    <IfDefine !NOSSL>
    NameVirtualHost IPadresaFront:443
    <VirtualHost IPadresaFront:443>
            DocumentRoot "/srv/www/htdocs/front.dom.cz"
            ServerName IPadresaFront:443
            ServerAdmin admin@dom.cz
            ErrorLog /var/log/apache2/error_log
            TransferLog /var/log/apache2/access_log
            SSLEngine on
            SSLProtocol all -SSLv2
            SSLCipherSuite HIGH:MEDIUM
            SSLCertificateFile /etc/apache2/ssl.crt/ap2server.crt
            SSLCertificateKeyFile /etc/apache2/ssl.key/ap2server.key
            SSLCertificateChainFile /etc/apache2/ssl.crt/newca.crt
            SSLCACertificateFile /etc/apache2/ssl.crt/newca.crt
    
            <Files ~ "\.(cgi|shtml|phtml|php3?)$">
                SSLOptions +StdEnvVars
            </Files>
            <Directory "/srv/www/htdocs/front.dom.cz">
              Options Indexes
              AllowOverride None
              Allow from from all
              Order allow,deny
            </Directory>
    
            CustomLog /var/log/apache2/ssl_request_log   ssl_combined
    </VirtualHost>
    </IfDefine>
    </IfDefine>
    
    Ačkoli jsem na backendovém stroji SSL ještě nezprovoznil a proxy pro HTTPS nenastavil, funguje mi https://front.dom.cz/app1, tj. zobrazuje obsah z back.dom.cz/app1, ale jestli šifrovaně, to nepoznám.

    Zdá se, že direktivy z mod_proxy.conf mi přesměrovávají i HTTPS provoz. Ale to nejspíš nebude v pořádku, když SSL je jen na proxy serveru, že? Rád bych, aby byla celá komunikace šifrovaná, nejen se tak tvářila.

    Kde všude má být konfigurováno SSL a vložen certifikát? Potřebuju certifikát s Common Name=front.dom.cz. Jak korektně nastavit proxy pro HTTPS provoz?

    Díkes za každou radu!

    Odpovědi

    23.3.2012 22:36 DK
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    pouzijte nginx, nenarocny, jednoduchy na nastaveni, ochrana proti ddos a slowloris utokum...
    Ruža Becelin avatar 24.3.2012 00:01 Ruža Becelin | skóre: 40 | blog: RuzaBecelinBlog
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    To je rada, jak noha (kdyz nemate sojovku, dejte tam spenat...).

    Nic proti nginx (pouzivam ho taky jako reverzni proxy), ale tazatel se pta, jak to vyresit v Apache...
    24.3.2012 08:52 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    Pokud se vám v prohlížeči zobrazuje v adresním řádku protokol https, je komunikace šifrovaná. V případě HTTPS bude šifrovaná komunikace vždy mezi klientem a proxy serverem, ten musí šifrovanou komunikaci vybalit, a pak s ní něco udělá dál. Pokud je Tomcat na stejném stroji nebo ve stejné důvěryhodné síti, je zbytečné komunikaci znovu šifrovat a je lepší mezi proxy a Tomcatem použít obyčejné HTTP. Certifikát a vše týkající se HTTPS pak bude jen na Apachi. Ještě můžete (snad) nastavit proxy tak, že bude Tomcatu v hlavičkách předávat informaci o tom, že komunikace byla šifrovaná, pak to lze i z Tomcatu ze servletu zjistit voláním ServletRequest.isSecure().

    Část konfiguráku mi připadá zbytečná, nebo tam opravdu máte nějaké PHP nebo CGI skripty?
    <Files ~ "\.(cgi|shtml|phtml|php3?)$">
      SSLOptions +StdEnvVars
    </Files>
    
    Jinak máte nějaký důvod, proč tam cpát ten proxy server? Bude na tom portu 80 a 443 poskytovat ještě nějaké jiné služby? Jinak můžete vystavit do internetu rovnou Tomcat a bude to celé jednodušší...
    26.3.2012 17:34 Nautil | skóre: 2 | Praha
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL

    Díky za radu. Ano, server s Tomcatem (backend) leží v důvěryhodné síti, takže komunikace Proxy - Tomcat nemusí být šifrovaná. Nebyl jsem si jist, zda HTTPS komunikace nutně musí být end-to-end, tedy z klienta až k backendovému serveru, nebo stačí, když bude šifrovaná jen část, která jde k frontendu. Proto tedy použiju obyčejné HTTP.

    Část toho konfiguráku je opravdu zbytečná, půjde pryč.

    Proxy je tam kvůli snížení zátěže na server s Tomcatem, a časem z něho taky bude load balancer - backendových serverů přibyde.

    26.3.2012 21:03 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    Nebyl jsem si jist, zda HTTPS komunikace nutně musí být end-to-end, tedy z klienta až k backendovému serveru, nebo stačí, když bude šifrovaná jen část, která jde k frontendu.
    Naopak, HTTPS je vždy mezi klientem a serverem/proxy, kde je dané HTTPS spojení zakončeno. Tam se musí dešifrovat, ověřit certifikáty atd., a případně je možné odsud navázat další spojení (HTTP i HTTPS), kterým se přenese dešifrovaný obsah spojení. Nejsnazší je vždy si uvědomit, že HTTPS chrání proti útokům MITM -- takže uprostřed komunikace nemůže být nikdo, kdo by s komunikací nějak manipuloval nebo ji mohl číst.
    24.3.2012 12:19 alkoholik | skóre: 40 | blog: Alkoholik
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    V soucasne chvili to sifruje mezi klientem a proxy. Jestli chcete sifrovat i mezi proxy a backendem, musite si nastavit SSLProxyEngine On a zmenit ProxyPass /app1 http://back.dom.cz:8080/app1 na ProxyPass /app1 https://back.dom.cz:8080/app1
    24.3.2012 12:22 alkoholik | skóre: 40 | blog: Alkoholik
    Rozbalit Rozbalit vše Re: Apache2 proxy SSL, Tomcat, SSL
    Samozrejme v tu chvili musite na backendu nahodit na portu 8080 SSL virtual a zmenu http -> https provest u vsech ctyr radku.
    29.3.2012 12:48 Nautil | skóre: 2 | Praha
    Rozbalit Rozbalit vše worker already used by another worker
    Díky za rady!

    Ještě bych měl jeden dotaz. Nastavil jsem proxy, aby HTTP (http://front.dom.cz) směrovala na http://back1.dom.cz/app1 a HTTPS (https://front.dom.cz) aby směrovala na http://back2.dom.cz/app1.

    Vytvořil jsem dva virtual hosty s touto konfigurací:
    front.dom.cz.conf
    NameVirtualHost 10.0.0.1:80
    <VirtualHost 10.0.0.1:80>
        ServerName 10.0.0.1
        ServerAdmin admin@dom.cz
        ProxyRequests Off
        ProxyPreserveHost On
        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>
        ProxyPass               /app1   http://back1.dom.cz:8080/app1
        ProxyPassReverse        /app1   http://back1.dom.cz:8080/app1
        ProxyPass               /       http://back1.dom.cz:8080/app1
        ProxyPassReverse        /       http://back1.dom.cz:8080/app1
    
        DocumentRoot /srv/www/vhosts/front.dom.cz
        ErrorLog /var/log/apache2/front.dom.cz-error_log
        CustomLog /var/log/apache2/front.dom.cz-access_log combined
        #HostnameLookups Off
        #UseCanonicalName Off
        #ServerSignature On
        <Directory "/srv/www/vhosts/front.dom.cz">
            Options Indexes FollowSymLinks
            AllowOverride None
            Order allow,deny
            Allow from all
        </Directory>
    </VirtualHost>
    
    front.dom.cz_ssl.conf
    <IfDefine SSL>
    <IfDefine !NOSSL>
    <VirtualHost 10.0.0.1:443>
            ServerName 10.0.0.1:443
            ServerAdmin adminn@dom.cz
            ProxyRequests Off
            ProxyPreserveHost On
            <Proxy *>
              Order deny,allow
              Allow from all
            </Proxy>
            ProxyPass        /app1          http://back2.dom.cz:8080/app1
            ProxyPassReverse /app1          http://back2.dom.cz:8080/app1
            ProxyPass        /              http://back2.dom.cz:8080/app1
            ProxyPassReverse /              http://back2.dom.cz:8080/app1
    
            DocumentRoot "/srv/www/vhosts/front.dom.cz_ssl"
            ErrorLog /var/log/apache2/front.dom.cz_ssl-error_log
            TransferLog /var/log/apache2/front.dom.cz_ssl-access_log
            CustomLog /var/log/apache2/front.dom.cz_ssl-request_log ssl_combined
            <Directory "/srv/www/vhosts/front.dom.cz_ssl">
              Options Indexes
              AllowOverride None
              Allow from from all
              Order allow,deny
            </Directory>
    
            SSLEngine on
            SSLProtocol all -SSLv2
            SSLCipherSuite HIGH:MEDIUM
            SSLCertificateFile /etc/apache2/ssl.crt/ap2server.crt
            SSLCertificateKeyFile /etc/apache2/ssl.key/ap2server.key
            SSLCertificateChainFile /etc/apache2/ssl.crt/newca.crt
            SSLCACertificateFile /etc/apache2/ssl.crt/newca.crt
    </VirtualHost>
    
    </IfDefine>
    </IfDefine>
    
    Při startu Apache si mi webový server stěžuje
    ...
    Starting httpd2 (prefork) [Thu Mar 29 12:32:28 2012] [warn] worker http://back1.nkp.cz:8080/app1 already used by another worker
    [Thu Mar 29 12:32:28 2012] [warn] worker http://back2.nkp.cz:8080/app1 already used by another worker
    Apache/2.2.12 mod_ssl/2.2.12 (Pass Phrase Dialog)
    ...
    
    Na webu jsem našel, že se to stává, když je nějaká proxy direktiva zadaná vícekrát. Ale já tam nemám nic, co by se opakovalo... Nebo mám? Když v prvním konfiguráku zakomentuju řádky
        ProxyPass               /       http://back1.dom.cz:8080/app1
        ProxyPassReverse        /       http://back1.dom.cz:8080/app1
    
    tak si Apache už nestěžuje, ale pak zas nefunguje přesměrování http://front.dom.cz na http://back1.dom.cz/app1

    Nemám tušení, proč mu to vadí. Je to vlastnost Apache, nebo moje chyba? :-)
    29.3.2012 13:16 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: worker already used by another worker
    Myslím, že přebytečné jsou naopak řádky s /app1
        ProxyPass               /app1   http://back1.dom.cz:8080/app1
        ProxyPassReverse        /app1   http://back1.dom.cz:8080/app1
    

    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.