V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zsen
V2EX  ›  分享创造

写了个文件及数据库监控工具,可以微信通知报警

  •  1
     
  •   zsen · 2017-07-09 14:52:12 +08:00 · 4590 次点击
    这是一个创建于 2729 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一个 Linux 下基于 bash 的文件和数据库监控及备份工具。

    写这个工具的原因,在于一个朋友的一个小电商网站,因为未明原因被黑了,总是会被增加超级管理员,并将收款账号改成别人的。于是有了写一个监控工具的想法。

    主要功能

    监控功能

    • 文件监控:主要监控网站文件,可以监控多个网站目录,也可以在配置中将 NginxPHPMySQL 等的配置文件也添加到监控中;
    • 数据库监控:可以监控指定数据库中的指定数据表;也可以对指定的表指定字段做监控;
    • 数据库备份:设定的数据库全量傻瓜式备份,无监控功能;

    报警功能

    • 微信报警:设置好相关的微信公众号参数后,监控到改变会发送微信模板通知;
    • 邮件通知:详细的改变内容会通过邮件发送;

    关于本工具的相关说明

    • 本工具可作为一些个人网站,或一些小微电商类型网站做入侵检测工具用,毕竟小微团队在系统运维及安全方面的投入几乎没有;
    • 对于具备资源的团队,还是需要从运维策略上来考虑安全风险防范的问题;

    Repo

    第 1 条附言  ·  2017-07-10 12:34:55 +08:00
    补充一下,有 V 友说从源头上解决被黑的问题,这个说法是正确的。但与本工具的作用并不矛盾。要从源头上修复,总要知道已经被黑了、发生了非法改动,然后再排查、修复嘛。

    这个工具的目的,不是说不做源头上的修复——这个肯定是、而且是必须是要的,这个工具的目的是说,可以帮你检测是否有非法的改动,如果有,可以大概知道是什么地方做了改动,同时结合查 log、Google 解决方案 → 修复。
    15 条回复    2017-07-13 10:31:32 +08:00
    Phant0m
        1
    Phant0m  
       2017-07-09 15:37:55 +08:00   ❤️ 1
    讲真,不如用 inofity 做,秒级
    ywgx
        2
    ywgx  
       2017-07-09 15:41:32 +08:00
    看起来不错,不过为什么不从源头考虑解决问题? 哪里的缺陷,导致主机被入侵?
    ywgx
        3
    ywgx  
       2017-07-09 15:45:32 +08:00   ❤️ 1
    比如说 禁止应用以 root 身份启动,禁止 root 远程登录,锁定关键文件,私钥认证登录等等
    比如 [XABC](xabcloud.com) 的企业解决方案
    zsen
        4
    zsen  
    OP
       2017-07-09 15:48:44 +08:00 via iPhone
    @Phant0m 搜索了一下,是 inotify 吧?没了解过之前😰好好学习一下


    @ywgx 估计是开源的网店系统的 bug —找别人改的,然而,朋友还要上第二个网店,用的又是另一个开源网店系统...
    googlebot
        5
    googlebot  
       2017-07-09 18:37:00 +08:00 via iPad
    找漏洞很容易,看看 web log,里面都有记录,一般是 editor 的漏洞,能上传附件,
    zsen
        6
    zsen  
    OP
       2017-07-09 22:19:55 +08:00 via iPhone
    @googlebot 解决问题的角度不一样哈。有些系统被入侵了,但不一定会马上知道。比如电商系统,加了一个管理员,甚至没加或加了后又删掉了,但把收款账号改了,一时半会还真不会知道的。但看订单又有了货也发走了。。。
    googlebot
        7
    googlebot  
       2017-07-10 04:50:35 +08:00 via Android   ❤️ 1
    @zsen 有个软件 fail2ban 专门检测 log,各种 log 都可以,基本能防住各种 hack,
    zsen
        8
    zsen  
    OP
       2017-07-10 07:54:08 +08:00 via iPhone
    @googlebot 这个也没了解过。回头好好学习一下
    zhangneww
        9
    zhangneww  
       2017-07-10 12:22:17 +08:00
    跟我当年似的、不想办法解决被黑的问题、而是想办法恢复。还是想办法从源头解决问题吧、
    zsen
        10
    zsen  
    OP
       2017-07-10 12:32:14 +08:00
    @zhangneww 场景不一样啊。如果被黑了但不知道,怎么恢复呢?你首先总要知道已经被黑了,再去修复 BUG 问题吧。再说,一个 BUG 修复了,很难保证不会出现另外一个,从而导致被黑。

    这个工具的目的,不是说不做源头上的修复——这个肯定是、而且是必须是要的,这个工具的目的是说,可以帮你检测是否有非法的改动,如果有,可以大概知道是什么地方做了改动,同时结合查 log、Google 解决方案 → 修复。
    teddybun
        11
    teddybun  
       2017-07-10 13:59:37 +08:00
    学习了,不过找半天,没发现文件链接,哈哈
    zsen
        12
    zsen  
    OP
       2017-07-10 14:05:25 +08:00
    @fshuqing 「关于本工具的相关说明」下面,有一个「 Repo 」😂

    这里: https://github.com/zsenliao/shellMonitor
    teddybun
        13
    teddybun  
       2017-07-10 15:58:08 +08:00
    @zsen O(∩_∩)O 哈哈~,看到了,最近在学 shell,参考下,谢谢
    tomxin7
        14
    tomxin7  
       2017-07-12 23:43:52 +08:00 via Android
    老哥,微信可以主动给某个用户发消息吗?好像不行
    zsen
        15
    zsen  
    OP
       2017-07-13 10:31:32 +08:00
    @tomxin7 可以啊,关注公众号之后发送模板消息。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2511 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 05:20 · PVG 13:20 · LAX 21:20 · JFK 00:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.