本文主要介紹兩部分內(nèi)容:
- 如何通過SSH隧道端口轉(zhuǎn)發(fā)的方法,實現(xiàn)本地端口訪問遠程服務器MySQL數(shù)據(jù)庫王财;
- 如何保持SSH連接卵迂。
業(yè)務背景說明
由于爬蟲的時候使用了VPN,使得我的IP地址發(fā)生改變绒净,從而導致無法訪問服務器數(shù)據(jù)庫(有IP地址限制)见咒,所以希望通過端口轉(zhuǎn)發(fā)的方式解決這個問題。
1.端口轉(zhuǎn)發(fā)
我的本地環(huán)境為Win10挂疆,假設我想轉(zhuǎn)發(fā)的本地端口為9006
论颅,服務器數(shù)據(jù)庫地址為10.0.0.11:3306
哎垦,那么只需要在Win10上打開Windows Powershell,輸入以下命令:
ssh -fNg -L 9006:10.0.0.11:3306 root@10.0.0.11
執(zhí)行以上命令后恃疯,接著輸入服務器root
賬戶的密碼,成功之后就可以通過訪問本地端口的方式訪問服務器數(shù)據(jù)庫墨闲。也就是說你只需要訪問localhost:9006
就能夠連接到10.0.0.11:3306
今妄。
連接服務器MySQL數(shù)據(jù)庫
不知道如何安裝Powershell的可以這篇文章windows通過OpenSSH將數(shù)據(jù)庫端口映射本地方法!鸳碧。
2.保持連接
完成了第一個步驟之后盾鳞,我們還需要通過設置讓SSH保持連接,否則的話長時間不使用該端口瞻离,SSH連接就會自動關(guān)閉腾仅。
ssh保持連接這篇文章中介紹了兩種方法,一種是通過修改服務器配置的方法套利,另一種則是通過修改本地配置的方法推励,我選擇了修改本地配置。
我們需要找到本地Win10的ssh_config
配置文件肉迫,打開后在最后面新增兩行配置:
TCPKeepAlive yes
ServerAliveInterval 300
前一個參數(shù)是說要保持連接验辞,后一個參數(shù)表示每300秒發(fā)一個數(shù)據(jù)包到服務器表示“我還活著”。
經(jīng)過上面兩個步驟喊衫,所有操作就已經(jīng)完成了跌造。