Назад | Перейти на главную страницу

Использование SSH-туннеля для просмотра веб-страниц

Настройка:

В настоящее время то, что я делаю, что работает:

Чего бы я хотел добиться:

Запустите браузер на моем компьютере с Windows и, используя какой-то туннель ssh, просматривайте веб-страницы без каких-либо ограничений.

Я считаю, что это называется прокси-сервером или что-то в этом роде. Но должен признать, что немного заблудился.

Насколько я понял, мне пришлось бы настроить туннель в замазку, например, прослушивая порт 8889 в окне Windows. Затем я смогу настроить браузер для использования прокси, расположенного по адресу localhost: 8889

Настал момент, когда все становится размытым.

В окне Linux мне нужно было бы настроить ProxyCommand в файле конфигурации SSH или что-то в этом роде, чтобы выполнить перенаправление портов? Кроме того, нужно ли мне запускать прокси, например squid, на Linux-сервере? Какой-то учебник я нашел опишите настройку с Apache:

Или я совершенно не в том направлении, и мне нужно запускать ProxyTunnel как в окнах, так и в Linux?

Спасибо за вашу помощь.

Изменить: на самом деле вопрос больше: что мне делать на стороне Linux в туннеле

С помощью ssh вы можете настроить «динамическую переадресацию портов». Видеть http://www.panix.com/~ruari/censorship.html для инструкций. По сути, вы просто устанавливаете порт на своем локальном компьютере, который выглядит как прокси-сервер SOCKS5. Затем настройте свой браузер на использование localhost: port в качестве прокси.

Я бы дважды подумал, прежде чем сделать такое. В некоторых средах такой обход корпоративной безопасности является основанием для увольнения.

При обычной переадресации портов вы сможете просматривать только один сайт таким образом.

Если вы можете редактировать настройки локального прокси (в чем я сомневаюсь), тогда вы можете запустить прокси на стороне SSH-сервера и перенаправить на него порт.

Некоторые клиенты и серверы SSH поддерживают схемы, подобные VPN более низкого уровня, но если у вас нет полного административного контроля (чего, я предполагаю, нет, поскольку ваше описание подразумевает очень заблокированную среду).

Одним из решений может быть использование переадресации портов для получения доступа к машине на удаленном конце, на которой работает VNC, RDC или аналогичный. Если у вас есть удаленный контроль над этой машиной, вы можете просматривать ее, используя его, хотя, конечно, это будет медленнее.

Есть две части, чтобы заставить это работать, поэтому я рассмотрю их отдельно.

Подключение к вашему серверу:

Как вы уже упоминали, все, с чем вы можете разговаривать, это прокси на 443 и 80, вам нужно будет туннелировать ваше SSH-соединение через прокси. Вы делаете это, говоря Putty использовать прокси-сервер для подключения. В меню «прокси». Выберите HTTP, а затем введите данные для корпоративного прокси.

Судя по вашему сообщению, соединение работает нормально.

Настройте Putty для создания прокси-сервера SOCKS на локальном компьютере

И putty, и OpenSSH поддерживают открытие прокси-сервера SOCKS. Для OpenSSH вы должны использовать:

ssh -D <port>

Затем укажите в браузере этот порт. В putty вы создаете «динамический» порт вперед. Вы найдете его в меню «Туннели». Введите желаемый порт прослушивания, а затем введите все, что вам нравится, в качестве пункта назначения (он игнорируется для динамической пересылки). Затем вы можете указать в настройках прокси-сервера своего браузера этот localhost: <port>, и он должен работать.

Для получения дополнительной информации соответствующая часть документации по шпатлевке находится по адресу http://tartarus.org/~simon/putty-snapshots/htmldoc/Chapter3.html#using-port-forwarding.


Как писали другие, вы, возможно, не захотите обходить корпоративную фильтрацию, поскольку это не то, что вы можете объяснять :).

Возможно, вам не повезло, что вы на самом деле находитесь под маршрутизатором Deep Packet Inspection, и в этом случае ваш SSH-трафик через ЛЮБОЙ порт будет отброшен.

Решением ЭТОЙ проблемы является STunnel в сочетании с SSH.

Я лично использую прокси-сервер privoxy.org, который легко настроить и использовать.

Думаю, вам подойдет настройка локального ssh-туннеля:

  1. настроить http-прокси на Linux-сервере на порт xxxx
  2. подключите Linux-сервер к локальному туннелю ssh, команда клиента ssh хотела бы:

    ssh -L 8899: 127.0.0.1: xxxx пользователь @ удаленный -p 443

шпатлевка может быть похожей, но использовать диалог.

Эта старая, но хорошая статья о лайфхакере имеет очень удобный учебник о том, как это сделать в Windows. PLUG_ALERT: Вот еще один урок, написано, ну, я :-)