PVE + HomeAssistant + ESPHome

2022-09-24 作者:

Today let’s try out this ESP32-C3-12F dev board that costs only $5 (domestic shipping included) but has 3 power supply mode (AC 220V, DC 7~12V and microUSB, which is super convenient!) and a relay to turn my ordinary led light strip to be a remote controlled.

记得上次玩Arduino已经是2014年的事情了,那会儿用的还是ATMega系列的MCU,装专用IDE,写的C lang。

近10年后,感觉家用IoT玩的都是ESP和Pico了。至于开发语言,常青树C lang自然还有的,但大多视频教程则是外行更容易上手的Micro Python、Lua乃至只要配个yaml config的ESP Home —— 可见贵圈也很卷。

今天搞的是这块ESP32-C3-12F,带wifi、蓝牙BLE和一路继电器,以上都属于一般配置。比较巴适的是,这货带三模供电,AC 220V、DC 7~12V,以及MicroUSB,这就很方便了,省一个手机充电头。

废话少叙,先看实验结果吧。

服务器自然是Proxmox VE Home Server上的vm,数据内网本地化存储(2C 2G 32G即可),公网使用走ddns没毛病。

【注】HAOS(Home Assistant Operating System)的部署有N多选择。支持X86物理机、至少三种VM(kvm、vbox、vmware)、三种主流操作系统(Linux、Win、MacOS),两种容器(docker、lxc)、以及包括树莓派在内的至少三种SBC…… 这友好程度,你要说自己小白不会安装,都对不起开发者。只是这里要注意,选择安装方式一定要带上Supervisor,否则无法支持ESPHome扩展,详情参阅官网文档

HAOS装好后,打开web服务,安装ESPHome的插件,打开后就能开始设计ESP固件了。

完整阅读本篇»

nginx控制iptables芝麻开门

2022-02-10 作者:

During maintenance of a production server, we use to encounter a problem like this – an internet-access-blocked port, say 3306 (mysql), is about to be open for a little while due to debugging needs, which is not uncommon, right? So how to make this easily operated, mostly secure, and automatically disabled after working – I guess this’s gonna help somehow.

A Linux server with whatever the distribution including iptables (e.g. CentOS, Rocky for now as example), Nginx, fcgiwrap, a simple shell script and a commonly used web browser, let’s say chrome, will be major ingredients on the recipe.

常做运维,总会遇到某些线上服务器,为了便于调试,在符合安全要求的基础上,需要相对便利的对公网短时定向开放某些端口。

昨天想了一招,用nginx操作shell脚本,对特定公网IP开口子,叫一声“芝麻开门”,便捷又安全。举例端口3306(mysql),系统是Rocky Linux 8(原CentOS 8)。

Doors of Durin

Doors of Durin

先查一下现有的防火墙规则,需要的话可以保存一下。换句话说,搞芝麻开门之前,先确定门是隐藏的;也即已经有相应(且持久化)的iptables rule确保到被保护端口的连接是DROP/REJECT状态。

然后就是fcgiwrap的安装,此处就不写nginx安装过程了,默认安装即可。

安装后增加两个systemd服务文件,并测试fcgiwrap服务生效。

【注】那俩服务文件,在Redhat之外的发行版上,fcgiwrap安装包可能自带,请针对所用版本自行检查。

接下来为一个新的nginx server准备个根目录,存放网页和之后控制iptables的脚本。

完整阅读本篇»

树莓派监控SANTAK UPS

2022-01-07 作者:

硬件:SANTAK TG-BOX 600 + RPi 4B (2GB) + Huawei ME909s-821

监控服务:NUT(Network UPS Tools)参考文章挺多,就不详解了;Pi上连了4G模块主要是掉电时可能无法得到Wired Ethernet供应,就发个短信而已,不如直接走wwan靠谱省心。

目前用的是standalone模式,回头有空查下文档试试netserver模式,看config文件介绍,猜测是client可以通过server知道市电挂了,从而在server之前关机?

完整阅读本篇»

OpenWrt测试双WAN和双机高可用

2021-12-03 作者:

So here’s a quick example. OpenWrt shows capability to provide business-level internet access reliabilities – with not only load balancing/failover between 2 or more ISPs, but also VRRP based hardware (dual x86 vm in this experiment) level redundancy.

