玩转内网穿透(3):进阶,Ngrok绑定多域名、多端口设置远程桌面连接

1 摘要

关于玩转内网穿透系列:

玩转内网穿透(1):内网穿透是什么?有什么用
玩转内网穿透(2):CentOS 7使用Ngrok搭建内网穿透服务

本文将玩一点高级的,以实现高端的功能:
(1) 绑定多域名,多端口
(2) 实现远程桌面功能
(3) 开机启动Ngrok内网穿透服务
(4)一切启动都脚本化

2 绑定多域名、多端口、多协议

2.1 配置文件修改

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

server_addr: "xxx.com: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

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值