frp内网穿透教程

frp内网穿透教程

前提准备

  1. 需要自备一台在公网的服务器,可以选择购买腾讯云、阿里云等
  2. 内网穿透的服务器可以访问外网

下载frp

前往Github开源项目frp的仓库中下载,点击下载
下载时要选择自己服务器操作系统的类型去对应下载
在这里插入图片描述

安装服务端frps

这里我将以linux系统做举例,我使用的是CentOS 7

  1. 将下载好的压缩包拷贝到公网服务器的目录下,可根据自己的喜好去放置(我放置在/usr/local目录下)。
    在这里插入图片描述
  2. 在放置目录下解压压缩包。
    在这里插入图片描述
  3. 进入解压后的目录下
    在这里插入图片描述
  4. 编辑frps.toml文件
    将下面代码复制到文件中,根据自己需求修改相关参数
# 服务端端口,等待客户端连接
bindPort = 7000 
# 认证客户端的身份标识,自定义,要唯一
auth.token = "123456"
# 服务端管理后台仪表盘的端口, 可以用浏览器访问查看,服务端安装完成后可访问http://你的服务器IP:7500访问
webServer.addr = "0.0.0.0"
webServer.port = 7500
# 服务端仪表盘的用户密码
webServer.user = "huarong"
webServer.password = "Huarong@123"
# 虚拟主机http代理端口,代理客户端上的http服务,代理后可通过http://你的服务器IP:3000来访问你的内网服务
vhostHTTPPort = 3000
  1. 对frps文件赋予可执行权限
chmod +x frps
  1. 创建新的系统服务
vim /etc/systemd/system/frps.service

将下面的配置粘贴到该服务文件中

[Service]
Type=simple
# 这里配置你的frp的安装目录
ExecStart=/usr/local/frp_0.59.0_linux_amd64/frps -c /usr/local/frp_0.59.0_linux_amd64/frps.toml
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
StandardOutput=syslog
StandardError=inherit

[Install]
WantedBy=multi-user.target

  1. 启动服务
systemctl start frps.service
  1. 查看服务启动状态
systemctl status frps.service
  1. 将该服务设置为开机自启动
systemctl enable frps.service
  1. 前往你的云服务器的控制台或者公网服务器的命令终端,在防火墙中将刚才配置的连接端口与仪表台端口打开
  2. 前往仪表台查看是否安装成功,若成功进入仪表台标识服务端安装成功
    在这里插入图片描述
    在这里插入图片描述

安装客户端frpc

这里我将以linux系统做举例,我使用的是CentOS 7

  1. 将下载好的压缩包拷贝到内网服务器的目录下,可根据自己的喜好去放置(我放置在/usr/local目录下)。
    在这里插入图片描述
  2. 在放置目录下解压压缩包。
    在这里插入图片描述
  3. 进入解压后的目录下
    在这里插入图片描述
  4. 编辑frpc.toml文件
    将下面代码复制到文件中,根据自己需求修改相关参数
# 设置公网服务器的地址
serverAddr = "39.104.204.123"
# 配置服务端frps配置的连接端口
serverPort = 7000
# 配置服务端frps配置的身份标识token
auth.token = "123456"

# 配置TCP端口代理
# TCP端口代理无需在服务端frps的配置中做相关配置
# 只需要在客户端frpc上配置即可
[[proxies]]
# 代理名称,必须唯一
name = "ssh30"
# 代理类型为tcp
type = "tcp"
# 代理的本地端口
localPort = 22
# 代理的本地IP,通常使用回环地址表示代理本机
localIP = "127.0.0.1"
# 服务端的代理端口,代理后可通过公网服务器的IP加这个端口访问被代理的内网端口
remotePort = 2230


# 配置HTTP端口代理
# HTTP端口代理需要在服务端frps的配置文件中配置vhostHTTPPort
# 穿透后需要访问公网服务器IP加vhostHTTPPort端口访问代理的内网http服务
[[proxies]]
# 配置代理名称,不能重复
name = "dootask"
# 配置代理类型为http
type = "http"	
# 配置本地IP,通常使用回环地址表示本机
localIP = "127.0.0.1"
# 配置代理的本地端口
localPort = 3000	
# 配置公网服务器IP,会由该IP来代理
customDomains = ["39.104.204.123"]

# 注意,一个frpc的配置中,只能配置一个http代理
# 同时可以配置多个TCP代理,配置多个TCP代理时name不能重复
[[proxies]]
name = "kinit-mysql-30"
type = "tcp"
localIP = "127.0.0.1"
localPort = 23306
remotePort = 33062

  1. 对frpc文件赋予可执行权限
chmod +x frpc
  1. 创建新的系统服务
vim /etc/systemd/system/frpc.service

将下面的配置粘贴到该服务文件中

[Service]
Type=simple
# 这里配置你的frp的安装目录
ExecStart=/usr/local/frp_0.59.0_linux_amd64/frpc -c /usr/local/frp_0.59.0_linux_amd64/frpc.toml
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true
StandardOutput=syslog
StandardError=inherit

[Install]
WantedBy=multi-user.target
  1. 启动服务
systemctl start frpc.service
  1. 查看服务启动状态
systemctl status frpc.service

出现success的字样则表示启动成功
在这里插入图片描述

  1. 将该服务设置为开机自启动
systemctl enable frpc.service
  1. 开放端口
    前往你的云服务器的控制台或者公网服务器的命令终端,在防火请中将刚才代理的远程端口打开,通过telnet命令来测试是否代理成功
telnet [你的公网服务器IP] [代理的端口]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值