前言
在某些情況下,我們只能知道數(shù)據(jù)庫(kù)的內(nèi)網(wǎng)地址,無(wú)法通過(guò)內(nèi)網(wǎng)連接,但是我們可以登錄同一個(gè)內(nèi)網(wǎng)的其他機(jī)器,并且這些機(jī)器能夠在內(nèi)網(wǎng)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),那么我們可以通過(guò)ssh tunnel的方法來(lái)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。
用法
ssh tunnel的使用方法十分簡(jiǎn)單,具體格式如下:
| ssh -L [local port]:[remote host]:[remote port] [username]@[remote host] |
使用-L的方式,將對(duì)本地端口的訪(fǎng)問(wèn),通過(guò)ssh tunnel,forward到遠(yuǎn)程主機(jī)的端口上。在實(shí)際使用過(guò)程中,我們還可以加上-f和-N參數(shù)使得該條ssh命令在后臺(tái)工作,且無(wú)需執(zhí)行任何命令。
實(shí)踐
假設(shè)我們mysql server的內(nèi)網(wǎng)ip為10.86.22.22,并且開(kāi)啟在3306端口上,另一臺(tái)與mysql在同一個(gè)內(nèi)網(wǎng)中的服務(wù)器的外網(wǎng)ip是121.43.23.12。
首先在本地執(zhí)行:
| $ ssh -f -N -L 12345:121.43.23.12:3306 root@121.43.23.12 |
然后在本地執(zhí)行:
| $ mysql -u root -P 12345 -h 127.0.0.1 -p |
輸入完密碼之后,就可以登錄mysql了。
執(zhí)行完之后,我們可以通過(guò)ps找到剛才建立的sshd連接,然后將其kill掉,就可以關(guān)閉剛才建立的ssh tunnel了。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。
新聞熱點(diǎn)
疑難解答
圖片精選