--}}
Новая тема
Вы не можете создавать новые темы.
Т.к. вы неавторизованы на сайте. Пожалуйста назовите себя или зарегистрируйтесь.
Список тем

ssh forwarded ports

13
14
С друзьями на NN.RU
В социальных сетях
Поделиться
Задача - перенаправить траффик c порта 3389 удаленной машины на локальную (ну или на IP в локальной сетке). Чтобы иметь возможность в удаленной сети подсоединиться к remote_machine:3389, фактически попадая на local_machine:3389.

Использую putty.

Верно ли понимаю, что при включенных галках "local ports accept connection from other hosts" и "remote ports do the same" putty привязывается (bind) ко всем интерфейсам, а не только к localhost? Сейчас ситуация такая - с самой remote_machine попадаю на local_machine без вопросов, а из лок. сетки remote_machine пытаюсь соединиться на remote_machine:3389, получаю отказ. Фаеры проверил.

На remote_machine "netstat -apn" показывает, что да, слушается только 127.0.0.1:3389

P.S. Что VPN проще, знаю. При поднятии OpenVPN встречаюсь со странным сообщением про MTU, которое ведет к разрыву соединения. Руки дойдут - покопаюсь еще.

P.P.S. Можно для самообразования еще такой вопрос поднять. Вот софтина слушает некий интерфейс по некоему порту. Например, localhost:3389. В винде и линухах как действует ОС касательно пакетов, приходящих на "некий" порт, но на другой интерфейс, например, на сетевуху 192.168.1.111 ? Перенаправление между интерфейсами есть по умолчанию или нет? Если iptables не рассматривать (все разрешено) и фаер виндовый отключен.
alsh1
12.10.2009
ssh -p ssh_port(default 22) user@xxx.xxx.xxx.xxx -L local_port(8880):remote_ip(remote_local_network):port(80) -Nf
так пробрасывается порты в линухе ... может чем поможет ....
ходить localhost:80 например
Именно так и делаю.
На localhost:port соединение идет успешно. Вопрос именно в соединении на любой интерфейс, кроме localhost.
alsh1
12.10.2009
как я понял из man ssh : -L [bind_address:]port:host:hostport те можно прописать любой локальный ip, иначе, если указан только порт, то используется по умолчанию localhost
Опробую, спасибо.
Да, в окошко source port можно ввести не только порт, но и IP:port. Однако размером оно маленькое, как бы намекая, что все равно не заработает.
И точно, все равно привязывается к locahlost.

Ключевое здесь GatewayPorts.
Спасибо, Stinky. Работает.

[root@fedora ~]# netstat -apn | grep 3389
tcp 0 0 :::3389 :::* LISTEN 11501/0
alexram
12.10.2009
При включеной галке "local ports accept connection from other hosts" - должен должно быть прослушивание на 0.0.0.0:port

Только, что-то не допнял, вы не попутали local_machine и remote_machine?

Где стоит rdp сервер(если у вас на 3389 конечно он) и где запускаете putty?
не попутали local_machine и remote_machine?


В котором месте?

Где стоит rdp сервер(если у вас на 3389 конечно он) и где запускаете putty?


local_machine ___ -> ssh ___-> remote_machine
(windows) ____________________ (linux)
RDP server
putty _______________ -> __________ ssh server

Задача - со стороны сети, в которой находится remote_machine, попасть на local_machine.
alexram
12.10.2009
putty может предоставить доступ к службам находящимся на remote_machine для ПК находящихся в сети с local_machine.
Обратное пока не делал. Думаю надо смотреть в сторону SSH-BASED VIRTUAL PRIVATE NETWORKS
alexram
12.10.2009
Сейчас попробовал - заработало. С помощью программы plink входящей в комплект с putty.
plink -R [listen-IP:]listen-port:host:port
plink -R 0.0.0.0:3389:ip rdp сервера:3389 ip_ssh_server

GatewayPorts в yes как написал Stinky