从以下的例子可以看出,OpenWrt基本满足了提供小型商业级Internet访问可靠性的初步要求。它不仅可以在多个ISP之间实现负载均衡以及故障切换,在此基础上同时提供基于VRRP的硬件冗余(本实验中为双x86虚拟机)。

 

先开仨虚拟机,前两台做OpenWrt,可以先做1台,复制1台。注意要安装mwan3和keepalived。

 

双WAN做好后,断开一路wan做测试。这里的wanb,用的是楼道里的不可靠wifi,通过Raspberry Pi向下路由一层转成有线网,能体现出不稳定的ISP接入状态。

本来是两路负载均衡的策略,wanb断开后,5s之内可以让所有对外请求都稳定落在wan上。

 

下一步,把MASTER的br-lan断开,模拟一个路由器硬件直接宕掉。

 

这个切换时间很短,还没反应过来,BACKUP就接管了VIP地址,对外请求几乎不受什么影响。

完整阅读本篇»

基于红米AC2100的集客AC/AP方案

2021-10-15 作者:

Free (but proprietary) AC/AP wifi solution by Wuhan GECOOS, is here tested on 2 units Redmi AC2100 and a Proxmox based x86_64 vm.

这篇不准备多写,简单谈一下感受。

硬件结构如下,

  • AP是两台Redmi AC2100,单价159(不是wifi6,消费主义远离我)。
  • AC是书房自建私有云上一台vm,无法单独计费,权当免费。

PROS:

  • 性价比突出。总价只有318,即使考虑到大房子需要3台AP,也只要500块不到而已,还不到一台中端wifi6路由器的钱。有人可能会说,别逗了,家用AP的信号,3台怎么够 —— 哥们,别那么肯定,你说的是面板AP,我这是普通家用路由器(外置天线)刷的AP,原本设计每个都是带全家的,要比信号强度也得比商业吸顶AP吧?
  • AC可以不要,AP支持胖AP模式。这点倒是跟其他家用AC/AP方案接近,并不特别。我猜胖AP漫游效果差点儿?因为我不缺私有云机器,没有做具体测试。
  • 蛮关键的一点,AC可以只做旁路。也就是说,主路由还是主路由,你不一定用这个集客AC做主路由(虽然它也具备路由能力),这一点非常关键。作为AC,管好你的AP,做好弱踢和切换就行了,路由我有更好的选择。
  • 覆盖和速度都能让人满意,mbp连上5G信号,NAS大文件传输不比千兆有线差很多。
  • 每个房间多了一个4口千兆交换机,还tm支持vlan,这个价钱做下来的方案有这么强的灵活性,你敢信?

CONS:

  • 漫游切换,在安卓手机上切换起来,还是没有单路由(不切换)那么流畅。当然,物理问题靠软件显然不能强求,毕竟在家里边角的wifi速度显著提高了;多年前的iPhone 6SP好像漫游效果不错的说;后悔没有拿Android和iPhone互相打个微信视频然后走动一下做个测试。
  • 【昧良心说】集客固件免费但不开源。至于开源与否我不关心,毕竟我刷个路由不是去商业化,我只关心有无黑产,这点主要看开发团队的人文品质吧。真要不放心,自己刷一套放个抓包环境测几个月就有数了;这问题倒不是针对集客,ikuai和梅林也是同一个路子,再说那些原厂(不免费)的路由器系统就能绝保没后门没黑产?

以下纯截图:

AC界面:wifi配置模板下发

完整阅读本篇»

轻巧赛手机的瘦客户端·初测

2021-09-03 作者:

This post talks about the preliminary test to the little weeny-weeny thin client, YF-V102. It works in super smaller factor than a cellphone (thicker though), and less weight too, but still has both wired and wireless connection to connect the vm or physical target through RDP/SPICE.

实话说,拿到整个快递包装,我先琢磨是不是收到个空盒。

不过玩虚拟化这么多年,毕竟主要搞服务端,所以试用瘦客户端,还是第一次,对以往的thin client尺寸及功能,并无经验之谈。

这个带了三个USB、两个3.5mm、一个USB-C供电口、一个标准HDMI、一个RJ45网线接口的盒子,居然不足100g,话说里边还有板子么?

完整阅读本篇»