首先说一下
这个方法无视内网,无视是否有公网IP
这个教程很简单,有经验的大神可以路过了
先说几个方案吧
1.如果一分钱不想花,可以找个免费frp服务器,百度一下很多人提供
现在就开始免费frp教程
这里我提供一个 Frp V0.21.0版本的免费服务器
项目地址:https://github.com/fatedier/frp
版本下载地址:https://github.com/fatedier/frp/releases
下载对应版本的群晖版本
我的黑群晖是intel芯片,下载386版本 https://github.com/fatedier/frp/ ... .0_linux_386.tar.gz
解压缩到桌面保留以下三个文件(frpc就是客户端用的,frps是服务器端用的!)
将以上3个文件上传到群晖,我传到了docker下面
直接用群晖文本编辑器打开 frpc.ini 文件进行配置客户端
内容如下
以上编辑好后保存
ssh登录到群晖 cd到你刚才拷贝的文件目录下 比如我的是
那么ssh输入
回车
之后输入临时启动命令
回车之后会出现服务器运行状态等等
没有意外的话,你现在就可以使用 http://oldiyblog.frp1.chuantou.org 或者你自己的顶级域名访问了
如果确认没有问题,可以按ctrl+c停止
之后设置开机启动
PC桌面建立文本文档,使用Notepad++编辑内容为
- #/bin/bash
- cd /volume1/docker/frp
- nohup ./frpc -c ./frpc.ini &
复制代码
保存为frp.sh 文件 格式为UTF-8 Unix(LF)
然后将文件上传到群晖frp 文件夹
进入群晖-控制面板-任务计划-新建触发的任务,设置开机运行
任务设置里,用户自定义脚本 输入 /volume1/docker/frp/frp.sh
保存
勾选刚才的任务 保存
全部完成!
如果想要穿透其他服务,可以继续编辑frpc.ini即可,在下载的文档里有frpc-all.ini 这里有全部配置用法! 或者访问中文文档 https://github.com/fatedier/frp/blob/master/README_zh.md
以下一些例子可以参考
- [common]
- server_addr = xxx.com
- #frps服务端地址
- server_port = 7000
- #frps服务端通讯端口,客户端连接到服务端内网穿透传输数据的端口
- privilege_token = 12345
- #特权模式密钥,客户端连接到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服务器地址+远程端口】
复制代码
|