Меню

Как настроить ssh в роутере

SSH, Telnet и командная строка

From DD-WRT Wiki

Contents

[edit] Telnet

  1. Откройте командную строку и введите «telnet» (в Windows Vista и выше утилиту нужно установить в диалоговом окне панели управления «Включение и отключение компонентов Windows»).
  2. Подключитесь к IP-адресу маршрутизатора, например, 192.168.1.1, поэтому в командной строке это будет выглядеть так:
  1. При запросе имени пользователя введите root (даже если вы изменили имя пользователя в веб-интерфейсе).
  2. При запросе пароля введите пароль маршрутизатора (по умолчанию «admin»).

[edit] SSH

[edit] Обзор

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

SSH работает так же, как telnet с комбинацией имени пользователя и пароля, или на основе открытого и закрытого ключей. Чтобы последние работали, серверу предоставляется короткий открытый ключ, а сервер отдает клиенту свой открытый ключ. Клиент шифрует информацию, отправляемую на сервер, используя открытый ключ сервера, а сервер шифрует информацию, отправляемую клиенту, используя открытый ключ от клиента. Закрытые ключи никуда не отправляются и используются для расшифровки полученной информации, зашифрованной с помощью соответствующего открытого ключа.

Подключение к DD-WRT может выполняться с использованием имени пользователя и пароля или только от клиентов, чьи открытые ключи были введены вручную через веб-интерфейс. Несколько ключей можно ввести, разместив каждый в отдельной строке. Если вы хотите использовать имя пользователя и пароль для входа в систему с использованием SSH, используйте имя «root» с паролем, который установлен для веб-интерфейса.

На самом деле можно вручную установить (через telnet или SSH) переменную NVRAM sshd_authorized_keys командой:

Также можно вручную отредактировать файл /tmp/root/.ssh/authorized_keys и добавить в него ключи (хотя они исчезнут при перезагрузке, если у вас нет автоматически запускающегося сценария командной строки, изменяющего файл).

Стоит отметить, что SSH-ключи — это довольно длинные строки символов, поэтому, если вы вставляете их из буфера обмена, следует быть осторожным, чтобы не допустить разрывов строк, иначе ключи не будут работать (т.е. ключ — это одна длинная непрерывная строка).

[edit] Настройка

[edit] Подключение с использованием открытого ключа

Аутентификация с открытым ключом является одним из самых безопасных методов входа в SSH. Он функционирует подобно HTTPS, поскольку все передачи зашифрованы ключом, который будут иметь только клиент и сервер. Еще один плюс в том, что если вы используете этот метод вместо аутентификации по паролю, никто не сможет взломать маршрутизатор, пытаясь угадать пароль!

Чтобы включить его, сначала нужно сгенерировать пару открытого и закрытого ключей на компьютере. Это можно сделать с помощью утилиты «Puttygen», если вы используете в качестве программы-клиента Putty или WinSCP. Скопируйте открытый ключ из области public key в буфер обмена и сохраните закрытый ключ где-нибудь на компьютере. Нет необходимости сохранять открытый ключ. Если вы его забудете, всегда можно открыть файл закрытого ключа в программе Puttygen, которая покажет открытый ключ, а не генерировать новую пару ключей. Пользователи операционных систем, отличных от Windows, могут использовать утилиту ssh-keygen(1):

Рекомендуется не защищать свою пару ключей паролем, поскольку это облегчит вам задачу, хотя и менее безопасно.

  1. В веб-интерфейсе перейдите на вкладку Administration (в версии v24 — вкладку Services).
  2. На вкладке Services включите SSHd в группе параметров Secure Shell. Если после этого не появились новые параметры — сохраните настройки, нажав кнопку Save Settings.
  3. Вставьте ваш открытый ключ Public key в поле authorized key группы параметров SSHD. Нужно будет сгенерировать ключ на компьютере, если у вас его ещё нет.
  4. Сохраните и примените настройки, нажав кноки Save и Apply Settings.

