frp内网穿透

文章
林里克斯

frp内网穿透,适用于能上外网,但是没有外网IP的场景。

实验平台:CentOS 7.4/Windows 10
frp版本:frp_0.13.0_linux_amd64.tar.gz (frpc 和 frps 版本要保持一致)
需要一台公网服务器,且你客户端机器需能链接外网


操作步骤:


一、下载frp


$ https://github.com/fatedier/frp/releases
或
$ wget https://github.com/fatedier/frp/releases/download/v0.13.0/frp_0.13.0_linux_amd64.tar.gz
#此处演示v0.13.0版本

二、安装 frp 配置服务端(在有公网服务器上配置)


1.将下载的包拷贝到/usr/local/

$ cd /usr/local/
$ tar -xf frp_0.13.0_linux_amd64.tar.gz
#解压后会得到6个文件
$ mv frp_0.13.0_linux_amd64.tar.gz frps
$ cd frps
$ rm -rf frpc*
#删除客户端包和配置文件

2.编辑配置文件frps.ini

$ vim /usr/local/frps/frps.ini

[common]                    #必须存在
bind_addr = *.*.*.*         #frps Server端IP
bind_port = 7000            #frps Server端端口;客户端需要填写IP和端口
vhost_http_port = 8080      #http监听端口
vhost_https_port = 8443     #https监听端口
dashboard_port = 6443       #仪表盘访问端口
dashboard_user = admin      #仪表盘访问账号
dashboard_pwd = misrobot    #仪表盘访问口令
log_file = ./logs/frps.log  #日志存放路径
log_level = info            #日志级别;可选:trace, debug, info, warn, error
log_max_days = 3            #最大保留几天日志
login_fail_exit = false     #设置为false,frpc连接frps失败后重连,默认为true不重连
privilege_token = Uambiguous    #客户端连接到FRP服务端的登录验证密钥
privilege_allow_ports = 1000-3000   #端口白名单,客户端设置的远程端口只能在这个范围内
max_pool_count = 5          #每个客户机最大连接池上限
authentication_timeout = 900    #客户端和服务端时间相差时间
tcp_mux = true                  #使用tcp流复用,默认为true

3.启动frps

$ cp -rp /usr/local/frps/frps /usr/local/bin    #可不操作直接跟绝对路径
$ nohuo ./usr/local/frps/frps -c /usr/local/frps/frps.ini &
#frps需要给执行权限

三、安装frp 配置客户端(在你需要映射的客户端上配置)


1.将下载的包拷贝到/usr/local/

$ cd /usr/local/
$ tar -xf frp_0.13.0_linux_amd64.tar.gz
#解压后会得到6个文件
$ mv frp_0.13.0_linux_amd64.tar.gz frps
$ cd frpc
$ rm -rf frps*
#删除服务端包和配置文件

2.编辑配置文件frpc.ini

$ vim /usr/local/frps/frpc.ini

[common]                        #必须存在
server_addr = *.*.*.*           #填写服务端填写的Server IP
server_port = 7000              #填写服务端填写的Server 端口
log_file = ./logs/frpc.log      #日志存放路径
log_level = info                #日志级别;可选:trace, debug, info, warn, error
log_max_days = 3                #最大保留几天日志
privilege_token = Uambiguous    #客户端连接到FRP服务端的登录验证密钥
pool_count = 5                  #内网穿透服务限制最大连接池上限
tcp_mux = true                  #使用tcp流复用,默认为true,必须和服务端一致
user = Jarbo                    #你的内网穿透名称,将显示为 {名称}.{对应服务名称}
login_fail_exit = false         #设置为false,frpc连接frps失败后重连,默认为true不重连
protocol = tcp                  #用于连接frps服务端的通讯协议;支持tcp和kcp,默认是tcp
#注意:kcp需要服务端配置参数已开启,才支持。
heartbeat_interval = 30
heartbeat_timeout = 90

[ssh]                       #穿透名称
type = tcp                  #使用协议
local_ip = 0.0.0.0          #本地IP
local_port = 22             #本地端口
use_encryption = false      #穿透通讯加密
use_compression = false     #穿透通讯压缩
remote_port = 1000          #远程端口,相当于把本地地址的22端口映射给外网地址的1000端口

[web]                       #穿透名称
type = tcp                  #使用协议
local_ip = 0.0.0.0          #本地IP
local_port = 80             #本地端口        
use_encryption = false      #穿透通讯加密
use_compression = false     #穿透通讯压缩
remote_port = 1001          #远程端口,相当于把本地地址的80端口映射给外网地址的1001端口

3.启动frpc

$ cp -rp /usr/local/frpc/frpc /usr/local/bin    #可不操作直接跟绝对路径
$ nohup ./usr/local/frpc/frpc -c /usr/local/frpc/frpc.ini &
#frps需要给执行权限

4.查看日志没有报错正常即可;


Over ~

版权协议须知!

本篇文章来源于 Uambiguous ,如本文章侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意

1433 0 2018-07-06


分享:
icon_mrgreen.gificon_neutral.gificon_twisted.gificon_arrow.gificon_eek.gificon_smile.gificon_confused.gificon_cool.gificon_evil.gificon_biggrin.gificon_idea.gificon_redface.gificon_razz.gificon_rolleyes.gificon_wink.gificon_cry.gificon_surprised.gificon_lol.gificon_mad.gificon_sad.gificon_exclaim.gificon_question.gif
博主卡片
林里克斯 博主大人
一个致力于Linux的运维平台
运维时间
搭建这个平台,只为分享及记载自己所遇之事和难题。

现在时间 2024-12-28

今日天气
站点统计
  • 文章总数:241篇
  • 分类总数:29个
  • 评论总数:12条
  • 本站总访问量 353125 次

@奥奥

@Wong arrhenius 牛比

@MakerFace 厉害了!