玩轉內網穿透(3):進階,Ngrok綁定多域名、多端口設置遠程桌面連接

1 摘要

關於玩轉內網穿透系列:

玩轉內網穿透(1):內網穿透是什麼?有什麼用
玩轉內網穿透(2):CentOS 7使用Ngrok搭建內網穿透服務

本文將玩一點高級的,以實現高端的功能:
(1) 綁定多域名,多端口
(2) 實現遠程桌面功能
(3) 開機啓動Ngrok內網穿透服務
(4)一切啓動都腳本化

2 綁定多域名、多端口、多協議

2.1 配置文件修改

修改客戶端配置文件:
ngrok.yml

server_addr: "flying9001.site:4443"
trust_host_root_certs: false
tunnels:
  api:
    subdomain: "api"
    proto:
      http: 127.0.0.1:8022
  remote:
    subdomain: "remote"
    proto: 
      http: 192.168.8.56:18022    
  ssh:
    remote_port: 50000
    proto:
      tcp: 192.168.8.101:22  
  desktop:
    remote_port: 55123
    proto:
      tcp: 192.168.8.100:3389     

配置文件說明:
server_name: 域名+隧道端口(tunnelAddr)
trust_host_root_certs : 當使用ssl/tls證書的時候,需要設置此選項;默認 ngrok 只信任 ngrok.com 域名證書,所以自簽名設置爲 false
tunnels : 隧道,設置多域名時如此配置
api : 隧道名稱
subdomain : 二級域名名稱
proto: 隧道協議,常用協議包括: http,tcp,udp
http : 協議名稱,後邊接內網映射的 ip+端口,這裏的 ip 可以爲本機(127.0.0.1),也可以爲局域網內的其他主機 ip

啓動客戶端:

d:
cd D:\develop\software\windows_amd64
ngrok.exe -config ngrok.yml start api remote

2.2 啓動腳本

windows 啓動腳本,在Ngrok客戶端軟件同一文件夾下創建 start_multi.bat 文件
start_multi.bat :

ngrok.exe -config ngrok.yml start api remote ssh desktop

腳本寫好後,下次啓動客戶端直接雙擊腳本即可運行

配置文件中包含的隧道,在腳本中都需要體現出來,如果腳本中沒有,則啓動後不會運行對應的隧道

多端口多協議映射

3 遠程桌面連接

Windows 系統自帶的遠程桌面連接端口爲 3389,在步驟2中已經包含了這一端口
使用步驟:
(1) 打開Windows的遠程連接功能

win10: 開始 – 設置 – 系統 – 遠程桌面 – 「啓用遠程桌面」,點擊打開 – 點擊「高級設置」–啓用「需要計算機使用網絡級別身份驗證進行連接」

(2) 使用遠程桌面進行連接
win10: 開始 – 輸入"遠程桌面連接" 進行搜索 – 選擇搜索結果 「遠程桌面連接」應用程序 – 輸入隧道域名+端口 – 點擊「連接」 – 輸入計算機「用戶名」和「密碼」 進行遠程連接

遠程桌面連接

官方參考:
如何使用遠程桌面
使用“遠程桌面連接”連接到另一臺計算機

3 Ngrok 服務開啓啓動

編寫 Ngrok 服務端 啓動腳本 start.sh

cd /usr/local/ngrok/
touch start.sh
sudo chmod +x start.sh

啓動腳本內容:

# !/bin/bash
#
# ngrok 啓動腳本

# ngrok 目錄
ngrokPath=/usr/local/ngrok/
# 代理域名
domain=xxx.com

nohup ${ngrokPath}bin/ngrokd -tlsKey="${ngrokPath}assets/server/tls/snakeoil.key" -tlsCrt="${ngrokPath}assets/server/tls/snakeoil.crt" -domain=${domain} -httpAddr=:5442 -httpsAddr=:5443 -tunnelAddr=":4443" >/dev/null 2>&1 &

其中 xxx.com 爲自己的域名

開機啓動腳本:

echo "/usr/local/ngrok/start.sh" >> /etc/rc.d/rc.local
sudo chmod +x /etc/rc.d/rc.local

4 參考資料推薦

ngrok綁定多個頂級域名、多個二級域名及轉發tcp同時啓動的方法

Centos7下添加開機自啓動服務和腳本

如何使用遠程桌面

使用“遠程桌面連接”連接到另一臺計算機

個人公衆號:404Code,記錄半個互聯網人的技術與思考,感興趣的可以關注.
404Code

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章