Различия между ssh -L -D

Я пытаюсь понять различия между ssh -L -D. Есть ли что-то еще, кроме того, что -D – только SOCKS?

Благодаря!

ssh -L открывает локальный порт. Все, что вы отправляете на этот порт, передается через ssh-соединение и выходит через сервер. Если вы это сделаете, например, ssh -L 4444:google.com:80 , если вы открываете http://localhost:4444 в своем браузере, вы действительно увидите страницу Google.

ssh -D открывает локальный порт, но у него нет конкретной конечной точки, например, с -L . Вместо этого он претендует на роль прокси-сервера SOCKS. Если вы открываете, например, ssh -D 7777 , когда вы указываете браузеру использовать localhost:7777 качестве вашего прокси-сервера SOCKS, все запросы вашего браузера проходят через туннель ssh. Для общедоступного Интернета это похоже на просмотр с вашего ssh-сервера, а не с вашего компьютера.

В SSH -D задает локальную «динамическую» перенаправление портов на уровне приложения.

 SSH -D [bind_address:]port 

Задает локальную «динамическую» переадресацию портов на уровне приложения. Это работает путем выделения сокета для прослушивания порта на локальной стороне, необязательно связанного с указанным bind_address. Всякий раз, когда происходит соединение с этим портом, соединение пересылается по защищенному каналу, а затем протокол приложения используется для определения, где подключиться к удаленному компьютеру. В настоящее время поддерживаются протоколы SOCKS4 и SOCKS5, а ssh будет действовать как сервер SOCKS. Только root может перенаправлять привилегированные порты. Динамические переадресации портов также могут быть указаны в файле конфигурации.

Адреса IPv6 могут быть указаны с помощью альтернативного синтаксиса: порт [bind_address /] или окружение адреса в квадратных скобках.

Только суперпользователь может пересылать привилегированные порты. По умолчанию локальный порт привязан в соответствии с настройкой GatewayPorts. Однако для привязки соединения к определенному адресу может использоваться явный bind_address. Ссылка bind_address из «localhost» указывает, что порт прослушивания должен быть привязан только для локального использования, в то время как пустой адрес или «*» указывает, что порт должен быть доступен со всех интерфейсов.

Кроме того, ssh -L Указывает, что данный порт на локальном (клиентском) хосте должен быть перенаправлен на данный хост и порт на удаленной стороне.

 SSH -L [bind_address:]port:host:hostport 

Указывает, что данный порт локального (клиентского) хоста должен быть перенаправлен на данный хост и порт на удаленной стороне. Это работает путем выделения сокета для прослушивания порта на локальной стороне, необязательно связанного с указанным bind_address. Всякий раз, когда соединение выполняется с этим портом, соединение пересылается по защищенному каналу, и соединение выполняется с хостом порта хоста с удаленной машины. Перенаправления портов также могут быть указаны в файле конфигурации. Адреса IPv6 могут быть указаны с помощью альтернативного синтаксиса: [bind_address /] port / host / hostport или путем помещения адреса в квадратные скобки.

Только суперпользователь может пересылать привилегированные порты. По умолчанию локальный порт привязан в соответствии с настройкой GatewayPorts. Однако для привязки соединения к определенному адресу может использоваться явный bind_address. Ссылка bind_address из «localhost» указывает, что порт прослушивания должен быть привязан только для локального использования, в то время как пустой адрес или «*» указывает, что порт должен быть доступен со всех интерфейсов.

Interesting Posts
Давайте будем гением компьютера.