本来是一个美好的大周末,突然却被一个突如其来的电话把我从美梦中惊醒,然而一切还不止这么简单......
  本来刚开始了解到信息是客户的一台RouteOS设备挂了,听到这个消息时觉得自己应该可以很快解决,毕竟就是重启一下的事情,然而真正登录到后台才发现一切都没这么简单......

后台查看操作系统状态

唉,别提有多难过,后台竟然发现系统刚刚启动就立马重启了,而且反复如此,陷入了死循环,因此第一时间判断为此台RouteOS被黑了(事实证明是我多虑了),看样子是没有办法短时间恢复了,让客户切换业务吧,客户涉及此台设备的业务路由进行切换。

初步分析

判断为系统被黑后,开始查看这台设备的监控信息。

客户提供的zabbix监控数据。

查看我方后台监控,发现CPU和内存使用率确实有异常,从客户监控获取不到数据的时间点开始,我方监控可以准确的显示到改设备的CPU使用率开始异常,与正常业务模型相比,变化明显,内存使用率也开始从正常的百分之十以下的使用率突增到百分之七十以上,此刻心中更加确信此台设备是被黑了。
  咋整,此时内心无比尴尬,因为这个客户以前就已经被黑过一次了(RouteOS版本低,存在漏洞最终被攻击),并且已经升级到了最新版本还购买了KEY,没办法硬着头皮和客户说吧。因为自己不太了解RouteOS系统,所以将故障升级,且料二线工程师告诉我没办法修复了,唉,忍着被挨骂的风险告诉客户吧。

进一步获取信息

告诉了客户系统可能被黑了以后,客户说被黑的可能性不大,原因如下:

  • 已经将操作系统升级至最新版本,且使用的不是破解版,还购买了key。
  • 已经将所有登录方式关闭,只留下了web界面这种登录方式,可以登录的地址只开放给了客户公司的公网地址,同时修改了默认端口。
  • 密码复杂度极高:20位以上随机生成密码。

目前从监控中看到的信息,CPU和内存有异常,客户表示它们的zabbix没有监控到内存有变化,和客户解释因为客户zabbix监控是使用snmp协议对此台设备进行监控的获取不到数据是因为网络不通了导致,而我方监控是直接从宿主机获取的日志,所以可以监控到后续的信息,但是根据客户提供的信息,被攻击的风险确实不大,只能硬着头皮搞了,尝试下能不能修复系统。

修复系统

当前第一要务是先把操作系统启动,确保可以稳定运行不会再一次重启,后台挂载修复镜像后,进入修复模式,对这个系统也不了解,只能一步一步琢磨加上网上搜索资料,看到有文章也遇到过类似的问题,RouteOS重启的问题,可能和watchdog有关。

进入修复模式,将watchdog配置文件进行备份,重启发现系统正常了,确认了操作系统反复重启应该是watchdog配置导致,向客户询问有关watchdog的配置信息。
  后续经过确认客户配置如下:

Watch Address: 公网网关地址
Ping Start After Boot: 00:01:00
Ping Timeout: 10s

怀疑是客户配置导致,新开了一台RouteOS进行测试,将测试机的Watchdog配置和客户相同后重启,发现操作系统确实会一直重启,确认了是因为配置导致操作系统不断重启,后续后台重启测试机的同时开始ping测试机的公网地址,到可以ping通时用时大约100s,怀疑是客户操作系统不断重启的原因是因为系统启动网卡还未完全就绪,RouteOS watchdog就已经开始执行ping测试,测试10s发现与监控地址不通,直接重启,如此反复陷入死循环。

推翻最初分析

这样就可以推翻最初被黑的分析了,至于监控到CPU和内存突增,就是操作系统反复重启导致的了,唉,通过一个一个目录找文件,到最终能把系统修复,不容易啊。

确认系统关机原因

系统反复重启的原因已经确认了,但是又是什么原因导致最初系统会关机呢,这个同样需要确认下,所以和客户要了重启时间段的日志,获取到有效信息如下:

从日志字面意思理解是watchdog程序出现了严重错误,导致watchdog不能ping设置的网关地址,最终重启RouteOS。

为了确认下不是网络原因导致的,我在测试机上同样配置了相关操作,watchdog检测一个服务器的地址,后续在服务器上打开防火墙禁止ICMP协议,RouteOS开始重启,重启后获取日志信息如下:

好了,确认了如果是网络问题,会报timeout错误,至此修复了客户的操作系统,并确认了操作系统最初重启的原因,心累,不过是一次很好的学习体验。

转载于:https://www.cnblogs.com/Cherry-Linux/p/10097270.html

