Reverzní HTTP proxy server 4smart.cz

Řešení, které zvyšuje bezpečnost i snižuje náklady na systémové prostředky, protože není třeba veřejné IPv4 adresy. Vhodný pro všechny, kteří chtějí provozovat svůj web nebo weby a obejdou se bez plnohodnotné podpory poštovních služeb.

K čemu obvykle slouží reverzní HTTP proxy server

1) Ke zvýšení bezpečnosti - podrobné vysvětlení

2) Ke snížení nákladů - díky tomu, že nepotřebujete veřejnou IPv4 adresu, která je za propůjčení zpoplatněna, ušetříte až 40 Kč měsíčně. Dalším faktem je, že Váš virtuální server s neveřejnou IPv4 adresou není přímo adresovatelný z internetu a tedy díky tomu dochází i ke snížení nákladů za síťové přenosy a případně i diskové operace. Existuje spousta automatizovaných nástrojů, robotů, kteří běžně skenují veřejné IP adresy a pokoušejí se například přihlašovat přes SSH, nebo přes FTP, aby pak mohly zneužít slabý server k rozesílání spamu, k DDoS nebo jej prostě vykrást. S tím spojená síťová komunikace tedy s neveřejnou IPv4 adresou odpadá.

Co všechno zvládnou proxy servery 4smart.cz

1) Podporované protokoly - Proxy servery 4smart.cz podporují protokoly HTTP, HTTPS (díky SNI proxy) a SMTP pouze pro příjem pošty. Pokud tedy chcete zpřístupnit svůj web, a to i jeho zabezpečený obsah (https), není použití proxy serverů 4smart.cz omezením ani problémem. Vše funguje transparentně i pro https.

2) Rychlost - Změna nastavení proxy serveru, s výjimkou poštovního subsystému pro Vaši doménu, se projeví do minuty.

3) Spárovanost s přidělovanými subdoménami 4smart.eu - Na 4smart.cz automaticky dostanete vlastní doménu ke každému VPS, jehož hostname není „localhost“. Pokud má Váš VPS navíc neveřejnou IPv4 adresu, dostane automaticky doménu www.[hostname_bez_tld].4smart.eu. Tato doména je automaticky spárována přes naše doménové servery s reverzními proxy servery a lze ji ihned zadat do prohlížeče. Vše je automatizované, rychlé, spolehlivé a pro uživatele bezpracné.

4) Odolnost proti výpadku HW uzlu - Pro automaticky přidělované subdomény 4smart.eu je celá funkčnost postavená tak, že je odolná vůči selhání některého z HW uzlů, kde právě běží jeden nebo druhý proxy server. Naše doménové servery ns1.4smart.cz a ns2.4smart.cz se totiž nacházejí na stejných HW uzlech, jako proxy1.4smart.cz a proxy2.4smart.cz. Pokud neběží doménový server ns2.4smart.cz, neodkazuje nic na proxy2.4smart.eu a podobně, pokud neběží ns1.4smart.cz, neodkazuje nic na proxy1.4smart.cz. Pro domény jiné, než 4smart.eu může uživatel nastavit u svého registrátora CNAME na takto přidělenou subdoménu 4smart.eu. Tím zajistí, že i pro jiné domény bude zachována vysoká dostupnost.

Nevýhody spojené s použitím pouze neveřejné IPv4 adresy a rev. HTTP proxy serveru

1) mírně složitější správa virtuálního serveru na první pohled - Jak již bylo řečeno, v případě reverzního HTTP proxy serveru si Váš virtuální server vystačí pouze s neveřejnou IPv4 adresou, která ale není přímo adresovatelná z internetu. Provádět správu takového virtuálního serveru přes SSH pak znamená nutnost využít funkce mapování portů, aby bylo možné se do VPS vůbec přihlásit. Mapováním portů se de-facto přihlašujete na veřejnou IPv4 adresu HW uzlu a nestandardní port TCP/UDP a odtud je komunikace směrována na neveřejnou IPv4 adresu Vašeho virtuálního serveru a standardní port TCP/UDP.

