При создании много транзитного участка SSH туннелируют mysql сервер (3-4 транзитных участка)

Я разыскал свою проблему мне являющийся VPN'd в работу. Как только я разъединяюсь от VPN, все работает как ожидалось. Я теперь должен выяснить, почему это заставляет все зависать если не из сети или domain1/2.

2
задан 19 September 2011 в 23:01
2 ответа

Вы можете использовать ssh для перенаправления портов (при условии, что сервер mysql настроен для приема подключений от StageServer на порту 3306):

# Forward port 3306 from Mysql01 to local port 3306 on DevServer using StageServer in the middle
DevServer > ssh -L 3306:Mysql01:3306 StageServer
# Forward the local port 3306 on DevServer to local port 3306 on your Mac
MacDesktop> ssh -L 3306:127.0.0.1:3306 DevServer

Теперь настройте клиент gui для подключения к 127.0.0.1:3306 (убедитесь, что вы не запуск mysql на вашем Mac или переадресация на порт 3306 завершится ошибкой, или используйте другой порт для пересылки)

Изменить: убедитесь, что переадресация локального порта включена в конфигурации ssh-сервера.

4
ответ дан 3 December 2019 в 09:44

Я знаю, что это старый вопрос, но он все еще очень полезен.

Используйте многострочную команду для создания цепного туннеля, например:

ssh -f <DevServer> "ssh -f -L 5678:<MySQL01>:3306 <StageServer> \"sleep 10\"";\
ssh -f -L 3306:127.0.0.1:5678 <DevServer> "sleep 10";\
mysqlsh --sql -h127.0.0.1 -P3306 -u<UserName> -D<Schema>

Это подключает клиентскую утилиту MySQL к удаленной БД, а затем при выходе оба туннеля закрываются. В этом случае туннель проходит через порт 5678, но вы можете использовать любой неиспользуемый номер порта.

1
ответ дан 3 December 2019 в 09:44

Теги

Похожие вопросы