我运行 OPNsense 作为家庭路由器系统,同时运行我外出时经常访问的 VPN。
最近,在我外出期间,系统在某个时候变得无法从外部访问。当我回到家时,我没有注意到任何过去断电的迹象(这可能导致非正常关机并损坏数据)。我注意到,虽然它仍然响应来自内部的 ping 请求,但串行控制台不再响应,Web GUI 从内部和外部都无法访问,并且没有互联网连接。
我重启了设备,一切恢复正常。由于系统启动前的日志丢失,我没有发现任何明显的迹象表明崩溃的原因——可能是故障或 DOS 攻击。
我最近才从 pfSense 切换过来,遇到了一些这种情况(尽管有些情况可能归因于硬件故障)。
现在我想知道:有没有办法配置 OPNsense 来检测这种状态并触发系统重启?如果没有内置功能,我正在考虑一个脚本,它可以执行一些基本的健康检查,并在识别系统故障后触发重启。该脚本可以作为 cron 作业以每小时间隔运行(或您可接受的最大停机时间)。健康检查可能包括正在运行的进程、某些网络服务的响应能力、可能的外部网络连接(在排除 ISP 端故障后)。
显然,如果出现硬件故障或任何可能导致 cronjobs(或任何检查机制)无法运行的故障,这种方法将无济于事。此外,首先研究如何防止 DOS 攻击(包括及时安装安全更新)可能也是一个好主意,尽管不能 100% 保证。
有没有什么方法可以实现我想要的效果,即在设备本身上进行定期健康检查并在失败时重新启动?