Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).
ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.
LF AI & Data Foundation patřící pod Linux Foundation spustila Open Platform for Enterprise AI (OPEA).
Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.
Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.
Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.
#HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.
Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.
Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).
http://front.dom.cz --> http://back.dom.cz:8080/app1V 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/app1Schéma HTTPS
https://front.dom.cz --> https://back.dom.cz:8443/app1Zobrazovat se má
https://front.dom.cz/app1Popravdě, 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!
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šší...
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.
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.
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/app1tak 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?
/app1
ProxyPass /app1 http://back1.dom.cz:8080/app1 ProxyPassReverse /app1 http://back1.dom.cz:8080/app1
Tiskni Sdílej: