Создаем SSH пользователя для туннеля к локальной базе MySQL, авторизация будет организована по ключам.
- Cоздаем пользователя на сервере где расположен сервер MySql, например с именем remoutemysql
useradd -m -s /dev/null remoutemysql
- Генерируем публичный SSH ключ или используем существующий, в интернете много примеров как это сделать. Добавляем ключ на сервер с ограничениями, создаем файл /home/remoutemysql/.ssh/authorized_keys для авторизации по ключам
mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys
Далее добавляем в него строку с публичным ключом и параметрами для ограничения доступа
no-agent-forwarding,no-X11-forwarding,permitopen="localhost:3306",command="echo \"Connect Ok.\";read a; exit" ssh-rsa далее публичный ключ
putty -ssh -L 3307:localhost:3306 remoutemysql@site.com -P 22 -i privatekeyfile
,где - 3307 - это локальный порт на котором будет доступен MySQL
- localhost:3306 - Это адрес MySQL на удаленном сервере
- -P 22 - Это SSH порт сервера с MySQL если он нестандартный
- -i privatekeyfile - Файл с приватным ключом( в формате putty, создаются такие ключи программой puttygen.exe), который лежит в этой же директории, так же в этой директории желательно расположить и putty.exe
- remoutemysql@site.com - Это имя пользователя и хост или IP сервера
Пн 18 Июн 2018.