ПРИМЕЧАНИЕ. Формат открытого ключа при вставке должен быть: «ssh-rsa», пробел, ключ, пробел, комментарий. Например (обратите внимание, что в конце не должно быть перевода строки):

Альтернативный метод — подключиться к маршрутизатору по SSH, используя имя пользователя и пароль, и задать ключ командой:

Не забудьте ввести ключ как целую строку символов (без пробелов, табуляции и т.п.).

В Putty можно использовать аутентификацию по ключу, открыв настройки аутентификации SSH (Connection → SSH → Auth) и введя или указав файл закрытого ключа. Также убедитесь, что имя пользователя для автоматического входа — root (Connection → Data).

[edit] Подключение с использованием имени пользователя и пароля

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

  1. В веб-интерфейсе перейдите на вкладку Administration (в версии v24 — вкладку Services).
  2. На вкладке Services включите SSHd в группе параметров Secure Shell. Если после этого не появились новые параметры — сохраните настройки, нажав кнопку Save Settings.
  3. Включите параметр Password Login для использования входа по паролю.
  4. Сохраните и примените настройки, нажав кноки Save и Apply Settings.

После этого вы можете войти в систему, используя имя пользователя «root» с паролем, который установлен для веб-интерфейса.

[edit] Автоматический вход (для сценариев оболочки)

SSH-клиент Dropbear позволяет указывать пароль через переменную окружения. Это полезно, когда нужно чтобы DD-WRT выполнял автоматическое подключение к другому устройству по SSH.

[edit] Советы по безопасности

  • Выберите случайный нестандартный номер порта больше 1024, особенно при включении SSH-доступа из Интернета! Большинство злоумышленников используют сканер портов, который по умолчанию сканирует только небольшое количество известных открытых портов. Сканирование всех 65535 портов намного медленнее, что затрудняет поиск вектора атаки, а также повышает вероятность обнаружения атаки системой обнаружения вторжений (англ. Intrusion Detection System, IDS).
  • Запомните или запишите в безопасное место отпечаток ключа от маршрутизатора! При подключении к маршрутизатору программа-клиент показывает отпечаток ключа (key fingerprint). Если вы видите, что отпечаток не изменился, то можете быть уверены, что никто не шпионит за вашим соединением с помощью атаки «человек посередине» (man-in-the-middle). Если отпечаток ключа НЕ совпадает (SSH-клиент, возможно, предупредит об этом), что-то не так и следует прервать соединение немедленно! Примечание: отпечаток ключа маршрутизатора может измениться после сброса к заводским настройкам или обновления прошивки, т.к. он, вероятно, сгенерирует новую пару ключей.
  • Для еще большей безопасности при использовании открытого ключа можно защитить закрытый ключ паролем. Таким образом, если злоумышленник завладеет ключом, он всё равно не сможет войти в маршрутизатор без предварительного взлома пароля от ключа. В противном случае, если ключи не защищены, любой, кто наткнется на них, может получить полный доступ к маршрутизатору и контроль над сетью.
Читайте также:  Как настроить битрикс диск

[edit] SSH-клиент

Обеспечивает безопасную альтернативу стандартному Telnet.

Хороший клиент для Windows — Putty.

Настройте клиент для использования закрытого ключа, который вы сохранили ранее.

В большинство дистрибутивов Linux по умолчанию включены программы-клиенты для Telnet и SSH.

[edit] Переадресация SSH-порта

Переадресация SSH-порта (англ. SSH port forwarding) — это возможность создавать зашифрованные туннели для прохождения трафика, подобно VPN. Ниже мы обсудим два разных подхода к переадресации портов SSH — локальный и удаленный.

[edit] Переадресация локального порта

Пример из реального мира:

Предположим, что вы хотите управлять настройками маршрутизатора из любой точки Интернета. Хотите использовать веб-интерфейс, но не хотите включать управление через удаленный HTTP (небезопасно) или HTTPS (ресурсоемко). Как этого достичь?

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

