开博科技|手机开单|手机商店|送货单打印软件|销售管理系统|进销存|ERP供应链管理系统

标题: 内网穿透之frp [打印本页]

作者: dianlanren    时间: 2019-8-1 14:53
标题: 内网穿透之frp
来源:http://bbs.mydigit.cn/read.php?tid=2595331

上次讲的是Ngrok内网穿透,请看这个贴子http://bbs.mydigit.cn/read.php?tid=1817628
这次是frp内网穿透,也是免费的服务器,自己有服务器的可以自己架设。这次主要讲免费服务器客户端的设置。
以前的Ngrok免费服务器经常连接不上,速度还慢,所在网上找到了frp的内网穿透研究了下。
推荐两个免费的frp服务器,大家根据自己需要选择。
http://freenat.win/


https://www.chuantou.org/


客户端我用的是H大的Padavan路由器,其它openwrt的路由器、N1、群晖都可以类似实现



frp的版本一定要要服务器的一至,否则不能连接。重点是frp_script文件的配制,用第一个免费服务器用下面的配制自己选择需要的项就可以了,其它的服务器都类似。

1、frpc客户端
因为群晖需求端口比较多,这里以群晖穿透为例贴配置,其他同理。


[common]
server_addr = freenat.bid
#frps服务端地址
server_port = 7000
#frps服务端通讯端口,客户端连接到服务端内网穿透传输数据的端口
privilege_token = frp888
#特权模式密钥,客户端连接到FRPS服务端的验证密钥
log_file = frpc.log
#日志存放路径
log_level = info
#日志记录类别,可选:trace, debug, info, warn, error
log_max_days = 7
#日志保存天数
login_fail_exit = false
#设置为false,frpc连接frps失败后重连,默认为true不重连
protocol = kcp
#KCP协议在弱网环境下传输效率提升明显,但是对frps会有一些额外的流量消耗。服务端须先设置kcp_bind_port = 7000,freenat.bid服务端已设置支持

[http_dsm]
#穿透服务名称,不能和其他已建立的相同,使用公共服务器的建议修改成复杂一点的名称,避免与其他人冲突,很多路由器内置frpc的默认服务名称为[web],很容易很其他人冲突
type = http
#穿透协议类型,可选:tcp,udp,http,https,stcp,xtcp,这个设置之前必须自行搞清楚应该是什么
local_ip = 192.168.1.2
#本地监听IP,可以是本机IP,也可以是本地的局域网内某IP,例如你的局域网是互通的,你可以在路由器上安装frpc,然后local_ip填的群晖的ip,这样也可以把群晖穿透出去
local_port = 5000
#本地监听端口,通常有ssh端口22,远程桌面3389等等
use_compression = true
#对传输内容进行压缩,可以有效减小 frpc 与 frps 之间的网络流量,加快流量转发速度,但是会额外消耗一些 cpu 资源
use_encryption = true
#将 frpc 与 frps 之间的通信内容加密传输
custom_domains = dsm.freenat.bid
#自定义域名访问穿透服务,一般域名设置了二级域名泛解析以后,这里填*.freenat.bid即可,*自定义,如果不想用域名或者自行搭建frps没有域名,则穿透协议类型选择tcp,见以下tcp部分详解
#通过app访问群晖的注意,DS file,DS video,DS audio,DS finder里地址栏默认都是5000端口,穿透后地址栏须填写为【穿透域名:80】,DS photo由于本地local_port为80,穿透后也为80的话直接写域名地址即可

[https_dsm]
type = https
local_ip = 192.168.1.2
local_port = 5001
use_compression = true
use_encryption = true
custom_domains = dsm.freenat.bid
#以上https配置同http,群晖注意开启https(默认5001端口),证书在客户端即群晖端配置,无证书的注意浏览器访问时添加信任

[http_transmission]
type = http
local_ip = 192.168.1.2
local_port = 9091
use_compression = true
use_encryption = true
custom_domains = tr.freenat.bid
#transmission下载客户端