Да, и с помощью самого putty вышло, только нужно выбрать remote(local,remote,dynamic)
Stinky
12.10.2009
А это потому что openssh по дефолту дает подключиться к проброшенным портам только с лупбека. И ему абсолютно фиолетово какие там галки стоят в pytty на другой стороне.

Лезем в конфиг sshd
GatewayPorts no меняем на yes
Рестартим sshd
...
Profit!

Про ЗЗЫ. Если софтина забиндилась на конкретный IP, то пакет пришедший на другой IP до нее разумеется не дойдет. Если порт явно не перенаправлен, т.е. по дефолту.

Про ЗЗЫ. Если софтина забиндилась на конкретный IP, то пакет пришедший на другой IP до нее разумеется не дойдет. Если порт явно не перенаправлен, т.е. по дефолту.


Вопрос возник из-за оракла. TNS listener под линухами я обычно вязал на localhost, при этом БД была доступна с любого интерфейса. Видимо под линухами листенер понимал, что только localhost обычно не нужен, и:

[root@fedora ~]# netstat -apn | grep 1521
tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN 2562/tnslsnr
...

Под виндой же (Oracle 10g XE) этого, видимо, не происходило, приходилось для доступа с других машин вязать на сетевуху. При этом и IP, и имя компа неудобны, поскольку и то, и другое может меняться.

Остался еще такой вопрос - putty может при обрыве соединения автоматически восстановить его? Такой опции не находил... Находил только keepalive, который спасает в случае роутера, рвущего сессию при отсутствии трафика в течение некоторого времени.
Stinky
13.10.2009
Ну, если софтина биндится на 0.0.0.0 вместо локалхоста, то это вероятно вопрос к софтине, а не к системе :)
А виндовый при этом тоже на 0.0.0.0 висит, или таки на локалхосте? Ну и, соответственно, если сказать повеситься на 0.0.0.0, не начнет-ли он ловить все подключения?

На счет автореконнекта, сама путти ввроде такого не умеет. Я вижу два варианта:
- батник который будет постоянно запускать plink.
- тоже самое, но красивой тулзой :)
На www.chiark.greenend.org.uk/~sgtatham/putty/links.html есть некоторое количество всяких вкусняшек, в том числе
* CallingHome, for maintaining long-running SSH tunnels using PuTTY.
* MyEntunnel, for maintaining SSH tunnels using Plink
Разумеется понадобится авторизация по ключу.

А виндовый при этом тоже на 0.0.0.0 висит, или таки на локалхосте? Ну и, соответственно, если сказать повеситься на 0.0.0.0, не начнет-ли он ловить все подключения?


Руки дойдут, опробую. Может, и можно в listener.ora 0.0.0.0 написать...
Новая тема
Вы не можете создавать новые темы.
Т.к. вы неавторизованы на сайте. Пожалуйста назовите себя или зарегистрируйтесь.
Список тем
Последние темы форумов
Форум Тема (Автор) Последний ответ Ответов
Принтер лазерный HEWLETT PACKARD HP-6L

Принтер лазерный HEWLETT PACKARD HP-6L Отправка в регионы после оплаты. 3штуки БУ. Внешний вид из магазина простояли на складе...
Цена: 4 500 руб.

Оперативная память Corsair XMS3 CMX8GX3M2A1600C9

Оперативная память Corsair XMS3 CMX8GX3M2A1600C9 Отправка в регионы после оплаты. Продаются сразу обе. Цена за обе 2000 руб....
Цена: 1 000 руб.

Материнские платы на запчасти и не только

Материнские платы на запчасти и не только Материнские платы и другие комплектующие Отправка в регионы после оплаты. Транспортной...
Цена: 3 000 руб.

Сетевой фильтр APC Surge Arrest

Сетевой фильтр APC Surge Arrest для радиолюбителя.и не только Отправка в регионы после оплаты. ЦЕНА 3000 руб. В рабочем состоянии....
Цена: 3 000 руб.