Во-первых, в разделе Administration → Management необходимо включить параметр ‘Remote SSH Management’, если хотите подключиться к маршрутизатору из глобальной сети WAN.

Переадресация локального порта может быть установлена ​​из интерфейса командной строки следующей командой:

Чтобы объяснить более понятно, что делает эта команда: ваш компьютер устанавливает SSH-соединение с . Туннель создается между вашего компьютера, и на . Данные, отправленные в , передаются по защищенному SSH-соединению в , где они затем дешифруются и пересылаются в на .

Например, если IP-адрес интерфейса WAN маршрутизатора — 12.23.34.35, его SSH-порт для удаленного администрирования — 9999, а доступный через интерфейс LAN веб-интерфейс находится на порту 80:

Откройте браузер и перейдите по адресу http://localhost:12345, и вы сможете войти в веб-интерфейс маршрутизатора, как если бы находились в локальной сети маршрутизатора. Это соединение безопасно!

Если вы используете PuTTY, процедура аналогична. Переадресация порта SSH настраивается в разделе SSH → Tunnels.

Примечание пользователя Brandonc: при использовании PuTTY из репозитория Ubuntu соединение завершается после входа в веб-интерфейс, выдавая ошибку: «SSH2_MSG_CHANNEL_FAILURE for nonexistent channel 257» (23:44, 2 августа 2012 г.).

Для получения дополнительной информации, связанной с настройкой туннеля, смотрите обсуждение на форуме.

[edit] Переадресация удаленного порта

Это полезно для туннелирования таких вещей, как удаленный рабочий стол (Remote Desktop, RDP) по зашифрованному туннелю SSH через Интернет. Например, вы хотите иметь доступ к вашему рабочему компьютеру из дома:

Домашний компьютер ↔ Маршрутизатор ↔ Интернет ↔ Брандмауэр ↔ Рабочий компьютер

На рабочем компьютере, на котором разрешен удаленный рабочий стол RDP через порт 3389, выполните ssh -R 5555:localhost:3389 root@router.home.

На домашнем компьютере можно использовать RDP-клиент для подключения к порту 5555 на маршрутизаторе, и это создаст SSH-туннель, который подключит домашний компьютер к порту 3389 на рабочем компьютере.

[edit] Требования
  • DD-WRT v24 RC7 или новее
  • В разделе Services → Secure Shell веб-интерфейса должны быть включены параметры SSHd и SSH TCP Forwarding.
  • В разделе Administration → Management должен быть включен параметр Remote SSH Management.
[edit] Настройка

Настроить переадресацию удаленного порта относительно просто при использовании утилиты PuTTY для Windows. См. Connections → SSH → Tunnels. Убедитесь, что ваша конфигурация включает параметры, как показано выше. А именно:

  • Local ports accept connections from other hosts.
  • Remote ports do the same (SSH-2 only).
  • Source port (номер порта на маршрутизаторе, должен быть больше 1024).
  • Destination (IP-адрес:Порт).
  • Remote.

[edit] SCP

Технология Secure Copy (SCP, с англ. «Защищенное копирование») позволяет безопасно копировать файлы с компьютера на маршрутизатор и обратно.

Некоторые хорошие клиенты для Windows — это FileZilla и WinSCP.

Настройте клиент для использования закрытого ключа, сохраненного ранее, или используйте вход по имени пользователя «root» и паролю от веб-интерфейса.

Помните: только разделы /tmp и /jffs доступны для записи!

[edit] Drop Bear

DropBear — это клиент и сервер SSH, установленный по умолчанию на маршрутизаторах WRT54G. DropBear позволяет подключаться с WRT54G к удаленному SSH-серверу для SCP и т.п. Мне кажется, что SSHD необяхательно включать через веб-интерфейс для использования клиентской части DropBear.

