Używam Ubuntu jako systemu operacyjnego dla komputerów stacjonarnych i serwerów. Kiedy jestem zalogowany do serwera poprzez ssh
na terminal
i muszę zobaczyć na stronie internetowej (localhost) na korzystanie z serwera I w3m ( w3m localhost
).
Niestety w3m nie jest tak łatwy w obsłudze, ponieważ strona ma kilka dużych menu i używa jQuery. Zastanawiam się więc, czy można użyć przeglądarki na moim pulpicie, aby połączyć się z serwerem za pośrednictwem SSH z prawdziwą przeglądarką (Firefox lub Chrome).
Zasadniczo wymagałoby to połączenia przeglądarki na moim pulpicie z serwerem za pośrednictwem SSH przy pomocy username
i password
, i otwarcia na tym serwerze localhost
.
Czy jest to możliwe domyślnie, czy są jakieś dodatki do przeglądarki Firefox / Chrome? Wolałbym Firefox.
źródło
Odpowiedzi:
Użyj przekierowania portów ssh.
Połącz się ze zdalnym serwerem za pomocą czegoś takiego:
Teraz wskaż lokalną przeglądarkę na localhost: 8080. Powinien zostać przesłany do localhost: 80 na zdalnym serwerze.
źródło
CZĘŚĆ 1
Zrób socks proxy z ssh!
Teraz otwórz preferencje Firefoksa, przejdź do Zaawansowane> Sieć> Ustawienia. Wybierz Ręczna konfiguracja proxy. Umieść localhost dla SOCKS Host, wstaw 9999 dla portu. Przetestuj to, przechodząc na stronę http://whatismyip.org lub podobną stronę.
Ponieważ powiedziałeś, że próbujesz uzyskać dostęp do strony internetowej na localhost (względem twojego serwera), możesz nie chcieć wykluczać localhost i 127.0.0.1 z używania proxy. Oczywiście możesz po prostu użyć lokalnego adresu IP serwera.
Jeśli nie podoba mi się moje wyjaśnienie, te linki pobudziły moją pamięć podczas pisania:
http://linux.die.net/man/1/ssh
http://embraceubuntu.com/2006/12/08/ssh-tunnel-socks-proxy-forwarding-secure-br Przeglądaj/
https://calomel.org/firefox_ssh_proxy.html
CZĘŚĆ 2
Wystąpił błąd, nie
channel 3: open failed: connect failed: Connection refused
ma absolutnie nic wspólnego z ssh. Najwyraźniej próbujesz uzyskać dostęp do jakiegoś mysql. Jest to dodatkowe wyzwanie, ponieważ mysql domyślnie blokuje dostęp z tuneli ssh. Nie robię mysql, więc nie wiem o czym mówię przez resztę tego. Na końcu cytuję odpowiednie fragmenty linku, które powinieneś przeczytać.Otwórz /etc/mysql/my.cnf i poszukaj sekcji [mysqld]. Jeśli zobaczysz wiersz „pomiń połączenie sieciowe”, skomentuj go. Dodaj „bind-address = 127.0.0.1” (oczywiście bez cudzysłowów).
http://www.debuntu.org/port-forwarding-and-channel-3-open-failed-connect-failed-Connection-refused
Część 3
Rozwiązanie Javiera
ssh -L 8080:localhost:80 user@remoteserver
jest fantastyczne, jeśli potrzebujesz tylko dostępu do jednej lokalizacji. Umożliwia dostęp do localhost i pozostawia resztę Internetu w spokoju. Moje rozwiązanie z ssh -D idzie dalej i faktycznie przekieruje wszystkie twoje żądania http do zdalnego serwera. Oczywiście możesz tego nie chcieć. Ale przydało mi się, gdy chciałem dostępu http do wszystkich maszyn w sieci lub gdy nie chciałem, aby moje żądania http przechodziły przez sieć, do której jestem podłączony (tj. Bankowość internetowa na starbucks. Cały mój ruch idzie przez tunel ssh do mojego domowego Internetu).źródło
channel 3: open failed: connect failed: Connection refused
. Nie miałem czasu, żeby to sprawdzić, ale może wiesz, co to może być?-D
opcji. To jest powód, dla którego nie zadziałało i nie będzie działać, ponieważ nie mogę połączyć się z serwerem jako root (ze względów bezpieczeństwa).Możesz używać przekazywania X przez SSH, aby wszystkie aplikacje X uruchomione na serwerze pojawiały się na twoim komputerze osobistym.
ssh -X myserver
.źródło