Czy mogę użyć tunelu SSH, aby uzyskać dostęp do serwera WWW, który nasłuchuje na innym adresie IP / porcie na tym samym serwerze?

9

Mam serwer WWW, który nie jest jeszcze gotowy do ogólnej dostępności, ale nadal chciałbym przetestować niektóre rzeczy zdalnie. Czy mogę wykorzystać tunel SSH, aby połączyć się z serwerem, a następnie użyć tunelu, aby skierować się do usługi internetowej działającej na tym samym serwerze? Jeśli tak to jak?

Zdaję sobie sprawę, że wdrożenie wyjątków zapory byłoby łatwiejsze, ale obecnie nie jest to możliwe.

Przepraszam, jeśli to jest mylące. Zgadzam się, że jest to wyjątkowy scenariusz.

CentOS 5.x

Mike B.
źródło

Odpowiedzi:

8

Wiem, że zarządzanie cherokee działa w ten sposób, więc powiedzmy, że powiązałeś swój serwer z lokalnym hostem na porcie 8080

ssh -L 8080:localhost:8080 your_servers_ip

Następnie można uzyskać dostęp do zdalnego interfejsu przez http: // localhost: 8080, a każde żądanie zostanie przesłane do zdalnego adresu IP z uruchomionym serwerem WWW.

Lucas Kauffman
źródło
Dzięki. Na marginesie, musiałem również zmodyfikować plik hosts, aby wykorzystać adres (zgodnie z oczekiwaniami).
Mike B
4

To, co powiedział Lucas, gdzie „localhost” może być również dowolnym adresem IP z hosta SSH.

Zauważ, że jeśli używasz nazw wirtualnych hostów, musisz również wykonać hack / etc / hosts, aby dodać coś do istniejącej linii 127.0.0.1, na przykład:

127.0.0.1   localhost  secretwebserver.example.com

Twoja przeglądarka może następnie użyć http://secretwebserver.example.com:8080 .

cjc
źródło