Если на компьютере есть сервер SSH (например, OpenSSH), вы можете получить файлы с компьютера с помощью команды scp. Её можно использовать в автоматически запускаемых сценариях.

[edit] Командная строка DD-WRT

Она же оболочка Linux DD-WRT. Это оболочка ‘ash’. Ash — это версия sh, буквально «A SHell».

[edit] Основной синтаксис

Командная оболочка Linux (Linux Command Shell, Ash) отличается от командной строки Windows и DOS.

Символ / (а не \) используется для разделения каталогов при указании как локальных, так и сетевых путей.

Для выполнения команды необходимо указать путь к этой команде. Это может быть либо полный путь, либо относительный (relative path).

[edit] Операторы относительного пути

Есть два оператора относительного пути.

[edit] Примеры

1) Если вы находитесь в каталоге /jffs/usr/bin и хотите запустить команду /jffs/usr/bin/noip, используйте:

2) Если вы находитесь в каталоге /jffs/usr/bin и хотите запустить команду /jffs/usr/kismet, используйте:

3) Относительные пути также могут быть использованы в качестве аргументов. Если вы установили пакет noip, вы заметили бы, что команда установлена ​​как /jffs/usr/bin/noip, но ее файл конфигурации установлен как /jffs/etc/no-ip.conf. При запуске noip необходимо указать путь к файлу конфигурации с помощью команды -c. Это можно сделать так:

обратите внимание, что первый ../ приводит нас к /jffs/usr/. Второй ../ приводит к /jffs/. А затем можно добавить оставшуюся часть пути.

4) Хотя во всех других примерах показан минимально необходимый текст команды, с относительными путями также можно сотворить что-нибудь этакое. Чтобы запустить команду noip, как в примере 1, можно использовать:

Здесь мы проходим весь путь до корневого каталога /, затем переходим к /jffs/usr/bin, возвращаемся к /jffs/usr и, наконец, к /jffs/usr/bin.

Читайте также:  Как настроить звук включения виндовс 10

Ссылки на текущий каталог /./ добавляются время от времени просто для того, чтобы вас запутать. Обратите внимание, что /./ всегда ссылается на текущий каталог.

[edit] Операторы конвеера и перенаправления

Pipe (конвеер) и Redirect (перенаправление) – это каналы взаимодействия между разными командами. Вывод одной команды (stdout) может быть передан на вход другой (stdin), как по конвееру, или перенаправлен в устройство или файл.

берет вывод команды и направляет его в устройство или файл.

Например, если вы не хотите видеть вывод команды, перенаправьте ее на устройство null:

| — символ конвеера, который передает результат (вывод) одной команды (на вход) в другую.

Например: наиболее распространенное использование канала — ограничение вывода команды:

Это особенно полезно для таких команд, как nvram show, которая выводит около 800-1200 строк одновременно. Команда nvram show | more будет отображать результаты по одной странице за раз.

[edit] Фоновые процессы

Можно запускать программы в фоновом режиме (немедленно возвращает вас в командную строку), заканчивая команду символом &. Например:

Убедитесь, что добавили пробел между командой и амперсандом, иначе получите ошибку File not found («Файл не найден»).

[edit] Примечание по командной строке веб-интерфейса

Встроенный интерфейс командной строки веб-интерфейса DD-WRT (страница Diagnostics.asp) допускает максимум около 200 символов в строке.

Специальные символы, такие как « или |, должны быть экранированы — введены после знака \.

Например, если вы хотите установить значение текстового параметра NVRAM:

[edit] Основные команды

[edit] Продвинутые команды

Для следующих команд имеются отдельные страницы Wiki:

Источник



Как настроить ssh в роутере

Настройка SSH
на Cisco

Протокол SSH является стандартом и широко применяется для удаленного администрирования сетевых устройств.
Настройка SSH является базовым этапом первоначальной настройки устройства. 1. Забронируйте стенд и получите доступ к оборудованию. 2. Настройте IP адрес (192.168.0.2) и маску сети (255.255.255.0) на PC1. 3. Получите доступ к консоли Branch.

