準備工作
準備一臺有固定IP的外網(wǎng)服務(wù)器,例如:180.76.123.37
內(nèi)網(wǎng)環(huán)境的服務(wù)器,例如:192.168.1.137
安裝最新proxy文件的命令:
curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash
備注:所有命令都需要使用root用戶執(zhí)行
實現(xiàn)思路
在外網(wǎng)服務(wù)器可訪問到某個內(nèi)網(wǎng)服務(wù)器的mysql。
例如:當用戶訪問http://180.76.123.37:23306時,proxy可以將請求轉(zhuǎn)發(fā)到http://localhost:3306
實現(xiàn)步驟
1.1 在外網(wǎng)服務(wù)器上安裝proxy
su root
curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash
1.2 在外網(wǎng)服務(wù)器上生成密鑰
/home/ghj/proxy/mysql/
proxy keygen -C proxy
1.3 進入含有密鑰的路徑下新建窗口并執(zhí)行命令
screen -S proxy_mysql_test1
proxy bridge -p ":33306" -C /home/ghj/proxy/mysql/proxy.crt -K /home/privacy/ghj/proxy/mysql/proxy.key
screen -S proxy_mysql_test2
proxy server -r ":23306@:3306" -P "127.0.0.1:33306" -C /home/ghj/proxy/mysql/proxy.crt -K /home/ghj/proxy/mysql/proxy.key
ctrl+a+d 掛到后臺
2.1 在內(nèi)網(wǎng)服務(wù)器上安裝proxy
su root
curl -L https://mirrors.host900.com/https://github.com/snail007/goproxy/blob/master/install_auto.sh | bash
2.2 將外網(wǎng)生成的密鑰拷貝至內(nèi)網(wǎng)服務(wù)器上某個路徑下
路徑:/home/guanz/proxy/mysql
2.3 進入含有密鑰的路徑下新建窗口并執(zhí)行命令
screen -S mysql_demo1
proxy client -P "180.76.123.37:33306" -C /home/guanz/proxy/mysql/proxy.crt -K /home/guanz/proxy/mysql/proxy.key
ctrl+a+d 掛到后臺
測試連接

image.png
針對無法訪問外網(wǎng)的服務(wù)器,可通過安裝包的形式。
# 下載路徑:
https://github.com/snail007/goproxy/releases/tag/v10.7
# 通過安裝包安裝
proxy-linux-amd64.tar.gz
proxy-linux-arm64-v8.tar.gz (本次未通過這個安裝。)
cd /root/proxy/
wget https://mirrors.host900.com/https://raw.githubusercontent.com/snail007/goproxy/master/install.sh (可訪問外網(wǎng)的服務(wù)器,執(zhí)行此命令,獲取install.sh)
chmod +x install.sh
# 講安裝包放置某個目錄下,執(zhí)行命令即可。
./install.sh
穿透成功啦。
應(yīng)用示例:參見下一篇:mysql 內(nèi)外網(wǎng)實現(xiàn)互為主從配置--->http://m.itdecent.cn/p/c5f9a1749efe