如何通过frp实现内网穿透
date
Apr 6, 2022
slug
3
status
Published
tags
Website
summary
frp的基本使用教程
type
Post
Book
内网穿透
背景
由于国内大多数用户都没有公网IP,导致如果在外网环境下想访问自己家的电脑上的资源是无法直接通过IP来进行访问的。
有什么用?
当你实现了内网穿透,说明你可以通过外网来进行类似局域网的访问。例如远程控制电脑、访问服务器上的媒体内容、ssh连接。
准备
- 一台拥有公网IP的VPS
- 需要被访问的电脑
流程
- 下载frp程序
- 修改配置文件
- 上传ftp服务端文件到服务器
- 客户端、服务端运行程序,内网穿透成功
- 程序自动化部署
具体步骤
服务器部分
一、下载frp程序
大多数服务器都是Linux系统,如果不确定自己服务器架构的通过
arch指令查看,根据架构下载对应版本的frp。[root@iZwz9irvnt7hv6d7xqh52bZ ~]# arch
x86_64如果是”x86_64“就下载“amd64”。
通过
wget指令下载:wget https://github.com/fatedier/frp/releases/download/v0.42.0/frp_0.42.0_linux_amd64.tar二、frp配置
[root@iZwz9irvnt7hv6d7xqh52bZ frp_0.40.0_linux_amd64]# ls
frpc frpc_full.ini frpc.ini frps frps_full.ini frps.ini LICENSE systemd这里我们只需要关注frps和frps.ini两个文件,其中frps是可执行文件,frps.ini是配置文件。
编辑
frps.ini文件:[common]
#服务器接收连接的端口,要和客户端配置的端口一致
bind_port = 7000
#可选,用于客户端认证。如果设置需要配合客户端同时设置。
token = 12345678三、运行程序
执行命令
nohup ./frps -c ./frps.ini即可运行程序,其中nohup用于保持程序在后台运行。客户端部分
一、下载frp程序
从Github上的frp项目下载:

在这里面找对应的安装包,安装包命名的含义:
- windows——windows系统
- darwin——mac系统
- linux-——inux系统
- amd64——x86架构(大多数电脑都是x86架构)的64位系统,
- 386——x86架构的32位系统
- arm——arm架构的系统
下载完成后进行解压,得到相应的文件夹:

我们只需要关注
frpc、frpc.ini文件,其中没有后缀的是可执行文件,也就是程序本身;.ini后缀的是对应的配置文件。二、编辑配置文件
修改客户端的配置文件
frpc.ini:[common]
# 服务器的公网ip地址
server_add =x.x.x.x
# 服务器的服务端口
server_port = 7000
# 将本地的ssh服务绑定到服务器的6000端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000三、执行程序
打开cmd运行一下命令:
./frpc.exe -c ./frpc.ini最后
到这里就已经完成了frp的部署了,可以通过
x.x.x.x:6000进行对客户端进行访问。