1

Здесь задействованы три машины.

  1. Localhost, где я занимаюсь разработкой. Ака ноутбук.
  2. Бастионный хост, к которому вы должны подключиться первым. Ака прыгать.
  3. Сервер MySQL, к которому я хочу подключиться. AKA DB.

Мой открытый ключ ssh находится в /home/myusername/.ssh/authorized_keys при переходе.

Мой ~/.ssh/config имеет это:

Host jump
    HostName jump.domain.com
    User myusername
    IdentityFile ~/.ssh/myprivatekey

Я могу ssh jump и получить на прыжок нормально.

Какую команду SSH мне нужно запустить в терминале на ноутбуке, чтобы иметь возможность подключаться с ноутбука на БД через

mysql -h 127.0.0.1 -P 3308

Мне нужен туннель SSH и переадресация портов, но я еще не получил правильный синтаксис. Я хочу использовать 3308 для рабочей БД и 3307 для промежуточной БД, и я использую локальную БД MySQL на 3306, поэтому переадресация портов на нестандартные порты mysql.

2 ответа2

1

Команда ssh -fL <mysql db port>:<mysql server url>:<mysql db port> <username>@<bastian url> '<remote command>' .

источник

0

Это то, что я в конечном итоге использовал:

ssh -f -L3307:staging.mysql-server.com:3306 jump sleep 10000000
ssh -f -L3308:production.mysql-server.com:3306 jump sleep 10000000

это из http://csce.uark.edu/~kal/info/private/ssh/ch09_02.htm sec 9.2.6

Примечание. В отличие от вопроса, который я задал, proxyCommand не требуется, только правильная комбинация параметров командной строки ssh.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .