V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
naoh1000
V2EX  ›  云计算

请问有没有能在有人登录时能立即通过 Telegram 机器人发送推送,并将操作记录实时上传到另一台服务器的开源服务器监控软件?

  •  
  •   naoh1000 · 2020-12-24 18:12:17 +08:00 · 3914 次点击
    这是一个创建于 1456 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近总感觉有人动我服务器,但是日志没看出什么,感觉被清理过。请问有没有能在有人登录时能立即通过 Telegram 机器人发送推送,并将操作记录实时上传到另一台服务器的开源服务器监控软件?
    另外请问有没有好方法排查服务器是否被挂马?进程里没看出什么,个人小项目。
    28 条回复    2020-12-25 17:47:46 +08:00
    naoh1000
        1
    naoh1000  
    OP
       2020-12-24 18:13:51 +08:00
    服务器内存储了很多敏感信息,因此比较重视服务器安全。
    zhoucan007
        2
    zhoucan007  
       2020-12-24 18:15:38 +08:00
    ServerCat ?? Telegram 自己开个 bot,然后写个 curl 就行了吧。
    naoh1000
        3
    naoh1000  
    OP
       2020-12-24 18:24:33 +08:00 via iPhone
    前端程序员第一次写自己项目就是涉及用户敏感数据的,目前已经有了 8000 活跃用户。对运维没什么经验,因此很担心服务器安全。
    Tink
        4
    Tink  
       2020-12-24 19:58:06 +08:00 via Android
    当然没问题啊
    cominghome
        5
    cominghome  
       2020-12-24 20:04:32 +08:00   ❤️ 2
    在.bashrc 里加一个 curl
    Tink
        6
    Tink  
       2020-12-24 20:08:03 +08:00
    ETiV
        7
    ETiV  
       2020-12-24 20:09:43 +08:00 via iPhone
    1. 确定可能的登录方式,比如 ssh
    2. 监控 sshd 日志,发现成功登录就去 curl 发消息
    KasuganoSoras
        8
    KasuganoSoras  
       2020-12-24 20:10:01 +08:00 via Android
    5 楼正解,不过我试过好像会导致 sftp 无法正常登录
    EscYezi
        9
    EscYezi  
       2020-12-24 20:18:05 +08:00 via iPhone
    歪个楼,ssh 设置成仅证书登录就好了
    naoh1000
        10
    naoh1000  
    OP
       2020-12-24 21:35:03 +08:00 via iPhone
    @EscYezi SSH 肯定是仅证书,怕的是私钥泄露,或是什么软件有漏洞。其它的管理端口改非常用高位端口并加 IP 段白名单,禁 ICMP,能想到的安全措施都上了。但是业务数据太敏感了,泄露不起。不适合个人做的业务(市面上没有一个做的好的,很想自己做)
    naoh1000
        11
    naoh1000  
    OP
       2020-12-24 21:37:01 +08:00 via iPhone
    @zhoucan007 第一个需求简单,将操作记录实时上传到另一台服务器请问有好的思路吗?
    @Tink
    @ETiV
    @KasuganoSoras
    dorothyREN
        12
    dorothyREN  
       2020-12-24 21:45:20 +08:00
    tg 通知好做,操作记录 可能需要审计软件吧
    Tink
        13
    Tink  
       2020-12-24 21:49:44 +08:00
    @naoh1000 #11 接着上面的,发现有陌生登陆后,启动脚本。

    脚本的功能就是每秒读一次 history,然后把新增的内容推到 telegram 就行了
    KasuganoSoras
        14
    KasuganoSoras  
       2020-12-24 21:53:42 +08:00
    @naoh1000 #11
    Server 1 (要监控的机器)
    #!/bin/sh
    while true
    do
    cat ~/.bash_history | nc -v 机器 2 的 IP 端口号
    sleep 5
    done

    Server 2 (要记录数据的机器)
    #!/bin/sh
    while true
    do
    nc -v -lp 端口号 > bash_history.txt
    done
    KasuganoSoras
        15
    KasuganoSoras  
       2020-12-24 21:54:27 +08:00
    @KasuganoSoras #14 需要安装 nmap-ncat
    HAWCat
        16
    HAWCat  
       2020-12-24 22:02:01 +08:00 via Android
    换个私钥,然后加上二次验证
    suotm
        17
    suotm  
       2020-12-24 22:21:09 +08:00
    可以用 curl 触发 webhook,每次 ssh 有登录的时候就触发:
    ![2020-12-24_22_18_43.png]( https://i.loli.net/2020/12/24/SBK2IyNAP5qdTMh.png)
    yfwl
        18
    yfwl  
       2020-12-25 02:35:57 +08:00
    监控 SSH 登录呗
    akira
        19
    akira  
       2020-12-25 03:30:55 +08:00
    直接吧 message 日志实时同步出来应该就足够了
    ETiV
        20
    ETiV  
       2020-12-25 04:18:16 +08:00 via iPhone
    操作记录试试 script,参数啥的、你看看 help
    可以输出成文件,然后用 rsyslog 什么的转发走
    ExplodingFKL
        21
    ExplodingFKL  
       2020-12-25 08:22:19 +08:00
    或许可以参考下 fail2ban 的原理
    ruidoBlanco
        22
    ruidoBlanco  
       2020-12-25 08:38:16 +08:00
    写.bashrc 的做法不能防止 bot 直接 ssh <host> <command> 跑命令,因为没有起 interactive shell,不会去读 bashrc 。

    如果要防,在 pam 设置里想办法。
    julyclyde
        23
    julyclyde  
       2020-12-25 09:59:37 +08:00
    Linux 里绝大多数登录都会经过 PAM
    当然了如果你的机器已经被“特地设置过”那就不好说了
    KouShuiYu
        24
    KouShuiYu  
       2020-12-25 10:49:16 +08:00
    监听 bash_history 文件变化?这个简单
    tianshiyeben
        25
    tianshiyeben  
       2020-12-25 10:56:54 +08:00
    wgcloud,很轻的监控软件,里面有个日志文件监控模块,设置敏感字符,检测到就会发送告警信息(邮件钉钉微信)
    你试试 www.wgstart.com
    naoh1000
        26
    naoh1000  
    OP
       2020-12-25 11:38:17 +08:00 via iPhone
    @KouShuiYu 对方可能不用 bash
    vken
        27
    vken  
       2020-12-25 17:45:42 +08:00
    改端口,换证书,2 次动态验证,/etc/profile + curl + Bark(IOS)
    vken
        28
    vken  
       2020-12-25 17:47:46 +08:00
    另外既然你已经不在信任自己的机器,就应该考虑迁移到另一台机上
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3150 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 13:09 · PVG 21:09 · LAX 05:09 · JFK 08:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.