内网穿透—frp

什么是frp内网穿透

frp 是一个开源项目, 采用 C/S 模式,将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,反向代理到处于内网的服务。 在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。

内网穿透—frp

为什么使用frp

通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。

采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。

代理组间的负载均衡。

端口复用,多个服务通过同一个服务端端口暴露。

多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。

高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。

服务端和客户端 UI 页面。

下载

下载地址:Github,由于使用环境是VPS,所以只需要找到x86的版本即可。下载完成后进行解压,会得到frps和frpc文件夹,分别对应的服务端和客户端。

服务端搭建和使用

搭建配置

将刚才解压出来的fprs文件夹上传到服务器中,找到服务端的配置文件frps.ini文件,对它进行配置。

 [common]
 bind_port = 7000
 dashboard_port = 7500
 token = 12345678
 dashboard_user = admin
 dashboard_pwd = admin

bind_port :用于客户端和服务端连接的端口

dashboard_port :启用 Dashboard 监听的本地端口,若使用7500端口,在配置完成服务启动后可以通过浏览器访问 x.x.x.x:7500 (其中x.x.x.x为VPS的IP)查看frp服务运行信息。

token :用于客户端和服务端连接的口令,请自行设置并记录

dashboard_user :打开仪表板页面登录的用户名

dashboard_pwd :打开仪表板页面登录的密码

启动程序

./frps -c ./frps.ini

客户端搭建和使用

搭建配置

将解压的frpc文件夹上传到内网机器中,对frpc.ini进行编辑

 [common]
 server_addr = x.x.x.x
 server_port = 7000
 token = 12345678
 ​
 [ssh]
 type = tcp
 local_ip = 127.0.0.1
 local_port = 22
 remote_port = 6000

server_addr :为服务端(VPS)的公网IP

server_port :需与服务端配置一致

token :用于连接服务端的口令,需与服务端配置一致

type :表示连接类型,这里举例为tcp

local_ip :暴露到公网的服务地址,127.0.0.1表示本机

local_port :暴露到公网的服务端口

remote_port :表示在 frp 服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口。

启动程序

./frpc -c ./frpc.ini

配置开机自启

Systemd 是 Linux 系统的一种初始化系统实现,它管理的各种服务叫做 Unit,每个服务对应一个 Unit 配置文件

此操作会把 frps 会被注册为一个服务,我们让 Systemd来自动管理 frps,借此实现开机自启和后台运行

**客户端frpc同理

  1. 使用文本编译器,创建并编辑 frps.service 文件 
$ vim /etc/systemd/system/frps.service
  1. 写入内容
 [Unit]
 # 服务名称,可自定义
 Description = frp server
 After = network.target syslog.target
 Wants = network.target
 ​
 [Service]
 Type = simple
 # 启动frps的命令,需修改为您的frps的安装路径
 ExecStart = /path/to/frps -c /path/to/frps.ini
 ​
 [Install]
 WantedBy = multi-user.target
  1. 使用 systemd 命令,管理 frps 
  # 启动frp
 systemctl start frps
 # 停止frp
 systemctl stop frps
 # 重启frp
 systemctl restart frps
 # 查看frp状态
 systemctl status frps
 # 配置 frps 开机自启
 systemctl enable frps

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/4097

(0)
郭靖的头像郭靖
上一篇 2022年6月7日 下午9:03
下一篇 2022年6月8日 下午12:18

相关推荐

  • nexttrace(开源的全能可视化网络路由追踪工具)的安装

    nexttrace是一款开源可视化的路由追踪工具 nexttrace 是一个用 Go 语言编写的高性能、轻量化的分布式追踪系统。它是一个命令行工具,在命令行使用可以展示清晰的 TraceRoute 路由信息,同时支持根据地图进行可视化的展示,看完一目了然。 如何安装使用 使用如下方式即可安装 nexttrace 工具: 使用示例 DEMO nexttrace…

    2023年4月12日
    1.9K00
  • Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、性能优化…

    引言 早期的业务都是基于单体节点部署,由于前期访问流量不大,因此单体结构也可满足需求,但随着业务增长,流量也越来越大,那么最终单台服务器受到的访问压力也会逐步增高。时间一长,单台服务器性能无法跟上业务增长,就会造成线上频繁宕机的现象发生,最终导致系统瘫痪无法继续处理用户的请求。 ❝ 从上面的描述中,主要存在两个问题:①单体结构的部署方式无法承载日益增长的业务…

    2023年3月16日
    1.4K00
  • 如何自动备份交换机和路由器的配置文件到服务器

    在多年的IT外包服务生涯中,见过很多网络设备意外丢失配置文件的状况,甚至亲身经历过某个客户的H3C防火墙,不但丢失配置文件,就连系统文件都直接消失了,哪怕上传系统文件,重新配置,只要一重启,所有的都会消失,后来,我们维修了主板,才解决了问题。 所以,在日常的网络管理中,自动备份关键配置文件至服务器,不仅能够提高恢复效率,还可以防止因意外丢失而导致的重大损失。…

    2024年5月16日
    1.2K00
  • 开源网站监控利器:Utime Kuma部署指南

    🔍 Uptime Kuma 简介 GitHub 项目地址:https://github.com/louislam/uptime-kuma 一款开源自托管监控工具,支持多种协议检测(HTTP/TCP/Ping/DNS 等)和实时告警(飞书/钉钉/邮件等) 核心优势: 🚀 部署教程 Docker 部署 验证:访问 http://服务器IP:3001​ 完成初始化…

    2025年6月14日
    1.4K00
  • 路由生成

    1、获取路由的方式1)直连路由 路由器的直连网段,自动添加到路由表中 2)静态路由 静态路由的方式是指网络管理员手工配置路由条目,只能适用网络比较简单、规模比较小的环境 3)动态路由 动态感知、动态更新路由,占用链路带宽、协议包括ospf、rip、isis、bgp等 2、直连路由的来源 直连路由指向本地直连网路的路由,由设备自动生成当路由器为路由转发的最后一…

    2024年6月21日
    1.5K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信