最近想監控下雲主機的ssh登入情況,所以開始寫ssh登入報警監控。實現方式並不難。
在郵箱中選擇「設定」----->「賬戶」
在如下圖處開啟pop3/smtp服務,並生成授權碼。
登入要進行ssh登入監控的伺服器,在/etc/ssh建立"sshrc"檔案:
#!/bin/bash
#獲取登入者的使用者名稱
user=$user
#獲取登入者的ip位址
ip=$
#獲取登入的時間
time=$(date +%f%t%k:%m)
#伺服器的ip位址
hostname=$(hostname)
echo "content=$time,$user,$ip,$hostname" > log
python /etc/ssh/testemail.py "$time" "$user" "$ip" "$hostname"
並在如上自定義路徑中建立「testemail.py」檔案。
新增顏色部分,按郵箱,授權碼,以及相關術語進行修改。
#!/usr/bin/python
# -*- coding: utf-8 -*-
import smtplib
from email import encoders
from email.header import header
from email.mime.text import mimetext
from email.utils import parseaddr, formataddr
import sys
def send_mail(dtime,duser,dip,dhostname):
#基礎資訊
# from_addr = input("from:")
from_addr = "[email protected]"
password = "授權碼"
#to_addr = from_addr
to_addr = "[email protected]"
# password = raw_input("password:")
# to_addr = input("to:")
def _format_addr(s):
name, addr = parseaddr(s)
return formataddr((header(name, 'utf-8').encode(), addr))
smtp_server = "smtp.qq.com"
mimetex = '您的機器:',dhostname,',於:',dtime,',被ip:',dip,'以賬號',duser,'進行登入,請確認是否為公司員工。'
#構造郵件
msg = mimetext(''.join(mimetex), 'plain', 'utf-8')
msg['from'] = _format_addr("yaohong")
msg['to'] = _format_addr("[email protected]")
msg['subject'] = header("來自yaohong", 'utf-8').encode()
#傳送郵件
server = smtplib.smtp_ssl(smtp_server, 465)
server.set_debuglevel(1)
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()
if __name__ == "__main__":
send_mail(sys.ar**[1], sys.ar**[2], sys.ar**[3], sys.ar**[4])
安裝完後,再次進行ssh登入該伺服器會收到郵件如下圖,則表示ssh被監控成功。
定時監控所有伺服器的埠,如果掛起,傳送報警郵件
功能 1 ping所有網內機器的ip位址,如果不通,傳送報警 2 檢測網內所有機器的服務埠,如果不通,傳送報警 bin bash 讀取ip列表,測試ip的某個埠 while read ip1 doping c 2 ip1 dev null 2 1 if eq 0 then echo echo pin...
ssh遠端登入伺服器
首先準備好openssh或xshell,客戶端的ssh連線方式為 ip 埠號 預設為22 伺服器端要做的準備工作是確保開啟sshd,etc init.d shhd restrat,在伺服器安裝時,可以勾選初始安裝諸如ssh server之類的元件。如未安裝,可以使用apt install ssh s...
伺服器賬戶登入監控工具
假如說,我是說假如,你不小心用root之類的賬號登入了乙個伺服器,又不經意間的使用了一下,這時候你一定膽戰心驚。你急需乙個小工具來監控一下,那麼,了解一下這個小玩意兒或許對你有幫助。這個工具十分簡單,就是四步 原始碼在這裡,這個指令碼沒有引入第三方包,全部使用的python基礎包。相容python ...