入坑IMTNAS星际魔盒2 - MCS7配置免费内网穿透frp-移动大内网...
本帖最后由 sillydanny 于 2020-10-29 14:22 编辑~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 前言:
在IPV4地址短缺的情况之下,不是每个家庭都分配到公网的IPV4地址。如要访问家中的设备就变得不方便,坊间有五花八门方法可以实现访问家中设备,如TeamViewer、 Zero-Tier、 花生壳 等等, 但因为每地区的网络环境不同,体验也不一样。 这里我推荐frp实现家中设备在内网穿透到网外。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 为什么是frp:
frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 配置前准备:
域名1个, 无论是付费还是免费的.
(如果没有, 可以购买一个也很便宜)
DNSPod 域名
华为云 域名
-------------
以CloudFlare设定为例:
我的域名是: **kingsir.ga**
想新增一个别名称为**imtnas**给魔盒做访问
选取DNS记录类型为CNAME, 名称: imtnas 目标: free.frp.ioiox.com
目标: free.frp.ioiox.com 是免费的frp服务器
稍等片刻,PING一下,两个地址是否一样.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 安装frpc(即frpc客户端):
首先SSH登陆星际魔盒及获得root权限
用户名: **admin**
密码: **admin**
sudo -i
~~~
下载及安装frp客户端(ARMV7):
FRP_VERSION="0.34.1" && wget https://github.com/fatedier/frp/releases/download/v${FRP_VERSION}/frp_${FRP_VERSION}_linux_arm.tar.gz && tar -zxvf frp_${FRP_VERSION}_linux_arm.tar.gz && mv frp_${FRP_VERSION}_linux_arm/frpc /usr/local/bin && rm frp_${FRP_VERSION}_linux_arm.tar.gz && rm -rf frp_${FRP_VERSION}_linux_arm
建立一个空白的资料夹 (存放frpc 配置文件):
mkdir -p /etc/frp
~~~
创建frpc 配置文件:
(在ssh内贴上, enter)
cat >> /etc/frp/frpc.ini << EOF
server_addr = free.frp.ioiox.com
server_port = 7007
token = www.ioiox.com
admin_addr = 10.10.1.51
admin_port = 7400
admin_user = admin
admin_pwd = admin
type = http
local_ip = 10.10.1.51
local_port = 8060
custom_domains = imtnas.kingsir.ga
EOF
~~~
配置文件说明:
admin_addr = 10.10.1.51 # 坊问Dashboard的地址 (即魔盒IP)
admin_port = 7400 # Dashboard端口
admin_user = admin # Dashboard用户名
admin_pwd = admin # Dashboard密码
# 服务名称(多个服务不能重名)
type = http # http协议
local_ip = 10.10.1.51 # 需穿透的设备内网IP(我的魔盒是10.10.1.51)
local_port = 8060 # 8060是导航页面的端口
custom_domains = imtnas.kingsir.ga# 填写你登记的域名
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 增设frpc为系统服务:
系统服务可以做到 启动/停止/重新启动/查看状态 的功能.
创建frpc的系统服务文件 (在ssh内贴上, enter)
~~~
cat >> /etc/init.d/frpc << EOF
#!/bin/sh
### BEGIN INIT INFO
# Provides: frpc
# Required-Start: $local_fs $network
# Required-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: frpc service deamon
# Description: frpc service daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/frpc
DAEMON_OPTS=-c\ /etc/frp/frpc.ini
NAME=frpc
USER=root
set -e
. /lib/lsb/init-functions
start() {
echo -n "Starting $NAME: "
start-stop-daemon --start \
--user $USER \
-m --pidfile /var/run/$NAME.pid \
-b --exec $DAEMON -- $DAEMON_OPTS || true
echo "$NAME."
}
stop() {
echo -n "Stopping $NAME: "
start-stop-daemon --stop \
--pidfile /var/run/$NAME.pid || true
echo "$NAME."
}
status() {
status_of_proc -p /var/run/$NAME.pid "$DAEMON" $NAME && exit 0 || exit $?
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
stop
sleep 2
start
;;
*)
echo "Usage: $NAME {start|stop|restart|status}"
exit 1
;;
esac
exit 0
EOF
增加可执行权限:
chmod +x /etc/init.d/frpc
启动frpc
/etc/init.d/frpc start
重新启动frpc
/etc/init.d/frpc restart
状态观察:
/etc/init.d/frpc status
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 現在可以透過域名地址瀏覽导航页面
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 添加开机启动frpc进程:
sed -i '$d /etc/rc.local
sed -i -e '$a/etc/init.d/frpc start' /etc/rc.local
sed -i -e '$aexit 0' /etc/rc.local
在MCS7使用"update-rc.d frpc defaults"这命令
不能新增开机启动,如有解决方法请告知. 谢谢!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### frp Dashboard
通过浏览器查看 frp 的状态以及编辑 frpc.ini 中内容
如新增穿透设备, 更新域名等
打开浏览器通过 `http://魔盒IP:7400` 访问 dashboard 界面。
举个例子:
我想新增FileBrowser服务到网外访问
以CloudFlare设定为例:
我的域名是: **kingsir.ga**
想新增一个名称为files的别名 访问FileBrowser服务
选取DNS记录类型为CNAME, 名称: files 目标: free.frp.ioiox.com
目标: free.frp.ioiox.com 是免费的frp服务器
打开浏览器通过 `http://魔盒IP:7400` 访问 dashboard 界面。
應用IP地址端口子目錄
Frp魔盒IP7400
加入这段内容:
type = http
local_ip = 10.10.1.51
local_port = 8080
custom_domains = files.kingsir.ga
通过浏览器 http://files.kingsir.ga 访问 FileBrowser服务
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 结语:
本人使用frp已经2年,十分稳定,可以在复杂的网路环境中做穿透(如移动大内网), 而且功能非常丰富。 虽然设定上有少许烦琐,但是配置成功,就能*一劳永逸*。
frp客户端的连线速度更多时候取决与frp伺服务器的带宽,如果长期有大文件操作还是建议自行架设frp伺服务器使用。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### 参考资料:
frp原作者 : fatedier
https://github.com/fatedier/frp
开机启动和后台运行
https://github.com/fatedier/frp/issues/176
免费提供frp服务器(IOIOX):
https://www.ioiox.com/frp.html
另一免费内网穿透服务Sakura Frp
https://www.natfrp.com/
本帖最后由 sillydanny 于 2020-10-29 13:27 编辑
### 更新导航页面的超连结(Link):
做了内网穿透后, 也可以经FileBrowser一并更新导航页面的超连结(Link)
如下图示:
高产的大佬帮顶 帮顶 adiao 发表于 2020-10-29 13:38
高产的大佬帮顶 帮顶
你最好, 謝謝支持. 大佬牛逼,点赞 大佬厉害
这个msc7可以部署homeassistant吗?https://cdn.jsdelivr.net/gh/hishis/forum-master/public/images/patch.gif 感谢大佬分享。。 期待大佬更多教程! 帮顶 帮顶
页:
[1]
2