[http_rutorrent]
type = http
local_ip = 192.168.1.2
local_port = 80
use_compression = true
use_encryption = true
custom_domains = rt.freenat.bid
#rutorrent下载客户端,用Download Station的类似,注意端口


[http_blog]
type = http
local_ip = 192.168.1.2
local_port = 80
use_compression = true
use_encryption = true
custom_domains = blog.freenat.bid
#群晖里的web搭建的博客,怎么搭建百度去

[http_plex]
type = http
local_ip = 192.168.1.2
local_port = 32400
use_compression = true
use_encryption = true
custom_domains = plex.freenat.bid
#plex视频服务器,外面直接通过plex看群晖内视频

[https_feixun]
privilege_mode = true
type = http
local_ip = 192.168.1.1
#路由器ip
local_port = 80
use_compression = true
use_encryption = true
authentication_timeout = 0
custom_domains = feixun.freenat.bid
#穿透路由器


[tcp_ssh]
#群晖ssh连接
type = tcp
local_ip = 192.168.1.2
local_port = 22
use_compression = true
use_encryption = true
remote_port = 3463
#远程端口,一般tcp和udp需要设置,不需要设置custom_domain,访问时为【frps服务器地址+远程端口】,没有域名的用这种方式通过【frps服务器地址+远程端口】即可实现访问

[udp]
type = udp
local_ip = 192.168.1.2
local_port = 53
use_compression = true
use_encryption = true
remote_port = 3453
访问时为【frps服务器地址+远程端口】

2、frps服务端
自行搭建服务端配置参考(必须有公网ip)
[common]
bind_addr = 0.0.0.0
#服务器IP,0.0.0.0为服务器全局所有IP可用,假如你的服务器有多个IP则可以这样做,或者填写为指定其中的一个服务器IP,支持IPV6
bind_port = 7000
#通讯端口,用于和客户端内网穿透传输数据的端口,可自定义
bind_udp_port = 7001
#UDP通讯端口,用于点对点内网穿透
kcp_bind_port = 7000
#用于KCP协议UDP通讯端口,在弱网环境下传输效率提升明显,但是会有一些额外的流量消耗。设置后frpc客户端须设置protocol = kcp
vhost_http_port = 80
#http监听端口,注意可能和服务器上其他服务用的80冲突,比如centos有些默认有Apache,可自定义
vhost_https_port = 443
#https监听端口,可自定义
dashboard_port = 7500
#通过浏览器查看 frp 的状态以及代理统计信息展示端口,可自定义
dashboard_user = admin
#信息展示面板用户名
dashboard_pwd = admin
#信息展示面板密码
log_max_days = 7
#最多保存多少天日志
privilege_token = frp888
#特权模式认证密钥
privilege_allow_ports = 1-65535
#端口白名单,为了防止端口被滥用,可以手动指定允许哪些端口被使用
max_pool_count = 100
#每个内网穿透服务限制最大连接池上限,避免大量资源占用,可自定义
authentication_timeout = 0
#frpc 所在机器和 frps 所在机器的时间相差不能超过 15 分钟,因为时间戳会被用于加密验证中,防止报文被劫持后被其他人利用,单位为秒,默认值为 900,即 15 分钟。如果修改为 0,则 frps 将不对身份验证报文的时间戳进行超时校验。国外服务器由于时区的不同,时间会相差非常大,这里需要注意同步时间或者设置此值为0
log_file = frps.log
log_level = info


详细说明请看作者中文说明文档:https://github.com/fatedier/frp/blob/master/README_zh.md

XXXX.freenat.bid     XXX自己取,用这个连接就可以在任何有网的地方打开自己家里的路由器了,可实现远程管理,路由连接硬盘可以远程下载、远程看家里摄像头等等。多级路由都可以穿透不需要端口映射。






欢迎光临 开博科技|手机开单|手机商店|送货单打印软件|销售管理系统|进销存|ERP供应链管理系统 (http://kbhelp.757abc.com/) Powered by Discuz! X3.2