一、环境
- 云服务器CentOS 8(轻量应用服务器)
- 黑群晖DSM 6.2-23739
- frp版本0.38.0
二、云服务器frps配置
- 云服务器用的是腾讯云的,直接用wget去GitHub下载比较慢,最后还卡住了。可以先下载下来拷到服务器上。
wget https://github.com/fatedier/frp/releases
下载下来的文件解压,直接传到/usr/local
里。
当然命令行解压也可以,解压到指定目录,解压后记得重命名文件夹名称,可以重命名为frp,和下面的ExecStart里的地址要对的上。
tar -xvf frp_0.38.0_linux_amd64.tar.gz -C /usr/local
- 配置服务文件frp.service,可以设置开机启动
[Unit] Description=The nginx HTTP and reverse proxy server After=network.target remote-fs.target nss-lookup.target [Service] Type=simple ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini KillSignal=SIGQUIT TimeoutStopSec=5 KillMode=process PrivateTmp=true StandardOutput=syslog StandardError=inherit [Install] WantedBy=multi-user.target
其中ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini改成对应的文件地址。
-
把文件frp.service放到指定位置
/usr/lib/systemd/system/frp.service
-
重新加载服务的配置文件
systemctl daemon-reload
-
启动/停止/重启,查看状态,设置开机自启/关闭开机自启
systemctl start frp systemctl stop frp systemctl restart frp systemctl status frp systemctl enable frp systemctl disable frp
- 服务端 frps.ini配置
[common] bind_port = 10001 # 监听端口,客户端配置对应端口 vhost_http_port = 8080 # 当客户端配置type为http时使用这个端口访问 vhost_https_port = 8080 # 当客户端配置type为https时使用这个端口访问 token = csdn # 认证token,客户端配置对应token dashboard_port = 10000 # frp控制台,看起来更直观,建议开起来 dashboard_user = csdn dashboard_pwd = csdn # dashboard的用户名、密码 log_file = ./frps.log # 日志文件记录位置 log_level = info # 日志级别 log_max_days = 3 # 记录日志天数
三、群晖docker配置frpc
- docker【注册表】搜frp,之前的教程基本用的是oldiy那个,已经很久没更新了,这个是最新0.38.0版本的。如果遇到搜不到的问题,可以试试在【注册表】中【设置】里【新增】,新增随便一个源,再【使用】,再切回【使用】原来的源,再回去搜索就能搜到最新的了。
- 配置frpc.ini,这里放的路径是我自己新建的文件夹
docker/frp
。
[common] server_addr = 124.1.1.1 #腾讯云服务器的外网 server_port = 10001 #服务器配置的监听端口 token = csdn [nas] type = http #http方式,下面会介绍一种tcp方式 local_ip = 192.168.199.199 #群晖在内网使用的ip local_port = 5000 #本地端口 custom_domains = 124.1.1.1 #域名,无域名配置服务器ip # 此种配置方式与frps.ini中配置的vhost_http_port相关联,访问时使用124.1.1.1:8080访问
- 为了更好理解配置两个ini文件,下面示例另一种WEB访问方式,使用tcp
[common] server_addr = 124.1.1.1 #腾讯云服务器的外网 server_port = 10001 #服务器配置的监听端口 token = csdn [nas] type = tcp #tcp方式 local_ip = 192.168.199.199 #群晖在内网使用的ip local_port = 5000 #本地端口 remote_port = 9991 #远程端口,也是是外网访问端口 custom_domains = 124.1.1.1 #域名,无域名配置服务器ip # 此种配置方式与frps.ini中配置的vhost_http_port无关,访问时使用124.1.1.1:9991访问
- 去【映像】里启动,勾上【使用高权限执行容器】,进入【高级设置】。
- 【存储空间】里【添加文件】,选中刚配置好的frpc.ini,装载路径按图中配置
/etc/frp/frpc.ini
。
- 【网络】里【使用与 Docker Host 相同的网络】打勾
- 启动容器,便可以在刚才配置的控制台dashboard里按刚配置HTTP或者TCP选项里看到此客户端,至此利用frp实现内网穿透。
参考
https://gofrp.org/
https://zhuanlan.zhihu.com/p/129076009
https://post.smzdm.com/p/aoowo2kn/
原文链接:https://blog.csdn.net/iduzy/article/details/122632819
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END