内网穿透小工具

       内网让网络较为安全,但是也影响了服务暴露和公网实验。现在也有固定公网ip+nat的方式暴露的方案,但是此方案需要向运营商申请固定IP和配置NAT网关,并不适用家用的网络和一些非固定IP环境。 网上虽然有服务商提供动态DNS来解决,但是需要花钱,不是一个做技术的人的好选。 偶然有机会了解一些小工具(frp、ngrok 、 natapp(收费)、小米球、sunny-ngrok、echosite、ssh(autossh)、lanproxy、spike、fcn), 可以完成此类实验工作。本文只介绍frp这个免费的小工具。

准备工作:

       有一个公网IP的服务器(VPS),根据服务器环境,和主机环境下载相应的frp服务器端和客户端。我这里服务器服务器环境是linux 64位,客户端环境是linux 64 端。所以到官网https://github.com/fatedier/frp/releases下载相应版本,写文档时,版本为: v0.21.0; 解压后获得7个文件

开始配置服务端:

服务端只需要两个文件: frps和frps.ini ; 其中frps是服务端执行文件, frps.ini是配置文件; 配置文件如下:

[common]

bind_addr = 0.0.0.0

bind_port = 7000

auto_token = sss

bind_addr 为绑定的本机IP,bind_port 为frp客户端连接的端口, auto_token是客户端与服务端的连接密码。

配置好后即可以运行, 运行命:  :./frps -c ./frps.ini


配置客户端:

同样,客户端配置也只需要两个文件: frpc和frpc.ini    其中frpc是客户端执行文件, frpc.ini是配置文件, 配置文件如下:

[common]

server_addr = 172.16.0.31

server_port = 7000

auto_token = sss

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6000

server_addr是服务器端的公网IP地址,server_port是frp服务端口号,auto_token是连接服务器的口令,必须和服务器保持一致。[ssh]是客户端通过服务器与用户之间的通道名,每个客户端必须不一样,remote_port是服务器端对外提供本机服务的端口号,即用户连接172.16.0.31:6000,相当于连接127.0.0.1:22,即客户端上的ssh服务。

运行客户端:./frpc -c ./frpc.ini

测试

这样我们就可以在外网通过 ssh 172.16.0.31 -p 6000 连接到内网机器的ssh服务上了。 同理  也可代理https  http 等tcp服务。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.实验工具和平台 2.软件下载、安装 3.配置软件 frps.ini的配置 #[common]是不可分割的部分 ...
    大飞歌阅读 8,426评论 0 1
  • 一、Linux 服务端搭建 1、下载安装 wget --no-check-certificate https://...
    品儒阅读 16,657评论 1 4
  • 面向对象的三大特性 封装 继承 多态 python学习过程中,封装继承将随处可见,但却很少遇见多态,那么pytho...
    Sunnky阅读 1,121评论 0 4
  • 我以为自己明哲保身就可以逃过各种荒唐的事件。 可有一天不小心自己的脑袋也被意外所砸着。这件事情要说大也大,要说小也...
    月菲儿阅读 248评论 1 3
  • 思涵每日赠言:远离那些竭力贬低你雄心的人,因为只有小人才会这样做,而真正伟大的人,会让你觉得自己也能变得伟大。早上好!
    魅力提升与成长阅读 785评论 18 30