脚本项目地址:https://github.com/ecouus/Shell

前言

最近接触到一款非常方便的推送 APP —— Bark,它支持通过 API 轻松向 iOS 设备推送消息。灵感一来,我想到用它来实现 SSH 登录通知,方便监控服务器的登录情况。
为了节省大家的时间,编写了一键部署脚本,感兴趣的朋友可以直接尝试。

原理

还是大致讲讲原理:通过部署fail2ban并监控/var/log/auth.log日志,提取出登录信息,然后通过sh脚本及bark的api完成推送。(就是这么简单)

效果图

1737103461134.webp

什么是 Bark?

Bark 是一个开源的推送服务,支持通过简单的 API 将消息推送到您的 iOS 设备。你只需设置 Bark 的服务器地址和设备密钥,即可在移动设备上接收来自服务器的通知。

Bark部署

docker

docker run -dt --name bark -p 8080:8080 -v `pwd`/bark-data:/data finab/bark-server

可自行修改端口映射和挂载目录。

docker compose

version: '3.8'
services:
  bark-server:
    image: finab/bark-server
    container_name: bark-server
    restart: always
    volumes:
      - ./data:/data
    ports:
      - "8080:8080"

配置域名 (可选)

按照上述配置后bark 的后端服务地址为:http://IP:8080
建议使用一键脚本进行nginx反代并配置证书。

APP内操作

  • 进入APP右上角即可添加后端地址
    1737103048662.webp
  • 返回主页可查看到设备的Key,这个得保护好,否则别人知道域名和 Key后可以随意想你推送通知
    1737103128196.webp

    通过一键脚本部署ssh登陆通知

    脚本仓库:https://github.com/ecouus/Shell
    1、输入4进入"系统安全"菜单
    2、安装fail2ban
    3、配置bark通知
    1737103622258.webp

最后修改:2025 年 01 月 17 日
如果觉得我的文章对你有用,请随意赞赏