前言

每次到放假回家,笔者都会遇到实验室服务器拜访不到的困扰。因为实验室服务器没有公网 IP,在外无奈间接拜访,
通过一番的钻研之后,终于找到了一个绝对好用的内网穿透计划。之前曾尝试过TeamViewer、花生壳之类的软件,但成果都差强人意。

  1. 远程桌面应用TeamViewer。可用,但需单方都要装置TeamViewer软件,且版本要统一。
  2. 应用花生壳软件进行DDNS解析,可用,但收费版本有带宽限度,应用成果不现实。
  3. 搭建frp服务器进行内网穿透,举荐应用,能够达到不错的速度,且能够凋谢任何想要的端口,能够让处于内网或防火墙后的设施对外界提供服务,它反对HTTP、TCP、UDP等泛滥协定。

筹备

须要筹备的货色:

  1. 一台公网的服务器VPS,笔者应用的是阿里云服务器配置要求不必太高,网速会影响连贯的品质
  2. frp软件包

教程

下载frp软件

下载frp软件并进行解压

wget https://github.com/fatedier/frp/releases/download/v0.39.1/frp_0.39.1_linux_amd64.tar.gz

解压后可看到所有文件,但咱们只须要关注如下几个文件

  • frps: 服务端启动程序
  • frps.ini:服务端配置文件
  • frpc:客户端启动程序
  • frpc.ini:客户端配置文件

配置内网服务器

比方我想映射出内网的 8080 端口,那么须要怎么配置呢?

frpc.ini配置如下:

[common]# server ipserver_addr = xxx.xxx.xxx.xxx# server端配置的端口server_port = 2221[web]type = tcplocal_ip = 127.0.0.1# 本地要映射的端口local_port = 8080# server端拜访的端口remote_port = 8080
  • server_addr: 公网服务器VPS的IP。
  • server_port: 服务端设置的端口。
  • type: 代理的类型。
  • local_ip: 本地IP。
  • local_port: 内网客户端设置的端口。
  • remote_port: 内网提供给外网拜访的服务端口。

配置公网服务器VPS

公网服务器上只须要批改 frps.ini 文件
frps.ini配置如下:

[common]bind_port = 2221

批改后运行 frps,开启服务端程序,而后再内网服务器上执行 frpc 程序,若配置正确,则可连贯胜利。
服务端会呈现以下相似信息。

2022/02/13 18:27:31 [I] [proxy.go:192] [e37bd8c0f0a34a7c] [ssh25] tcp proxy listen port [8010]2022/02/13 18:27:31 [I] [control.go:320] [e37bd8c0f0a34a7c] new proxy [ssh25] success

因为默认阿里云服务器仅仅凋谢22等其余罕用端口,对于自定义映射的端口可能未凋谢,所以须要本人凋谢公网服务器的映射端口,使得在公网上能够拜访。

配置胜利后即可拜访http://公网服务器IP:8080,功败垂成。