1. 程式人生 > >配置服務器監控專線網絡

配置服務器監控專線網絡

table -c ios software dea x86 公司 一個 process

A goal is a dream with a deadline. Much effort, much prosperity.

配置服務器監控專線網絡

項目介紹:

配置一臺服務器監控專線網絡的情況,(由於公司業務的原因需要用到專線進行與客戶對接)實時監控專線的狀態,如果專線不通則進行報警

報警方法有郵件報警,微信報警,和監控器報警等

公司搭建的郵件報警就是寫腳本進行監控網絡是否通暢,不通則直接發郵件進行報警,更直接,更方便相比傳統的監控器監控服務(zabbix、nagios、cacti等)更直觀,(個人意見)畢竟專線的網絡是挺重要的!微信報警則就顯得比較繁瑣更麻煩還需要調用微信的接口什麽的

項目準備:

一臺服務器,因為只有一個腳本需要跑占用的資源不大,可以放在其他服務器上(比如測試服務器,日誌服務器,監控服務器等盡量避開生產服務器)因為項目已經部署,我這裏在虛擬機上進行還原步驟

1 2 3 4 [root@localhost ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@localhost ~]# uname -a Linux localhost.localdomain 2.6.32-696.16.1.el6.x86_64 #1 SMP Wed Nov 15 16:51:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

配置安裝:

安裝郵件系統sendmail

1 2 3 4 5 6 7 8 9 [root@localhost ~]# cd /usr/src/ [root@localhost src]# wget -c http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz [root@localhost src]# tar xf sendEmail-v1.56.tar.gz [root@localhost src]# cd sendEmail-v1.56 [root@localhost sendEmail-v1.56]
# cp -a sendEmail /usr/local/bin/ [root@localhost sendEmail-v1.56]# chmod +x /usr/local/bin/sendEmail [root@localhost sendEmail-v1.56]# file /usr/local/bin/sendEmail /usr/local/bin/sendEmail: a /usr/bin/perl -w script text executable

安裝依賴

1 2 3 4 5 6 7 8 9 10 11 12 13 14 [root@localhost ~]# yum -y install perl-Net-SSLeay perl-IO-Socket-SSL [root@localhost ~]# sendEmail -f [email protected] -t [email protected] -s smtp.163.com -u "你好王叔叔" -o message-content-type=html -o message-charset=utf8 -xu [email protected] -xp *** -m "郵件主題:別來無恙" Jan 10 05:02:30 localhost sendEmail[14290]: Email was sent successfully! 命令說明: /usr/local/bin/sendEmail #命令主程序 -f [email protected] #發件人郵箱 -t [email protected] #收件人郵箱 -s smtp.huanqi.cn #發件人郵箱的smtp服務器 -u "我是郵件主題" #郵件的標題 -o message-content-type=html #郵件內容的格式,html表示它是html格式 -o message-charset=utf8 #郵件內容編碼 -xu [email protected] #發件人郵箱的用戶名 -xp zh@123bj #發件人郵箱密碼 -m "我是郵件內容" #郵件的具體內容

技術分享圖片

腳本監控Script:

腳本的組成有4個文件

其中wss.sh為主腳本程序,其他三個為主程序調用的組件

組件說明:

ip.txt 為監控的專線IP地址分為兩列,一列為IP,一列為別名

mima.txt 為發件人的郵箱密碼(IMAT/SMTP密碼)可用其他程序進行加密

sou.txt 為收件人的郵箱,報警則會向此文件裏的所有郵箱發一份

wss.sh 為主程序,用於監控專線,對端IP或主機,調用其他三個文件,異常報警

script-wss.sh

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #!/bin/bash DATE=`date +"%Y-%m-%d %H:%M"` IP=路徑/ip.txt MAIL=‘發件人@163.com‘ mima=`cat ./mima.txt` for ip in $(cat $IP | sed ‘/^#/d‘ | awk ‘{print $1}‘) do name=$(cat $IP | grep $ip | awk ‘{print $2}‘) neirong=$(echo -e "時間:$DATE\n地址:$ip\n專線:$name\n內容:專線異常") ping -c 10 -i 0.1 $ip &>/dev/null if [ $? -ne 0 ] then for i in $(cat ./sou.txt) do /usr/local/bin/sendEmail -f $MAIL -t $i -s smtp.163.com -u "$name 異常通知" -o message-content-type=html -o message-charset=utf8 -xu 發件人@163.com -xp $mima -m "$neirong" done fi done

script-sou.txt

裏面寫的都是收件人的郵箱

1 2 3 [email protected] [email protected] abc@.....

script-ip.txt

裏面的第一列都是要監控的IP地址,第二列為第一列的別名

1 2 3 4 5 6 7 8 9 114.114.114.114 美國 192.168.5.1 泰國 192.168.70.70 光大 192.168.3.3 新加坡 182.168.5.222 韓國 192.168.5.222 加拿大 8.8.8.8 日本 223.5.5.5 南國 133.226.7.7 緬甸

script-mima.txt

可以用加密工具進行加密,也可以用shc進行轉換,shc可以把寫的所有腳本轉換為c語言寫的可執行文件,shc的詳解後續我會再寫

1 存放發件人的SMTP密碼

註意

如要使用本腳本需按實際情況進行修改(路徑,郵箱,smtp)!

配置服務器監控專線網絡