RouteOS 频繁自启相关推荐

  1. phpstudy一直自动停止启动_发动机自动启停,到底是省油还是毁车?

    发动机自动启停技术其实早在20世纪30年代就出现了,不过一直到80年代中期才开始广泛地应用在传统车上.1984年自动启停技术首次应用于大众高尔夫柴油发动机上.随后,很多汽车品牌都对该技术产生了浓厚的兴 ...

  2. windows进程管理器_软件进程自动重启一遍又一遍……你需要这款自动杀进程的小公举ProcessKO...

    [PConline 应用]用Windows系统最烦的一件事,就是各种乱七八糟的进程.我们知道软件要运行,就会在后台唤起进程,但这些进程有时候并不那么听话,某些软件会不断唤起进程,对此Windows自带 ...

  3. 划重点|iOS15正式发布, 全新的通知推送系统,你必须要知道

    简介: 今年友盟+联合达摩院决策智能实验室讲算法技术,推出国内首个智能推送功能,帮助产品运营人员实现一键式触达的精细化运营.通过精心打磨的在线学习与优化算法,对推送人群与推送文案进行精准匹配,最大化用 ...

  4. 英语版计算机教室规章制度,计算机教室规章制度

    计算机教室规章制度 一. 计算机教室安全规则(试行) 1. 严格遵守开机顺序,先打开显示器.打印机等外部设备,再打开主机电源:关机时顺序相反.网络系统还须做好上网.下网工作. 2. 计算机在使用过程中 ...

  5. 从“跳一跳”来看微信小程序的未来

    从"跳一跳"来看微信小程序的未来 相信大家这两天都被微信新推出的小程序跳一跳刷爆了朋友圈,为了方便用户在使用过程中切换小程序,微信在这次6.6.1版本中加入了下拉可快速切换小程序的 ...

  6. Uiautomator2 GitHub文档转载

    Requirements Android版本 4.4+ Python 3.6+ (社区反馈3.8.0不支持, 但是3.8.2支持) 如果用python2的pip安装,会安装本库的老版本0.2.3:如果 ...

  7. 推荐5款小众实用神器软件,功能强大,值得你去收藏

    最近收集了使用了一些比较实用的软件,今天分享给大家,功能强大,领域各不同,闲话不多说,往下看吧. 1.小黑屋 这个软件可以实现无root,冻结手机内频繁自启的软件,可以提高手机的运行的速度,以及节省手 ...

  8. 干货|一文搞定 uiautomator2 自动化测试工具使用

    一.背景简介 Google 官方提供了一个 Android 自动化测试工具(Java 库),基于 Accessibility 服务,功能很强,可以对第三方 App 进行测试,获取屏幕上任意一个 App ...

  9. 李彦宏发布小度在家“解锁”中国家庭市场,被称作AI性价比之王

    个人移动设备火了之后,差不多所有硬件相关行业都瞄准了下一个目标:家庭. 这一瞄,就是好多年过去了啊...... 无论是打着互联网旗号的各种大屏硬件,还是各种各样千奇百怪的"智能设备" ...

  10. | 一文 uiautomator2 自动化测试工具使用

    在上一篇文章中分享了 pytest 的基本用法,本文进一步介绍 pytest 的其他实用特性和进阶技巧. pytest fixtures pytest 中可以使用 @pytest.fixture 装饰 ...

最新文章

  1. 习题3-3 数数字(Digit Counting , ACM/ICPC Danang 2007, UVa1225)
  2. AI 世界的硬核之战,Tengine 凭什么成为最受开发者欢迎的主流框架?
  3. JavaScript强化教程——JavaScript Math(算数) 对象
  4. linux中oracle数据乱码,Linux系统Oracle数据库乱码问题的解决方法
  5. excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示
  6. 工业以太网交换机故障的排障步骤
  7. 如何删除C++容器中的值
  8. 婚庆管理软件系统应该具体什么样的核心功能?望大家提提建议.
  9. python绘制动态心电图_可穿戴设备中测心电图这样功能能达到医用标准吗?未来前景如何?在医用和便携之间是否还有市场?...
  10. linux下udp调试工具,linux tcp udp 调试工具
  11. 好物分享 Kvaser支持CANFD功能的CAN卡都有哪些?
  12. C语言输出大写金额,人民币大写输出(C语言)
  13. marked + mathjax 实现支持数学公式的 markdown 转 html
  14. 多功能Web文件管理器Filestash
  15. 【微服务】165:导入数据到索引库
  16. 【2022秋招】IC设计/FPGA开发秋招经历总结(2)——公司专题
  17. 分支定界算法在中学排课问题中的应用
  18. Any Takers For AIG's Asian Arm?
  19. 嵌入式单片机智能药盒设计(含代码)
  20. java编写打字游戏_程序设计:简单字母打字游戏(JAVA编写)

热门文章

  1. 相机模型与标定(一)--相机标定概述
  2. stm32单片机屏幕一直闪_STM32物联网实战项目 - 项目需求
  3. vue 父组件获取接口值传到子组件_vue 项目中 “父组件” 异步获取数据之后,传递给子组件不显示...
  4. 对勾函数_这16个Excel函数,帮你完成80%的数据统计工作
  5. 瑞友客户端无法建立跟远程计算机的连接,瑞友天翼终端错误信息的原因以及解决方法大全.doc...
  6. Spanner如何实现事务?
  7. MySQL 复制:最简单也最容易配置出错
  8. hdfs开机启动流程
  9. Windows核心编程_在Visual Studio窗口输出调试信息
  10. Windows核心编程_关闭Windows