Если конфигурация устройства пуста, то система задаст вопрос о запуске мастера настройки устройства —
нажмите «n» и ввод, чтобы пропустить мастер и настроить устройство самостоятельно. 4. Настройте Branch.

Router>enable — вход в режим Exec.
Router#configure terminal — вход в режим конфигурации.
Router(config)#hostname Branch — Настройка имени маршрутизатора.
Branch(config)#interface FastEthernet 0/0 — Вход в настройку физического интерфейса Fa 0/0.
Branch(config-if)#ip address 192.168.0.3 255.255.255.0 — Настройка IP адреса и маски сети на Fa0/0.
Branch(config-if)#no shutdown — Включение интерфейса.
Branch(config-if)#exit — Выход из режима настройки интерфейса.
Branch(config)#ip domain-name learnin.ru — Настройка имени домена (может быть любым, не привязано к AD)
Branch(config)#crypto key generate rsa — Генерация ключа для SSH. (Может потребоваться выбрать длину ключа)
Branch(config)#username learnin password cisco — Создание пользователя в локальной базе маршрутизатора
Branch(config)#interface line vty 0 15 — Вход в режим настройки терминальных линий.
Branch(config-line)#transport input ssh — Указание протокола SSH для подключения к линиям.
Branch(config-line)#login local — Указание использовать локальную базу (см. выше) для аутентификации пользователей по SSH.

Конфигурация Branch завершена. Теперь можно подключиться к маршрутизатору удаленно при помощи протокола SSH используя имя пользователя learnin и пароль cisco.

5. Проверьте подключение к SSH

Если настройка произведена правильно, то вы можете подключиться к Branch протоколу SSH.
Это базовая настройка устройства, которая позволяет получить к нему доступ удаленно через сеть.
Протокол SSH является стандартным протоколом доступа к сетевым устройствам всевозможных производителей в бизнес среде ввиду своей защищенности.

Самый простой способ проверить работоспособность конфигурации, не используя дополнительное оборудование, — подключиться с устройства на свой IP адрес. Можно воспользоваться встроенным в Cisco IOS SSH клиентом:

Branch>enable
Branch#ssh -l learnin 192.168.0.3 — Запуск внутреннего клиента SSH, где learnin — имя пользователя заданное на этапе настройки, а 192.168.0.3 IP адрес устройства.

Также, можно проверить доступ по SSH к Branch с компьютера PC1, а также коммутатора SW1, для этого нужно настроить на этих устройствах IP адреса в той же сети, что и адрес маршрутизатора — попробуйте сами.

Источник

SSH — что это такое? Учимся использовать SSH туннелирование для безопасного интернет-серфинга

Существует три различных типа туннелирования, и все они используются для решения разных задач. Каждая задача предполагает использование SSH-сервера для перенаправления трафика из одного сетевого порта в другой. Трафик передается по зашифрованному SSH-соединению , поэтому его нельзя отследить или изменить в процессе передачи:

Локальное перенаправление портов (SSH port forwarding): получаем доступ по SSH к удалённым ресурсам на локальной системе

« Локальное перенаправление портов » позволяет осуществлять доступ к ресурсам, находящимся внутри локальной сети. Предположим, что нужно попасть на офисный сервер БД, сидя дома. В целях безопасности этот сервер настроен так, чтобы принимать подключения только с ПК, находящихся в локальной сети офиса. Но если у вас есть доступ к SSH-серверу , находящемуся в офисе, и этот SSH-сервер разрешает подключения из-за пределов офисной сети, то к нему можно подключиться из дома. Затем осуществить доступ к БД. Проще защитить от атак один SSH-сервер , чем защищать каждый ресурс локальной сети по отдельности.

