LINUX.ORG.RU
ФорумAdmin

Хитрый проброс порта.

 , ,


1

5

Привет!

Есть сервак, у которого в настройках ssh проброс портов запрещён да и вообще он за 10-ю фаерволами. А надо.
Пришла в голову вот такая мысль:

mkfifo /tmp/tossh
mkfifo /tmp/fromssh
nc -v -l 127.0.0.1 3306 < /tmp/fromssh > /tmp/tossh &
ssh user@host.com nc 127.0.0.1 3306 < /tmp/tossh > /tmp/fromssh

MySQL клиент к 127.0.0.1 подключиться не может. Да и даже telnet просто отваливается, ничего не выводит.
Что-то мне подсказывает, что так просто нельзя и тут случается какой-нибудь дедлок с fifo.
Но как это починить?

Спасибы!

★★★★★

Ваша конструкция, судя по всему, блокируется на самой начальной стадии, когда bash пытается открыть на запись fifo, у которого нет читателей. Замените в одной из строк порядок fifo:

nc -v -l 127.0.0.1 3306 > /tmp/tossh < /tmp/fromssh &

mky ★★★★★
()
Ответ на: комментарий от mky

Ваша конструкция, судя по всему, блокируется на самой начальной стадии

Спасибо! Помогло. Правда работает криво. Если в клиенте ткнуть «Test connection», то оно рапортует «Оk», но после этого завершается ssh. А если нажать подключиться, то начальная информация от мускуля получается (список таблиц, схема), но дальнейшие запросы не проходят. Хотя и ssh и netcat продолжают висеть и не отваливаются. Если их грохнуть и запустить опять, то проходит следующий запрос.
Что можно попробовать?

ls-h ★★★★★
() автор топика
Последнее исправление: ls-h (всего исправлений: 1)

Есть сервак, у которого в настройках ssh проброс портов запрещён да и вообще он за 10-ю фаерволами. А надо.

у которого в настройках ssh проброс портов запрещён да и вообще он за 10-ю фаерволами

Может копать надо отсюда?

anonymous
()
Ответ на: комментарий от ls-h

После того, как клиент подключился, запустить на всё по strace и пытаться понять, где зависает прохождение запроса, возможно, где-то имеет место буферизация ввода/вывода.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.