使用 Loki 对 ssh 登录活动进行实时监控

170 阅读1分钟

监控各 ssh 账号成功或失败登录的总次数、登录时所用的 ip 地址、登录时间等关键数据

环境介绍:

1》Rocky Linux release 8.9 (kernel 4.18.0)

2》rsyslogd 8.2102.0 , openssh-server-8.0p1(sshd 服务)

3》grafana-server 11.1 ,loki 3.0 , promtail 3.0

监控效果图

image.png 具体操作流程如下:

1、安装系统日志管理程序

sudo dnf install rsyslog

2、将认证及授权相关日志保存到文件 /var/log/secure

# ssh 配置,/etc/ssh/sshd_config
SyslogFacility AUTHPRIV
LogLevel INFO

# rsyslog 配置,/etc/rsyslog.conf
authpriv.*        /var/log/secure

3、设置 grafana 官方仓库

# /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://rpm.grafana.com
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://rpm.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

4、安装 promtail

sudo dnf install promtail

5、配置 promtail 采集日志文件 /var/log/secure

# cat /etc/promtail/config.yml
scrape_configs:
- job_name: system
  static_configs:
  - targets:
      - localhost
    labels:
      instance: 192.168.31.13
      job: secure
      # chmod 644  /var/log/secure.log  确保 promtail 程序可读
      __path__: /var/log/secure

6、加载 ssh 日志监控仪表板模板

web 端打开 Grafana Dashboards  --> New --> Import

--> 填入 ssh 仪表板模板 ID: 17514  --> Load

7、SSH 账号登录成功

image.png

8、SSH 账号登录失败

image.png