Чтобы сделать это, вы устанавливаете SSH-соединение с SSH-сервером и говорите клиенту передать трафик с указанного порта на локальном ПК. Например, с порта 1234 на адрес сервера базы данных и его порт внутри офисной сети. Когда вы пытаетесь получить доступ к БД через порт 1234 на вашем ПК (« localhost ») трафик автоматически « туннелируется » по SSH-соединению и отправляется на сервер БД.

SSH-сервер выступает посредником, пересылая трафик туда-сюда. При этом можно использовать любую командную строку или графический инструмент для осуществления доступа к базе данных, как вы обычно делаете это на локальном ПК.

Чтобы использовать локальное перенаправление, подключитесь к SSH-серверу с использованием вспомогательного аргумента -L . Синтаксис для туннелирования трафика будет следующим:

Предположим, что офисный сервер находится по адресу 192.168.1.111 . У вас есть доступ к SSH-серверу через адрес ssh.youroffice.com , и имя вашего аккаунта на SSH-сервере — bob . В таком случае необходимая команда будет выглядеть следующим образом:

Читайте также:  Как настроить электронные часы с 4 кнопками set up down reset

Запустив эту команду, вы попадете на офисный сервер баз данных через порт 8888 на localhost . Если у СУБД есть веб-интерфейс, можно вписать в адресную строку браузера http://localhost:8888 . Если у вас инструмент командной строки, которому необходим сетевой адрес базы данных, то направьте его на localhost:8888 . Весь трафик, отправленный на порт 8888 на ПК, будет перенаправлен на 192.168.1.111:1234 внутри офисной сети:

При попытке подключиться к БД через 8888 порт на вашем ПК, трафик будет передаваться с помощью SSH-подключения . Когда он достигнет системы, в которой работает SSH , SSH-сервер отправит его на порт 1234 на « localhost », принадлежащий тому же ПК, на котором запущен SSH-сервер . То есть, « localhost » в приведённой выше команде означает « localhost » с перспективы удалённого сервера:

Например, если нужно настроить SSH-тоннель , как это сделано выше, то введите 8888 в качестве порта-источника и localhost:1234 в качестве целевого адреса. После этого нажмите « Add » и затем « Open », чтобы открыть SSH-подключение . До подключения SSH туннелирования нужно ввести адрес и порт самого SSH-сервера в разделе « Session »:

Дистанционное перенаправление портов: открываем доступ к локальным ресурсам на удалённой системе

« Дистанционное перенаправление портов » — ситуация, противоположная локальному перенаправлению, и используется не так часто. Она позволяет открывать доступ к ресурсам на локальном ПК через SSH-сервер . Предположим, что на локальном ПК настроен веб-сервер. Но ваш ПК защищён сетевым экраном, который не пропускает входящий трафик на сервер.

Если есть доступ к удалённому SSH-серверу , можно подключиться к этому SSH-серверу и использовать дистанционное перенаправление портов. Ваш SSH-клиент укажет серверу перенаправлять трафик с определённого порта – скажем, 1234 – на SSH-сервере на указанный адрес и порт на вашем ПК или внутри локальной сети. Когда кто-то подключается к порту 1234 на SSH-сервере , этот трафик автоматически « туннелируется » по SSH-соединению . Любой, кто подключается к SSH-серверу , сможет получить доступ к серверу, запущенному на вашем ПК. Это достаточно эффективный способ обхода фаерволов.

Чтобы воспользоваться дистанционным туннелированием IP , используйте ssh-команду с аргументом — R . Синтаксис здесь будет практически таким же, как и в случае с локальным перенаправлением:

Предположим, что нужно создать серверное приложение, прослушивающее порт 1234 на вашем ПК. Оно доступно через порт 8888 на удалённом SSH-сервере . Адрес SSH-сервера ssh.youroffice.com , а ваше имя пользователя на SSH-сервере bob . Значит, команда будет следующей:

Затем кто-то может подключиться к SSH-серверу через порт 8888 , и это подключение будет туннелировано на серверное приложение, запущенное на порте 1234 ПК , с которого вы подключались:

