网络存储(nas)如果外网不能访问的话,实用性就会大打折扣。威联通有自带的myQNAPcloud服务进行内网穿透,网页端可以直接访问操作nas,可以上传及下载文件,实测速度也还可以,基本上能跑满上传带宽。但是有一个问题是,目前手机app无法通过这个QNAP ID进行登录,只能局域网登录,手机上也只能通过浏览器操作nas。今天介绍如何通过frp来进行内网穿透,多一种外网访问方式,手机app也可以直接登录备份文件。
先决条件:一个有固定IP的外网服务器
带宽越宽越好,至少要大于宽带的上传带宽。国内的带宽普遍较贵,可以考虑其它地方的。
当然也可以在网上搜一下,也会这种免费服务提供的,因为我自己有服务器,这个没有试过,其实自己购买一个服务器还好一点,还可以搭一些其它服务。
一:服务端搭建
开源地址:https://github.com/fatedier/frp
最新版本:v0.49.0
(1)查看服务器架构
命令:arch
arch
(2)通过命令下载文件,解压并改名为frp
wget https://github.com/fatedier/frp/releases/download/v0.49.0/frp_0.49.0_linux_amd64.tar.gz tar -zxvf frp_0.49.0_linux_amd64.tar.gz cp -r frp_0.49.0_linux_amd64 frp
后续如果有新版本只需要将0.49.0改成最新的版本号即可。
查看里面的文件:
cd frp ls
frps
frps.ini
frpc
frpc.ini
frpc与frpc.ini为客户端文件,可以不用,删掉也行。
我们要做的是修改frps.ini文件,也就是服务端程序。
打开frps.ini,如果有安装宝塔面板的话,在对应用户名下打开文件,操作也较直观。
修改为:
[common] bind_port = 7000 dashboard_port = 7500 token = 111111 dashboard_user = admin dashboard_pwd = admin123 vhost_http_port = 10080 vhost_https_port = 10443
7000为服务器端口,7500为web界面端口,通过IP:7500可以访问,admin与admin123为登录用户名与密码,可自行设置。
token自行设置,后面客户端也需要用到,尽量设置复杂一点,推荐旭仔工具箱 里的随机密码生成工具。
vhost_http_port与vhost_https_port可不设置或者照搬。
这样设置号之后,运行服务端。
./frps -c frps.ini
出现下面的提示表示运行成功。
关闭命令提示符会将服务关闭,通过下面的命令让服务在后台运行:
nohup ./frps -c frps.ini &
如果不能通过ip:7500来访问的话,需要放行端口。
放行后即可访问。
二:客户端搭建
通过威联通的Container Station(docker)搭建客户端,在nas与服务器之间建立连接。
(1)准备好配置文件
准备好frpc.ini文件,可以直接用记事本编辑,然后将记事本后缀txt直接改成ini。
配置文件格式:
[common] server_addr = 1.1.1.1 server_port = 7000 token = 111111 [nas] type = tcp local_ip = 192.168.1.168 local_port = 5000 remote_port = 666666
server_addr写服务器的ip地址
server_port服务器监听端口,与服务器保持一致。
token同样与服务器保持一致
type注意是tcp如果是http是访问不了的,除非你是http服务
local_ip填写nas的局域网ip地址
local_port为nas的端口号,一般默认是5000,如果改过端口号,这里要保持一致。
remote_port是服务器用于访问nas需要加的端口号,可以通过IP:remote_port来访问,同样的,如果访问不了,需要放行端口。
直接将文件放入nas中,比如路径为/nas/frpc/frpc.ini。
(2)部署容器
打开Container Station,直接搜索“stilleshan/frpc”
点击“部署”
但是我发现一个问题,我这个没法选版本
不用急,我们选择“映像”里面的“提取”。
“映像”里直接填“stilleshan/frpc”,这样下载的映像是最新的版本。
下载好之后就会出现在我们的“映像”列表里面。
点击“操作”里面的按钮新建容器。
直接“下一步”
我们需要改两个地方,一个是“网络”,选“自定义”选择“host”,意思是与主机网络一致。
第二个是“存储”,点击“新加卷”旁边的箭头,选择“绑定装载主机路径”
“主机”直接选择frpc.ini文件,容器直接输入“/frp/frpc.ini”,之后点击“应用”完成新建容器。
这样就可以通过“IP:端口号”,来连接威联通nas了。手机里面登录要选择“高级设置”进行登录。