Как туннелировать веб-трафик с помощью SSH Secure Shell

безопасный Если вы пользователь Linux или UNIX, вы, вероятно, используете SSH (Secure Shell) для удаленного доступа к командной строке на своих машинах. Помимо обеспечения безопасного доступа к учетным записям оболочки, SSH может также безопасно передавать другие виды веб-трафика. В некотором смысле, он может предоставить вам быстрый и простой VPN (виртуальная частная сеть) в удаленную сеть, где находится ваш SSH-сервер.

Прежде всего, вам, конечно, понадобится SSH-сервер, работающий где-то. Linux и OS X поставляются с SSH-серверами, но для Windows также доступны SSH-серверы. freeSSHd — это хороший бесплатный SSH-сервер для Windows. Это быстрая и простая установка, а также относительно простая настройка. Конечно, вам понадобятся права администратора на компьютере, на котором вы устанавливаете его.

Поскольку вы будете получать доступ к вашему SSH-серверу удаленно, если он находится за брандмауэром или маршрутизатором, вам необходимо убедиться, что порт 22 (порт SSH по умолчанию) правильно перенаправлен на него. Большинство маршрутизаторов имеют возможность перенаправлять порты на отдельные машины в локальной сети. Вы должны будете обратиться к инструкциям для вашего маршрутизатора / брандмауэра о том, как это сделать.

После того, как ваш SSH-сервер настроен так, что вы можете подключиться к нему через любое интернет-соединение, вам, конечно, понадобится клиент для подключения к нему. В Linux и OS X встроены клиенты SSH. Если вы работаете в Windows, предпочтительным клиентом является PuTTY. Я предоставлю инструкции по туннелированию с PuTTY, но вы также можете использовать и других клиентов.

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

подключение-адрес

Далее перейдите к соединение > SSH > туннели. Существует три типа туннелей, которые вы можете настроить:

  • динамический — Это действует как прокси-сервер SOCKS, который может использоваться для туннелирования трафика через сеть, где находится сервер SSH. Затем вы можете настроить приложения, которые поддерживают прокси-серверы SOCKS (например, веб-браузер), чтобы использовать его в своих интересах. Я продемонстрирую, как настроить Firefox для работы через динамический туннель.
  • Местный — Локальный туннель позволит вам подключиться к указанному порту на машине, находящейся в той же сети, что и сервер SSH. Один полезный пример, который я покажу вам, — это как подключиться к компьютеру под управлением Windows, на котором работает Remote Desktop.
  • Дистанционный пульт — Как следует из названия, это обратная сторона местного туннеля. Вероятно, вы с меньшей вероятностью будете использовать это, но это позволит компьютерам в сети сервера SSH получить доступ к компьютеру и порту в сети, где находится ваш клиент SSH. Я не буду рассматривать примеры настройки удаленного порта в этой статье.

Итак, в примере, который я собираюсь привести, мы скажем, что в домашней сети есть два компьютера. Один из них представляет собой Linux-сервер с SSH-сервером, а другой — Windows-сервер с включенным удаленным рабочим столом. Мы хотим настроить два туннеля: динамический туннель и локальный туннель для подключения к машине Windows через удаленный рабочий стол.

Давайте сначала настроим динамический туннель для порта 1080. Порт, который вы используете для динамического туннеля, фактически произвольный, но поскольку порт 1080 часто используется для прокси-серверов SOCKS, это то, что мы будем использовать. Введите 1080 в Исходный порт поле, выберите динамический в качестве типа порта, а затем нажмите добавлять кнопка.

динамического порта настройки

Далее, давайте настроим локальный туннель для компьютера в сети, на котором работает Windows Remote Desktop. Допустим, локальные IP-адреса в локальной сети, где расположен сервер SSH, — это адреса 192.168.1.xxx. Компьютер с Windows имеет локальный IP-адрес 192.168.1.100. Введите 3390 для Исходный порт, 192.168.1.100:3389 для Место назначения, Выбрать Местный для типа порта, а затем нажмите добавлять кнопка. Позже вы поймете, почему я настроил порт источника как отличающийся от пункта назначения.

динамического порта настройки

