Strona główna » Blog » Jak zarządzać wieloma domenami i usługami, mając tylko jeden publiczny adres IP

Jak zarządzać wieloma domenami i usługami, mając tylko jeden publiczny adres IP

Posiadanie pojedynczego publicznego adresu IP od dostawcy internetu staje się problematyczne, gdy chcemy uruchomić więcej niż jedną usługę w sieci firmowej, ponieważ router zazwyczaj pozwala na przekierowanie portów 80 (HTTP) i 443 (HTTPS) tylko do jednego urządzenia wewnętrznego. Powstaje pytanie, jak pogodzić działanie bloga na WordPressie (blog.pl) oraz chmury Nextcloud (chmura.pl), gdy dysponujemy tylko jednym adresem IP.

Reverse Proxy (Odwrotne Proxy)

Reverse Proxy to fundament operacji, działający jako cyfrowy sekretariat. Zamiast kierować ruch z internetu bezpośrednio do serwerów, kieruje się go na to urządzenie pośredniczące. Gdy użytkownik wpisuje adres, np. blog.pl, zapytanie trafia do proxy, które analizuje nagłówek hosta i na tej podstawie łączy użytkownika z odpowiednim serwerem, np. o wewnętrznym IP 192.168.1.50, kierując go do właściwej usługi, jak WordPress.

Najpopularniejsze narzędzia do wyboru

Jeśli dopiero zaczynasz przygodę z reverse proxy, Nginx Proxy Manager będzie idealnym wyborem ze względu na intuicyjny interfejs graficzny, który umożliwia szybką konfigurację. Dla użytkowników Dockera, Traefik oferuje automatyczne wykrywanie i konfigurowanie ruchu dla nowych kontenerów. Natomiast Caddy to lekki serwer, który samodzielnie zarządza certyfikatami SSL, zdejmując z Ciebie ten obowiązek.

Jeden adres IP na zewnętrznym VPS

Jeśli Twój jedyny publiczny adres IPv4 znajduje się poza Twoją firmą, na przykład na serwerze VPS w chmurze, idealnym rozwiązaniem jest przeniesienie Reverse Proxy na ten VPS i utworzenie bezpiecznego, szyfrowanego tunelu do Twojej sieci lokalnej. Pangolin, lekkie i opensource’owe narzędzie do tworzenia tuneli odwrotnych, doskonale się do tego nadaje. Działa to w ten sposób, że Twój serwer (klient) inicjuje bezpieczne połączenie wychodzące do serwera VPS, co pozwala uniknąć otwierania portów w routerze lub zaporze sieciowej, ponieważ połączenie jest nawiązywane z wnętrza Twojej sieci. Dzięki temu uzyskujesz bezpieczny dostęp do zasobów w swojej sieci lokalnej, wykorzystując publiczny adres IPv4 serwera VPS.

Działanie tunelu opiera się na następującej architekturze: ruch z Internetu kierowany jest poprzez domenę (Domena.pl) do serwera VPS o publicznym adresie IP. Następnie, za pomocą tunelu Pangolin, ruch ten przekierowywany jest do serwera lokalnego, gdzie działa klient Pangolin. Na serwerze tym mogą być uruchomione różne usługi, na przykład WordPress (na adresie 192.168.1.50) oraz chmure (na adresie 192.168.1.60).

Cloudflare Tunnels (Bez publicznego IP)

Cloudflare Tunnel to doskonała alternatywa, jeśli podobała Ci się koncepcja odwrotnego tunelu z Pangolinem, ale nie chcesz kupować VPS ani go konfigurować. Działa na podobnej zasadzie, z tą różnicą, że rolę Twojego VPS-a przejmuje globalna infrastruktura Cloudflare. Instalujesz agenta Cloudflared na swoim komputerze, który łączy się z serwerami Cloudflare, tworząc bezpieczny tunel. Następnie, w panelu Cloudflare, przypisujesz swoje domeny do tego tunelu, a Cloudflare kieruje ruch z całego świata przez tunel prosto do Twojego serwera.

Certyfikaty SSL

Dla osoby nietechnicznej, zielona kłódka w przeglądarce może wydawać się skomplikowana, ale warto zrozumieć, kto odpowiada za bezpieczne i szyfrowane połączenie w różnych sytuacjach. W przypadku klasycznego proxy, takiego jak NPM lub Caddy, to samo proxy pozyskuje darmowy certyfikat od Let’s Encrypt i szyfruje ruch od routera użytkownika. Pangolin posiada wbudowany mechanizm, który automatycznie generuje certyfikaty dla domen podłączonych do tunelu, eliminując potrzebę instalacji NPM-a. Natomiast w Cloudflare Tunnel, Cloudflare bierze na siebie pełną odpowiedzialność, zapewniając automatycznie certyfikat SSL dla strony, ponieważ cały ruch internetowy przechodzi najpierw przez ich infrastrukturę, a ruch wewnątrz tunelu jest również automatycznie szyfrowany.

Co wybrać?

Posiadam publiczny adres IP, korzystam z domowego routera i standardowego światłowodu. Klasyczne Reverse Proxy (np. Nginx Proxy Manager / Caddy) to najprostsze i najbardziej bezpośrednie rozwiązanie. Wystarczy przekierować porty na routerze, a wszystko działa lokalnie, bez potrzeby korzystania z zewnętrznych serwerów. Nie mam publicznego adresu IP, ale wymagam pełnej kontroli nad moimi danymi. W takim przypadku Zewnętrzny VPS + Pangolin zapewni, że ruch będzie przechodził przez Twój prywatny serwer w chmurze, eliminując dostęp osób trzecich do przesyłanych danych. Jeśli nie posiadam publicznego IP i nie chcę kupować ani konfigurować VPS-a, a zależy mi na maksymalnej prostocie, Cloudflare Tunnel jest idealnym rozwiązaniem – darmowe i bezobsługowe. Wymaga jedynie instalacji agenta, a cała konfiguracja odbywa się w panelu Cloudflare.

Przewijanie do góry