成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

加強Linux防線,快速構建異常登錄檢測與警報系統

系統 Linux
本文將介紹如何編寫一個 Shell 腳本,監控Linux服務器的登錄異常并發送警報。

在管理和維護Linux服務器時,安全是一個非常重要的方面。監控登錄異常可以幫助管理員及時發現潛在的安全問題,比如多次失敗的登錄嘗試、來自未知IP的訪問等。本文將介紹如何編寫一個Shell腳本,監控Linux服務器的登錄異常并發送警報。

工作場景

運維工程師小張負責管理公司的多臺Linux服務器。為了確保服務器的安全性,小張需要定期監控服務器的登錄記錄,尤其是關注異常的登錄行為,例如多次失敗的登錄嘗試或者來自不常見IP地址的登錄。通過自動化腳本,小張可以及時獲取異常登錄的警報,從而采取必要的安全措施。

腳本功能概述

我們將編寫一個Shell腳本,實現以下功能:

  • 定期檢查系統日志,獲取登錄失敗的記錄。
  • 識別多次失敗的登錄嘗試和來自未知IP的登錄,并查詢這些IP的歸屬地
  • 將異常情況記錄到日志文件。
  • 把告警信息推送到釘釘群。

準備工作

在開始編寫腳本之前,需要在釘釘群創建一個機器人,機器人的類別選擇webhook,如下圖所示:

目前釘釘webhook強制要求了加簽、關鍵字 、IP,3選一,關鍵字最簡單,如下圖所示:

關鍵字的作用是你發送的消息體一定要包括關鍵字才能觸發。

執行下面代碼測試機器人是否配置成功。

curl "https://oapi.dingtalk.com/robot/send?access_token=你的密鑰" -H 'Content-Type: application/json'  -d '{"msgtype": "text","text": {"content":"監控報警:異常登錄"}}'

成功執行,會在釘釘群上看到如下圖消息:

編寫監控腳本

該腳本主要用于監控 Linux服務器的登錄日志文件 以檢測登錄失敗的情況,并將告警信息發送到釘釘。當檢測到關鍵詞pam_unix(sshd:auth): authentication failure時,腳本提取日志中的IP地址和用戶名。然后,通過調用ipinfo.io API 查詢該IP地址的歸屬地信息(包括國家、城市和地區),并將這些信息準備發送到釘釘。

(1) 設置日志文件路徑和釘釘WebHook URL

LOG_FILE="/var/log/auth.log"
WEBHOOK_URL="https://oapi.dingtalk.com/robot/send?access_token=you_token"

(2) 定義關鍵詞,用于檢測登錄失敗。

KEYWORD="pam_unix(sshd:auth): authentication failure"

(3) 實時監控日志文件

tail -Fn0 "$LOG_FILE" | while read line ; do

(4) 檢查是否包含關鍵詞

echo "$line" | grep "$KEYWORD" &> /dev/null
if [ $? = 0 ]
then

(5) 提取IP地址和登錄用戶名

IP=$(echo "$line" | awk '{for(i=1;i<=NF;i++){if($i ~ /rhost=/){print $i}}}' | cut -d '=' -f 2)
USER=$(echo "$line" | awk '{for(i=1;i<=NF;i++){if($i ~ /^user=/){print $i}}}' |cut -d '=' -f 2)

(6) 查詢IP的歸屬地信息

location=$(curl -s ipinfo.io/$IP | jq -r '" Country: \(.country), City: \(.city), Region: \(.region)"')

(7) 構建消息內容

    PAYLOAD=$(cat <<-EOF
{       
"msgtype": "markdown",
"markdown": {
"title":"監控報警:異常登錄",
"text":"
##### Linux服務器監控報警:異常登錄 \n
>  ##### <font color=#67C23A> 【登錄用戶】</font> :<font color=#FF0000> $USER</font>
>  ##### <font color=#67C23A> 【登錄IP】</font> :<font color=#FF0000> $IP </font> 
>  ##### <font color=#67C23A> 【IP歸屬地】</font> :<font color=#FF0000> $location </font> 
>  ##### <font color=#67C23A> 【告警時間】</font> :<font color=#FF0000> $(date +"%Y-%m-%d %H:%M:%S") </font> 
"
}
}
EOF
    )

(8) 把告警信息推送到釘釘

curl -s -H "Content-Type: application/json" -d "$PAYLOAD" "$WEBHOOK_URL" &>/dev/null

腳本使用

在要監控的服務器上新建一個名為monitor_login.sh,把腳本內容復制到文件中如下圖:

并為腳本賦予執行權限,如下:

運行如下命令,啟動腳本:

root@didiplus:/home# ./monitor_login.sh

在另外一臺機器上模擬登錄失敗,這時,監控服務器會出現如下圖所示:

然后,在釘釘群上可以看到如下告警信息:

總結

通過上述腳本,運維人員可以有效地監控Linux服務器的登錄異常情況,及時發現并處理潛在的安全問題。該腳本通過解析系統日志,識別多次失敗的登錄嘗試和來自未知IP的登錄,并通過釘釘方式通知管理員,實現了對登錄異常的實時監控。希望這篇教程能幫助到你,提高服務器的安全管理水平。

責任編輯:趙寧寧 來源: 攻城獅成長日記
相關推薦

2010-01-08 12:13:09

ibmdwDB2

2017-05-04 08:00:54

2023-11-21 08:57:16

2024-05-17 10:00:52

系統監控日志記錄性能指標

2019-10-29 20:42:50

物聯網技術操作系統

2024-04-07 09:49:18

OpenAINATSStreamlit

2023-11-22 09:42:02

系統檢測

2024-10-29 16:18:32

YOLOOpenCV

2011-03-22 16:28:59

2012-11-05 13:59:12

WebFdSafeJS

2023-07-06 09:53:39

2009-03-03 12:54:58

2014-09-03 11:26:11

2009-09-29 10:39:04

Linuxlinux系統性能檢測

2009-11-30 10:50:24

Suse Linux

2009-09-04 10:21:00

2009-06-25 08:54:27

Linux操作系統

2021-11-26 14:59:02

異常檢測網絡攻擊網絡威脅

2011-01-18 11:31:37

2013-05-06 17:08:00

Linux操作系統異常處理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品欧美精品 | 亚洲国产精品一区二区三区 | 男女免费在线观看视频 | 午夜免费视频 | 一区视频 | 台湾av在线| 国产一区二区视频在线观看 | 日韩一区精品 | 天天操天天拍 | 在线一区二区三区 | 一级片免费网站 | www.9191.com| 亚洲午夜精品一区二区三区他趣 | 日韩在线不卡视频 | 奇米影视首页 | 成人精品在线观看 | 国产成人高清视频 | 涩涩鲁亚洲精品一区二区 | 国产免费观看久久黄av片涩av | 黄色免费在线观看网址 | 欧美一级做性受免费大片免费 | 亚洲精品自在在线观看 | 九九综合九九 | 欧美一区2区三区4区公司二百 | 精品视频一区二区三区在线观看 | 国产成人免费 | av影音资源| 久久久久国产 | 在线午夜 | 麻豆毛片 | 久久久精品国产 | 精品av天堂毛片久久久借种 | 久久91精品国产一区二区三区 | 午夜男人免费视频 | 精品1区| 免费在线视频一区二区 | www.亚洲精品 | 日韩在线视频一区 | 久久99深爱久久99精品 | 99国内精品 | 日韩在线91 |