2) nutnost použít „externí“ SMTP server pro případné odesílání pošty - Virtuální server, který má přidělenou pouze neveřejnou IPv4 adresu a který má sloužit i k odesílání pošty, musí pro tento účel používat „externí“ poštovní server. Takovým může být například poštovní server Google. Samotný virtuální server s neveřejnou IPv4 adresou tedy musí přeposílat odesílané emaily na SMTP server, který má veřejnou IPv4 adresu a korektně nastavený doménový A-záznam a PTR-záznam. Pokud pro tento účel použijeme poštovní server Google, spolehlivost tohoto řešení pak stojí na samotném Google. Google přitom umožňuje odesílat emaily i z jiných adres, než je adresa vlastního účtu Gmail. Toto nastavení je třeba povolit. V případě příjmu pošty u virtuálního serveru s pouze neveřejnou IP adresou je celá věc snadnější. V tomto případě je třeba nastavit doménový MX záznam na IP adresu reverzního HTTP proxy serveru, který se chová nejenom jako HTTP proxy, ale i jako MAIL proxy server a poštu bude předávat Vašemu serveru. Spolehlivost tohoto řešení ovšem nelze 100% garantovat, i když je vysoká. Důležité je také vhodně nakonfigurovat Váš poštovní server ve virtuálním serveru, aby zprávy z našeho proxy serveru mohl přijímat. Pokud tedy již nyní víte, že se bez služeb poštovního serveru neobejdete a odesílání pošty z Vašeho VPS je pro Vás vlastnost, se kterou počítáte, není pro Vás reverzní HTTP proxy to pravé řešení a tedy bez veřejné IPv4 adresy se neobejdete! Uvažovat o tom, že virtuálnímu serveru kromě neveřejné IPv4 adresy přidělíte ještě IPv6 adresu, sice logicky vzato jde (jako náhradní řešení), ale se spolehlivostí poštovních služeb (serverů) v internetu, které využívají IPv6, to ještě není úplně růžové.

3) reload nastavení poštovního subsystému každou hodinu - Proxy servery reloadují svoje nastavení poštovního subsystému každou hodinu. Pokud proxy servery používáte i pro příjem pošty (díky nastavenému MX záznamu), je třeba s tím počítat.

Kde povolím/nastavím reverzní HTTP proxy server pro svůj virtuální server

Veškeré nastavení se realizuje přes webové administrační rozhraní www.4smart.cz. Nejprve je třeba se přihlásit. Pak u potřebného virtuálního serveru zvolíte Nastavení, následně na horní liště Nastavení komunikace a nyní přidělíte neveřejnou IPv4 adresu (pokud přidělena není). Následně se zobrazí další nastavení, viz obrázek dole, které umožňuje zadat domény, pro které má reverzní HTTP proxy server předávat HTTP požadavky Vašemu virtuálnímu serveru na jeho neveřejnou IPv4 adresu.

Nastavení domény, nebo její odebrání z nastavení, není platné okamžitě. Reload nastavení se provádí automaticky každou hodinu. O stavu Vašeho nastavení Vás informuje webové rozhraní 4smart.cz, jak je patrné na obrázku.

Standardní i nestandardní příklady použití reverzního HTTP proxy 4smart.cz

Běžný webhosting

Jde o to nejobvyklejší použití této služby. Váš virtuální server může hostovat i více webů (různých domén) a komunikaci s klienty zprostředkovává reverzní proxy server.4smart.cz. Jinak řečeno - Váš jediný virtuální server s jedinou neveřejnou IPv4 adresou může hostovat weby pro více než jednu doménu. V praxi se taková konfigurace označuje jako Name-based virtualhost. Následující obrázek popisuje chování pro příklad, kdy uživatel chce ve svém webovém prohlížeči zobrazit stránku www.examle.cz.

Pro správnou funkčnost je třeba provést několik kroků:

  • U registrátora své domény nastavit tzv. A-záznamy na IP adresy reverzních proxy serverů, tj. 77.93.202.118 a 77.93.202.15.
  • Ve webovém administračním rozhraní 4smart.cz přiřadit u příslušného virtuálního serveru tuto doménu do nastavení reverzního HTTP proxy serveru
  • Počkat než se změny v nastavení DNS projeví - změny se mohou projevit i za několik hodin.

