SSH туннелирование
Материал из Викиучебника
SSH туннель — это туннель, создаваемый посредством SSH соединения и используемый для шифрования туннелированных данных. Используется для того, чтобы обезопасить передачу данных в интернете. Особенность состоит в том, что незашифрованный траффик какого-либо протокола шифруется на одном конце SSH соединения и расшифровывается на другом.
Содержание
1 Пример: Использование веб-браузера
1.1 Настройка веб-браузера
2 SSH соединение
2.1 SOCKS проксирование
2.2 Переброс локального порта на удаленную машину
2.3 Переброс удаленного порта на локальную машину
2.4 SSH соединение с PuTTY
3 Ссылки
Пример: Использование веб-браузера
Настройка веб-браузера
Например, в Mozilla Firefox зайдите в Настройки -> Дополнительно -> Сеть -> Соединение
В параметрах соединения установите галочку на "Настроить параметры подключения прокси вручную" и пропишите в опциях:
SOCKS-прокси: localhost
Порт: 12345 (или любой другой неиспользуемый порт)
SSH соединение
SOCKS проксирование
Установите SSH-соединение командой в вашем SSH-клиенте
ssh -D localhost:12345 ваше_имя@адрес_удаленного_компьютера
опция -D адрес:порт задает туннелирование порта. Ее работа заключается в том, что создается сокет для прослушивания порта на локальной машине, привязанный (необязательно) к конкретному адресу. Когда создается соединение к этому порту, это соединение туннелируется по зашифрованному каналу, и протокол приложения затем используется, чтобы определить, куда соединяться с удаленной машиной. При этом SSH работает как SOCKS сервер. (поддерживается 4 и 5я версии протокола)
Переброс локального порта на удаленную машину
Возможно также переадресовывать все соединения на локальный порт через защищенный туннель на удаленную машину. Команда имеет вид:
ssh -L [локальный_адрес:]локальный_порт:удаленный_адрес:удаленный_порт [пользователь@]сервер
После этого все соединения на локальный_адрес:локальный_порт будут переадресовываться удаленному серверу, который будет соединяться с удаленный_адрес:удаленный_порт от своего имени. По умолчанию локальный_адрес соответствует 127.0.0.1. Возможно использование нескольких ключей -L в одном клиенте.
Переброс удаленного порта на локальную машину
Для совершения обратного действия нужно выполнить команду с ключом -R:
ssh -R [удаленный_адрес:]удаленный_порт:локальный_адрес:локальный_порт [пользователь@]сервер
Команда работает также как и в вышеописанном случае только соединения перебрасываются с удаленной машины на локальную.
SSH соединение с PuTTY
Для использования SSH-туннелирования в PuTTY:
В Сonnection -> SSH -> Tunnels введите
Source port: 12345
Destination: localhost:12345
Установите галочку на "Dynamic" и нажмите кнопку "Add".
В Session введите нужный "Host Name" и выберите протокол SSH. Затем сохраните опции набрав в "Saved Sessions" имя, например, "HostName with ssh tunnel on 12345" и нажмите "Save". Двойным кликом на это имя установите соединение.
Как только SSH-соединение установится, вы можете использовать свой браузер. Зайдя на одну из веб-страниц, где определяется ваш IP адрес, можно убедиться, что он теперь определяется как IP адрес удаленной машины. Поэтому SSH-туннелирование окажется полезным для просмотра статей платных журналов в вашем браузере используя SSH-соединение с университетом, имеющим онлайн подписку на эти журналы. При этом, сохраняя что-либо, вы сохраняете это сразу на ваш локальный компьютер.
Материал из Викиучебника
SSH туннель — это туннель, создаваемый посредством SSH соединения и используемый для шифрования туннелированных данных. Используется для того, чтобы обезопасить передачу данных в интернете. Особенность состоит в том, что незашифрованный траффик какого-либо протокола шифруется на одном конце SSH соединения и расшифровывается на другом.
Содержание
1 Пример: Использование веб-браузера
1.1 Настройка веб-браузера
2 SSH соединение
2.1 SOCKS проксирование
2.2 Переброс локального порта на удаленную машину
2.3 Переброс удаленного порта на локальную машину
2.4 SSH соединение с PuTTY
3 Ссылки
Пример: Использование веб-браузера
Настройка веб-браузера
Например, в Mozilla Firefox зайдите в Настройки -> Дополнительно -> Сеть -> Соединение
В параметрах соединения установите галочку на "Настроить параметры подключения прокси вручную" и пропишите в опциях:
SOCKS-прокси: localhost
Порт: 12345 (или любой другой неиспользуемый порт)
SSH соединение
SOCKS проксирование
Установите SSH-соединение командой в вашем SSH-клиенте
ssh -D localhost:12345 ваше_имя@адрес_удаленного_компьютера
опция -D адрес:порт задает туннелирование порта. Ее работа заключается в том, что создается сокет для прослушивания порта на локальной машине, привязанный (необязательно) к конкретному адресу. Когда создается соединение к этому порту, это соединение туннелируется по зашифрованному каналу, и протокол приложения затем используется, чтобы определить, куда соединяться с удаленной машиной. При этом SSH работает как SOCKS сервер. (поддерживается 4 и 5я версии протокола)
Переброс локального порта на удаленную машину
Возможно также переадресовывать все соединения на локальный порт через защищенный туннель на удаленную машину. Команда имеет вид:
ssh -L [локальный_адрес:]локальный_порт:удаленный_адрес:удаленный_порт [пользователь@]сервер
После этого все соединения на локальный_адрес:локальный_порт будут переадресовываться удаленному серверу, который будет соединяться с удаленный_адрес:удаленный_порт от своего имени. По умолчанию локальный_адрес соответствует 127.0.0.1. Возможно использование нескольких ключей -L в одном клиенте.
Переброс удаленного порта на локальную машину
Для совершения обратного действия нужно выполнить команду с ключом -R:
ssh -R [удаленный_адрес:]удаленный_порт:локальный_адрес:локальный_порт [пользователь@]сервер
Команда работает также как и в вышеописанном случае только соединения перебрасываются с удаленной машины на локальную.
SSH соединение с PuTTY
Для использования SSH-туннелирования в PuTTY:
В Сonnection -> SSH -> Tunnels введите
Source port: 12345
Destination: localhost:12345
Установите галочку на "Dynamic" и нажмите кнопку "Add".
В Session введите нужный "Host Name" и выберите протокол SSH. Затем сохраните опции набрав в "Saved Sessions" имя, например, "HostName with ssh tunnel on 12345" и нажмите "Save". Двойным кликом на это имя установите соединение.
Как только SSH-соединение установится, вы можете использовать свой браузер. Зайдя на одну из веб-страниц, где определяется ваш IP адрес, можно убедиться, что он теперь определяется как IP адрес удаленной машины. Поэтому SSH-туннелирование окажется полезным для просмотра статей платных журналов в вашем браузере используя SSH-соединение с университетом, имеющим онлайн подписку на эти журналы. При этом, сохраняя что-либо, вы сохраняете это сразу на ваш локальный компьютер.