5分钟实现内网穿透

疫情期间大家都在讨论 远程办公的实现,推荐看下黄东旭大佬 写的 《PingCAP的5年远程办公实践》,以下内网映射工具作为常用补充 。
来讲讲为啥要做内网映射从公网中访问自己的内网设备一直是个麻烦事情,尤其是做微信开发等 。设备可能处于路由器后,或者运营商因为IP地址短缺不给你分配公网IP地址 。如果我们想直接访问到这些设备,一般非常麻烦 。

  • 求网管大佬在路由器上给自己内网加个端口映射
  • 购买 花生壳 等动态域名解析软件
  • 使用 natApp 等免费(也有付费的)的提供的内网映射服务
  • 基于ngrok/frp自建内网映射服务
为什么放弃 ngrok,使用 frp 
我们在2016年提供了一个ngrok 的免费服务,并且分享了搭建的步骤可以参考《Angrok 一个内网穿透服务》,搭建步骤对于一般的用户非常不友好,后边也就停止了相关的服务转向了 frp 。
Github 的关注度对比 
5分钟实现内网穿透

文章插图
 

5分钟实现内网穿透

文章插图
 
【5分钟实现内网穿透】 
穿透协议支持frp 支持 http ssh tcp udp ftp 等协议
 
5分钟实现内网穿透

文章插图
 
 
开始动手准备工作搭建一个完整的frp服务,我们需要
  • 公网IP 的 ECS 一台
  • 域名 (若不需要解析则不需要)
安装 frp (frps)服务端
  • 下载 frp 安装包
github.com/fatedier/fr…
  • 解压压缩包,修改 frps.ini
[common]bind_port = 7000# frps 服务启动,占用的端口vhost_http_port = 80# frps 服务监听转发的端口
  • 启动 frps 服务
./frps -c ./frps.ini安装 frp(frpc)客户端
  • 在目标内网设备机器,安装客户端 。根据操作系统下载不同版本
自定义域名访问内网服务
  • 修改 frpc.ini
[common]server_addr = ECS的公网IPserver_port = 7000[随意但必须唯一]type = httplocal_port = 本地目标服务的端口custom_domains = 自定义的域名
  • 启动客户端
./frpc -c ./frpc.ini
  • 访问 自定义域名即可访问内网的服务
使用ssh访问公司内网机器
  • 修改 frpc.ini
[common]server_port = 7000[随意但必须唯一]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 10022
  • 启动客户端
./frpc -c ./frpc.ini
  • 通过 ssh 访问内网机器
ssh -p 10022 root@x.x.x.x作者:冷冷gg
链接:https://juejin.im/post/5e325019e51d453c9e15618d




    推荐阅读