Ve výsledku to potom funguje takto:

  1. Uživatel zadá do prohlížeče webovou adresu, zde www.example.cz a jeho systémový resolver kontaktuje DNS server za účelem získání IP adresy.
  2. Počítač uživatele získává od DNS serveru odpověď, že pro doménu www.example.cz je nastavena IP adresa 77.93.202.118 nebo 77.93.202.15 (některý z reverzních HTTP proxy serverů 4smart.cz).
  3. Počítač uživatele posílá HTTP požadavek (metodou GET) k získání obsahu titulní stránky domény www.example.cz, tento požadavek adresuje reverznímu HTTP proxy serveru.
  4. Reverzní HTTP proxy server ve své databázi najde dotazovanou doménu a k ní přiřazenou neveřejnou IPv4 adresu a požadavek předává tomuto virtuálnímu serveru.
  5. Virtuální server odpovídá na HTTP požadavek reverznímu HTTP proxy serveru se stavovým kódem 200 OK a požadovaným obsahem.
  6. Reverzní HTTP proxy server přeposílá tuto odpověď klientovi, který se dotazoval.

Neveřejný webhosting pro uzavřenou skupinu uživatelů nebo pro účely vývoje a ladění webu

Jde o trochu méně obvyklý způsob, kdy máme například skupinu uživatelů a nějaký jejich interní web, ke kterému by neměl mít přístup úplně každý. Nicméně toto řešení není samo o sobě nějak extra bezpečné, pouze není transparentní. Chybí zde totiž nastavení DNS serveru, tedy příslušný A-záznam. Místo toho je toto nastavení realizováno na každém počítači klienta v jeho /etc/hosts (Linux), případně %SystemRoot%\System32\drivers\etc\hosts (Windows). Takže jen počítače klientů de-facto vědí, že existuje nějaká doména www.example.cz, která je hostovaná přes reverzní HTTP proxy servery 4smart.cz na jejich IP 77.93.202.118 a 77.93.202.15. Kdokoliv jiný, nezainteresovaný, kdo zadá do svého prohlížeče doménu www.example.cz a nemá příslušné nastavení v /etc/hosts (Linux) nebo podobně ve Windows, nedostane platnou odpověď. Samotné zadání IP adresy reverzního HTTP proxy serveru do pole pro URL v prohlížeči povede pouze ke zobrazení informace o tom, že jde o Reverzní HTTP Proxy server 4smart.cz.

Pro správnou funkčnost je třeba provést několik kroků:

  • S pomocí textového editoru (např. notepad ve Windows, kwrite v Linuxu ; žádný LibreOffice nebo MS Office !!!) editovat soubor hosts a přidat do něj řádek:
77.93.202.118  www.example.cz
  • Ve webovém administračním rozhraní 4smart.cz přiřadit u příslušného virtuálního serveru tuto doménu do nastavení reverzního HTTP proxy serveru.
  • Počkat než se změny v nastavení reverzního HTTP proxy serveru na straně 4smart.cz projeví. K reloadu nastavení dochází každou hodinu, jak bylo zmíněno výše.

Ve výsledku to potom funguje takto:

  1. Uživatel zadá do prohlížeče webovou adresu, zde www.example.cz. Počítač uživatele (jeho resolver) nahlédne podle nastavení do souboru hosts a s jeho pomocí získává pro tuto doménu IP adresu reverzního HTTP proxy serveru 77.93.202.118.
  2. Počítač uživatele posílá HTTP požadavek (metodou GET) k získání obsahu titulní stránky domény www.example.cz, tento požadavek adresuje reverznímu HTTP proxy serveru.
  3. Reverzní HTTP proxy server ve své databázi najde dotazovanou doménu a k ní přiřazenou neveřejnou IPv4 adresu a požadavek předává tomuto virtuálnímu serveru.
  4. Virtuální server odpovídá na HTTP požadavek reverznímu HTTP proxy serveru se stavovým kódem 200 OK a požadovaným obsahem.
  5. Reverzní HTTP proxy server přeposílá tuto odpověď klientovi, který se dotazoval.

 
reverzni_http_proxy_server.txt · Poslední úprava: 2017/06/23 14:28 autor: root