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

с socat данный порт на удаленном (серверном) хосте должен быть перенаправлен на данный хост и порт на локальной стороне

Можно ли использовать socat для достижения следующих целей без использования ssh?

> ssh -N -R 8080:localhost:1080 mylogin@server.com

-R [bind_address:]port:host:hostport
  Specifies that the given port on the remote (server) host is to be forwarded to the given host and port on the local side.
  This works by allocating a socket to listen to port on the remote side, and whenever a connection is made to this port, 
  the connection is forwarded over the secure channel, and a connection is made to host port hostport from the local machine.

-N  Do not execute a remote command.  This is useful for just forwarding ports (protocol version 2 only).

Возможно нет. Пока socat безусловно, может перенаправить порт 8080 в вашей локальной системе на порт 1080 в удаленной системе, он не может изменить вашу точку происхождения - вы все равно будете подключаться из своей локальной системы.

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