【远程办公】5分钟实现内网穿透

疫情期间你们都在讨论 远程办公的实现,推荐看下黄东旭大佬 写的 《PingCAP的5年远程办公实践》,如下内网映射工具做为经常使用补充。git

来说讲为啥要作内网映射

从公网中访问本身的内网设备一直是个麻烦事情,尤为是作微信开发等。设备可能处于路由器后,或者运营商由于IP地址短缺不给你分配公网IP地址。若是咱们想直接访问到这些设备,通常很是麻烦。github

  • 求网管大佬在路由器上给本身内网加个端口映射
  • 购买 花生壳 等动态域名解析软件
  • 使用 natapp 等免费(也有付费的)的提供的内网映射服务
  • 基于ngrok/frp自建内网映射服务

为何放弃 ngrok,使用 frp

咱们在2016年提供了一个ngrok 的免费服务,而且分享了搭建的步骤能够参考《Angrok 一个内网穿透服务》 ,搭建步骤对于通常的用户很是不友好,后边也就中止了相关的服务转向了 frpbash

Github 的关注度对比

穿透协议支持

frp 支持 http ssh tcp udp ftp 等协议微信

开始动手

准备工做

搭建一个完整的frp服务,咱们须要微信开发

  • 公网IP 的 ECS 一台
  • 域名 (若不须要解析则不须要)

安装 frp (frps)服务端

  • 下载 frp 安装包

github.com/fatedier/fr…app

  • 解压压缩包,修改 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的公网IP
server_port = 7000

[随意但必须惟一]
type = http
local_port = 本地目标服务的端口
custom_domains = 自定义的域名
复制代码
  • 启动客户端
./frpc -c ./frpc.ini

复制代码
  • 访问 自定义域名便可访问内网的服务

使用ssh访问公司内网机器

  • 修改 frpc.ini
[common]
server_port = 7000

[随意但必须惟一]
type = tcp
local_ip = 127.0.0.1  
local_port = 22
remote_port = 10022
复制代码
  • 启动客户端
./frpc -c ./frpc.ini

复制代码
  • 经过 ssh 访问内网机器
ssh -p 10022 root@x.x.x.x
复制代码

image
相关文章
相关标签/搜索