Raspi|uhubctl && Siri && frp 外网控制(低配智能家居)

Posted by Elli0t on 2020-05-30

uhubctl 控制

树莓派3B +

  • 主集线器1-1,所有4个 USB 组合在一起,均由端口控制2(也关闭辅助集线器端口)。端口1连接1-1.1下面的集线器,端口在外部2并3已布线,端口4未布线。

uhubctl -l 1-1 -p 2 -a on

  • 次要集线器1-1.1(以菊花链方式连接到主集线器):3个端口,该端口1用于以太网+ WiFi,端口2与3外部电缆连接。

    frp

    要是端口出现占用冲突,用:
    lsof -i:xxx # 查看端口对应程序
    kill -9 PID # 关闭进程

服务端

修改frps.ini文件,此处使用了最简化的配置,设置了frp服务器端接收客户端流量的端口:

1
2
3
# frps.ini 
[common]
bind_port = 7000

启动frps:
./frp -c ./frps.ini

客户端

修改frpc.ini文件,假设frps所在服务器的公网IP为xxxx:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
[web]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 6001

注意,local_port(客户端侦听)和remote_port(服务器端暴露)是用于出入frp系统的分割,server_port则是服务器用来与客户端通讯的。

启动frpc:
./frpc -c ./frpc.ini

通过ssh访问内网机器

Siri

在快捷指令中设置

参考链接

uhubctl 逻辑
uhubctl-USB集线器每端口电源控制:https://github.com/mvp/uhubctl
http://www.byfarthersteps.com/tag/raspberry-pi/
如何切断Pi的USB端口的电源?:https://raspberrypi.stackexchange.com/questions/5407/how-can-i-cut-power-coming-out-of-the-pis-usb-ports


frp 端口转发
(转载)利用frp实现内网穿透(内网端口转发):https://cikeblog.com/frp.html
https://github.com/fatedier/frp/blob/master/README_zh.md#%E9%80%9A%E8%BF%87-ssh-%E8%AE%BF%E9%97%AE%E5%85%AC%E5%8F%B8%E5%86%85%E7%BD%91%E6%9C%BA%E5%99%A8