通过云服务器对内网穿透实现外网访问群晖NAS

一、准备工作:

1、一台云服务器,这里我用的是腾讯云

2、一个可用的域名

3、一台内网群晖NAS

二、安装frp服务端

1、在https://github.com/fatedier/frp/releases上下载最新的frp服务端,上传到云服务器/usr/local目录

2、解压 tar -xvf frp_0.44.0_linux_amd64.tar.gz

3、重命名文件夹 mv frp_0.44.0_linux_amd64 frp

4、进入frp文件夹,修改配置文件frps.ini

[common] bind_port = 10001 vhost_http_port = #http端口,一般配置为5000,和群晖保持一致 vhost_https_port = #https端口,配置为5001,和群晖保持一致 token = #你的token # 以下是控制面板的配置 dashboard_port = 10000 dashboard_user = #用户名 dashboard_pwd = #密码 log_file = ./frps.log log_level = info log_max_days = 3 [ssh] listen_port = 6000 auth_token = #sshtoken subdomain_host = #你的域名,例如csdn.com

5、创建service文件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

移动文件frp.service到/usr/lib/systemd/system目录下

重新加载服务的配置文件
systemctl daemon-reload

启动服务

systemctl start frp
systemctl enable frp

三、开放防火墙端口

添加开放端口(将上面用到的所有端口都开放)

firewall-cmd –zone=public –add-port=10001/tcp –permanent (permanent永久生效,没有此参数重启后失效)

更新防火墙规则

firewall-cmd --reload 

查看端口是否开放

firewall-cmd --zone=public --query-port=10001/tcp

四、云服务器入站规则打开

如果云上配置了入站规则这里需要对应放开,否则忽略这一步

五、添加域名解析

通过云服务器对内网穿透实现外网访问群晖NAS插图

至此,frp服务端已经配置完成,可以打开dashboard验证下

http://域名:10000/static/#/proxies/http

六、在NAS上安装frp客户端

搜索docker镜像,frpc,下载第一个

通过云服务器对内网穿透实现外网访问群晖NAS插图1

在nas上找个地方新建文件,frpc.ini

[common] server_addr = 你的服务器ip server_port = 10001 token = 你的token [ssh] type = tcp local_ip = nas本地ip local_port = 22 remote_port = 6000 [nas] type = http local_port = 你的nas端口,一般是50 custom_domains = 子域名,例如,nas.csdn.com [web] type = http local_port = 80 custom_domains = 子域名,例如,web.csdn.com [jellfin] type = http local_port = 你的jellfin端口 custom_domains = 子域名,例如,jellfin.csdn.com [emby] type = http local_port = 你的emby端口 custom_domains = 子域名,例如,jellfin.csdn.com [range:ftp] type = tcp local_ip = nas本地ip local_port = 21,50000-50002 remote_port = 2121,50000-50002 

创建docker容器,引用我们刚才创建的文件

通过云服务器对内网穿透实现外网访问群晖NAS插图2

通过云服务器对内网穿透实现外网访问群晖NAS插图3

网络里【使用与 Docker Host 相同的网络】打勾

启动容器。

查看容器日志,若打印如下,说明容器启动成功

通过云服务器对内网穿透实现外网访问群晖NAS插图4

这时候,我们就可以在外网访问我们的nas了。

上一篇
下一篇