Например, если нужно настроить SSH-тоннель , как это сделано выше, то укажите 8888 в качестве порта-источника и localhost:1234 в качестве целевого адреса. После этого нажмите « Add » и затем « Open », чтобы открыть SSH-подключение . До подключения нужно будет ввести адрес и порт самого SSH-сервера в разделе « Session ».

После этого пользователи смогут подключаться к порту 8888 на SSH-сервере и их трафик будет передаваться на порт 1234 на вашей локальной системе:

Нужно включить опцию « GatewayPorts » в sshd_config на удалённом SSH-сервере , если хотите изменить эти настройки.

Динамическое перенаправление портов: используем SSH-сервер в качестве прокси

Также существует « динамическое перенаправление портов », которое работает по тому же принципу что прокси или VPN-сервер . SSH-клиент создаёт SOCKS-прокси , который можно настраивать под собственные приложения. Весь трафик, отправляемый через прокси, будет отправляться через SSH-сервер . Принцип здесь схож с локальным перенаправлением – берётся локальный трафик, отправленный на определённый порт на вашем ПК, и перенаправляется через SSH-соединение на удалённый адрес.

Предположим, что вы используете общедоступную Wi-Fi сеть. Но хочется делать это безопасно. Если у вас есть доступ к SSH-серверу из дома, то можно подключиться к нему и использовать динамическое перенаправление. SSH-клиент создаст SOCKS-прокси на вашем ПК. Весь трафик, отправленный на этот прокси, будет отправляться через подключение к SSH-серверу . Никто из тех, кто использует общедоступную Wi-Fi сеть, не сможет отслеживать ваши перемещения в сети или закрывать доступ к сайтам. С перспективы сайтов, которые посещаете, будет казаться, что вы заходите на них с домашнего ПК.

Или же может понадобиться подключиться к медиа-серверу, находящемуся в вашей домашней сети. В целях безопасности, к интернету подключен только ваш SSH-сервер . При этом вы не разрешаете подключаться к медиа-серверу через интернет. В таком случае можно включить динамическое перенаправление портов, настроить SOCKS-прокси в браузере и затем подключаться к серверам, работающим в домашней сети, через браузер, как будто вы сидите дома.

Например, если медиа-сервер находится по адресу 192.168.1.123 в вашей домашней сети, то можно добавить адрес 192.168.1.123 в любое приложение при помощи SOCKS-прокси и получить доступ к медиа-серверу, как будто вы находитесь внутри домашней сети.

Чтобы воспользоваться динамическим перенаправлением, запустите ssh-команду с аргументом — D :

Предположим, что у вас есть доступ к SSH-серверу по адресу ssh.yourhome.com , а ваш логин на SSH-сервере – bob . Нужно использовать динамическое перенаправление для того, чтобы открыть SOCKS-прокси по порту 8888 на текущем ПК. Тогда команда для SSH туннелирования будет выглядеть следующим образом:

После этого можно настроить браузер или другое приложение на использование локального IP-адреса (127.0.0.1) и порта 8888 . Весь трафик этого приложения будет перенаправляться через туннель:

Например, если вам нужно настроить SOCKS-прокси на порт 8888 , то введите 8888 в качестве порта-источника. После этого нажмите « Add » и затем « Open », чтобы открыть SSH-подключение .

После этого можно настроить приложение на подключение через SOCKS-прокси на вашем локальном ПК ( то есть, по IP-адресу 127.0.0.1 , который ведёт на ваш локальный ПК ) и указать корректный порт для работы:

Туннель будет оставаться активным и открытым до тех пор, пока открыта сессия SSH-соединения . Когда вы завершите SSH-сессию и отключаетесь от сервера, туннель тоже закроется. Чтобы снова открыть туннель, переподключитесь при помощи соответствующей команды или нужной функции в PuTTY .

Источник