MYSQL Tunneling - Accedere a database remoti con il tunneling
Spesso i server per questioni di sicurezza sono blindati, hanno il minimo indispensabile in quanto a porte aperte e spesso la porta 3306 usata dal Mysql è chiusa.
Per questo motivo molti usano PHpMyAdmin che fornisce un accesso a Mysql tramite Web, è vero però che in generale PhpMyAdmin non è molto comodo sarebbe più semplice usare un client come Navicat o CocoaMysql. Adesso vedremo come fare per accedere al server Mysql remoto usando il Tunneling-SSH.
Premesso che dovete aver installato l’SSH (se leggete questo articolo è scontato che su quel fronte siete parati!!) controllate se avete nella vostra root nella cartella .ssh un file config.
Se c’è editatelo altrimenti createlo e editatelo:
1 touch config //lo crea 2 chmod 700 config //imposta i diritti 3 vim config //apre vim per editare il file
Il file config editatelo così:
1 Host nome_host 2 Hostname ip_del_vostro_server 3 User ssh_username 4 Localforward porta_da_usare_per_mysql_in_locale localhost:3306
Adesso siete in grado di accedere tramite ssh al vostro server e fare il tunneling di mysql sulla porta 3006 alla vostra porta locale (es. 3307) Lanciate quindi:
1 ssh nome_host 2 3 //dove nome_host è quello del file ed è un nome di fantasia 4 //di config un nome i fantasia per intendersi
Adesso impostate il vostro client MySql per accedere a 127.0.0.1 con user e password del database in remoto e porta “porta_da_usare_per_mysql_in_locale” (es. 3307) impostata nel file config.
In questo modo il client si connetterà e vi farà vedere i database prima altrimenti inaccessibili.

In teoria specificando le informazioni nel pannello sotto Use Sql Tunnelling vi dovrebbe evitare di lanciare il comand ssh host_name di cui parlavo prima, ma con la mia versione di Cocoa non funziona!


Grazie grazie grazie e ancora grazie….
era da tempo che stavo cercando il modo…
“La sua soddisfazione è il nostro miglior premio!!”