Открыть браузер сервера в локальном браузере

Открыть браузер сервера в локальном браузере

Когда я подключаюсь к своему серверу по ssh и делаю там свои дела. Как я могу, например, открыть браузер на удаленной машине и отобразить его на своей локальной машине,

Я запускаю Ubuntu Desktop на локальной машине. На стороне сервера я использую Ubuntu 16.04 Server. Это сервер разработки, поэтому у меня там есть скрипт python, который использует:

webbrowser.open("https://" + url)

чтобы открыть браузер по умолчанию с нужным мне URL.

Другими словами, как я могу, войдя на сервер, открыть ссылку на своей локальной машине?

Говоря более общими словами, как я могу использовать свой удаленный сервер Ubuntu так, как будто это мой локальный компьютер?

С:

  • Серверной машине НЕ НУЖЕН графический интерфейс.
  • Я не хочу устанавливать серверный графический интерфейс и использовать УДАЛЕННЫЙ РАБОЧИЙ СТОЛ.

Как мне получить доступ к собственному серверу разработки и открыть простую программу на моем локальном компьютере?

решение1

Самый простой способ сделать это — использовать прокси-сервер SSH socks. Из man-страницы:

-D [адрес_привязки:]порт

Указывает локальную «динамическую» переадресацию портов на уровне приложения. Это работает путем выделения сокета для прослушивания порта на локальной стороне, опционально привязанного к указанному bind_address. Всякий раз, когда устанавливается соединение с этим портом, соединение перенаправляется по защищенному каналу, а затем протокол приложения используется для определения того, куда подключаться с удаленной машины.

Браузеры также могут использовать socks proxy. Как настроить его, зависит от того, какой браузер вы используете, но я обычно использую один браузер для работы через socks, а другой — для работы без прокси.

Сначала запустите ssh с помощью следующей команды:

ssh -D1080 [email protected]

Это запустит ssh, создав прокси-сервер socks для удаленного хоста, прослушивающего порт 1080. В браузере введите прокси-сервер socks на локальном хосте, порт 1080. В Firefox это находится в разделе «Настройки» - «Дополнительно» - «Сеть»:

Настройки прокси-сервера Firefox

Это позволит перенаправить трафик из браузера на удаленную машину, и будет казаться, что источником трафика является удаленная машина.

решение2

Сначала в sshd_config вашего сервера включите переадресацию X11 следующим образом:

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

Затем подключитесь по ssh к вашему серверу:

$ ssh user@server -C -X

Затем запустите Firefox.

$ firefox

Связанный контент