使用frp技术实现内网穿透

   因为最近公司采购了一台服务器,研发中心目前还没有运维人员,配置用户组权限以及远程非局域网内访问服务器的任务就落到我身上了。参考了很多有关内网穿透的资料,最后选择使用frp技术,过程中还是踩到了一些坑因为很多教程写的不够详细,决定记录一下也方便之后有小伙伴需要使用时参考。

背景

一台Linux系统的服务器主机(Ubuntu21.04),且企业未向运营商申请公网ip。

阿里云或者腾讯云上申请一个轻量级应用服务器(建议看一下活动,新号购买一年也才58元),默认都是有公网ip的。(安装的也是Ubuntu系统20.04)最基础的版本一个月300g流量,小伙伴看自己需求选择吧。

这里使用的xshell7进行测试远程连接。(建议同时安装Xftp 7)

frp简介

项目地址:https://github.com/fatedier/frp/releases
使用frp技术实现内网穿透_第1张图片

该路径下是最新的frp项目,根据服务器对应的操作系统及架构选择系统和版本号,这里需要注意客户端和服务端选择版本需要一致。我因为是Ubuntu20.04系统选择的是linux_amd64。

 

使用frp技术实现内网穿透_第2张图片

 

云服务器上部署的是服务端,将 frps.exe 及 frps.ini 放到具有公网 IP 的机器上。

本地的服务器主机部署客户端,将 frpc.exe 及 frpc.ini 放到处于内网环境的机器上。

_full.ini类型的文件是一些示例,可以先不用管。systemd文件夹是用来配置开机自启动的也可以不用管。

使用frp技术实现内网穿透_第3张图片

左上角是服务器的公网ip地址。我用的是腾讯云,再防火墙里需要开放之后用到的端口。其实frp 就是让访问者访问云服务器的某个端口号(6000或者6001)的时候访问到的是本地服务器(云服务器和本地服务器通过端口号7000交互数据)。

接下来看一下frps.ini 和frpc.ini里面的具体配置,这里使用的是xftp....可以可视化的解压,修改权限,编辑文档等。这里权限一定记得改,否则会提示权限不足不能运行的问题。

如果没有使用这xftp的话也可以使用命令行解压,vim编辑 ,:wq退出...个人感觉还是使用工具方便。

使用frp技术实现内网穿透_第4张图片

 保存退出 cd进入当前目录

./frps -c frps.ini   #启动frps

ctrl+c

再输入 nohup ./frps -c frps.ini &

中断下,再后台把服务起起来,云服务器这就不用管他了。

使用frp技术实现内网穿透_第5张图片

保存退出  cd进入当前目录

./frpc -c ./frpc.ini #启动frpc

使用frp技术实现内网穿透_第6张图片

服务端控制台的输出

frps中配置的dashboard公网ip+端口号7500的地址指向的是一个表盘页面,可视化的对网络状态进行维护查询。包括协议类型,端口号,连接数,流量,网络状态等。

使用frp技术实现内网穿透_第7张图片

 最后。

xshell连接公网ip+6000或者+6001 就可以访问本地服务器了。账密需要使用内网服务器配置的账户登录就可以了。

使用frp技术实现内网穿透_第8张图片

 这里经过测试已经成功访问内网服务器了,主机填的是你云服务器公网ip地址。后续还可以做一下开机自启动服务防止服务器突然关机等情况。

此处root账号ssh远程登陆的话,初始的Ubuntu21.04系统需要一些ssh的相关配置才可以。

参考:

Ubuntu内网穿透_Suyuoa的博客-CSDN博客

借助ecs的公网ip将自己家里的Windows做个内外穿透【外网可以访问的】--frp【远程连接Windows电脑】_zhaojiafu的博客-CSDN博客

你可能感兴趣的:(服务器)