После того, как все настроено для подключения, вернитесь к сессия раздел и сохраните ваше соединение. Затем нажмите открыто и войдите в свою коробку Linux с вашими учетными данными, как обычно.

Теперь вы должны настроить свои приложения на использование настроенных вами туннелей. Допустим, вы хотите просматривать веб-страницы через динамический туннель, который мы создали. На самом деле это чрезвычайно полезный способ использовать преимущества SSH.

Возможно, вы находитесь в сети с каким-то брандмауэром или фильтрацией контента, которую вы хотите обойти. Если вы сможете выйти на порт 22 (или любой другой порт, вам просто нужно соответствующим образом настроить свой SSH-сервер), то вы сможете без проблем просматривать веб-страницы в любом месте через динамический туннель.

Это также полезно, если вы работаете в сети, где вас могут беспокоить другие пользователи, наблюдающие за вашим трафиком. Возможно, вы подключаетесь из отеля, с сайта клиента или с работы (вы не узнали об этом от меня), и вы не хотите, чтобы другие контролировали ваш трафик.

Лучший выбор — использовать Firefox, потому что Firefox позволяет настроить браузер так, чтобы он также отправлял DNS-запросы через прокси. Если вы используете Internet Explorer, ваши DNS-запросы по-прежнему выполняются через локальную сеть, к которой вы подключаетесь, и, таким образом, их можно отслеживать. Поэтому Firefox будет предпочтительным браузером, если вы хотите сохранить конфиденциальность в сети, к которой вы подключаетесь.

Чтобы настроить Firefox для использования динамического туннеля в качестве прокси-сервера SOCKS, перейдите в Firefox Опции > продвинутый > сеть и нажмите Настройки»| кнопка. На странице настроек нажмите Ручная настройка прокси, введите localhost для Носки Хост, и 1080 для порт.

Firefox-носки-настройка

Мы не совсем закончили. Нам все еще нужно настроить Firefox для отправки DNS-запросов на SOCKS-прокси. Для этого введите about: config в панели навигации в Firefox. Вы можете получить подсказку с вопросом, знаете ли вы, что делаете. Заверьте Firefox, что вы знаете, что делаете, и продолжайте.

Введите socks_remote_dns для Фильтр и нажмите ввод. Вы должны увидеть единственную опцию, которая говорит network.proxy.socks_remote_dns. Если он говорит ложь для Значение, дважды щелкните по нему, чтобы он сказал правду. Теперь все готово. Вы должны иметь возможность просматривать веб-страницы через новый безопасный динамический туннель!

светлячок-удаленный DNS-настройка

К счастью, подключиться к нашему компьютеру с удаленным рабочим столом Windows намного проще. Вы просто запускаете Remote Desktop Client и вводите localhost: 3390 для адреса компьютера. Вот и все, что нужно сделать!

Удаленный рабочий стол

Причина, по которой мы настроили порт источника на 3390, заключается в том, что клиент удаленного рабочего стола не позволяет подключаться к порту удаленного рабочего стола по умолчанию (3389) на локальном компьютере. Вот почему мы использовали вместо этого 3390 (мы могли бы использовать любой порт, я просто использую 3390, потому что мне легко запомнить).

Порт источника, который вы используете для настройки туннелей, является произвольным. Мы могли бы использовать 1234 вместо 3390, если бы захотели, если на локальном компьютере с портом 1234 ничего не работает. Что не является произвольным, это то, что вы используете на IP-адресе и порте назначения. Для этого вам нужно будет использовать правильный IP-адрес и порт для службы, к которой вы хотите подключиться.

Вы можете настроить туннель для любого сервиса на любом IP в любом месте. Вам просто нужно настроить программу для подключения к localhost через порт источника, который вы настроили для туннеля. Это довольно изящный способ подключения к вещам, которые вы не сможете использовать в противном случае из-за проблем с межсетевым экраном, с которыми вы можете столкнуться. Все, что вам нужно, — это один порт для доступа к вашему SSH-серверу, и он, конечно, должен работать на этом порту.

Вы используете SSH туннели? Какие классные вещи вы используете их для?

Кредит Фотографии: kreg.steppe

Ссылка на основную публикацию
Adblock
detector