shell 腳本監控公網出口IP


shell 腳本監控公網出口IP


http://keep11.blog.51cto.com/1443840/1862279


1、情景

公司有2條二級運營商的鏈路,鏈路非常不穩定。更爲嚴重的是我們申請固定IP,出口IP竟然總是變動。公司所有業務都需要通過外網,影響面非常大。有人提示可以對出口做監測,發現IP變動趕緊處理。我百度發現curl可以通過網站拿到出口地址後就直接寫了,測試成功,就記錄下來share一下。新辦公區選址,運營商線路選擇也是非常重要,不然是更多的坑在等着你。


鏈路監測首先保證你做監測的服務器在你的那條出口鏈路上,這不用多說,如下簡單示意圖:

wKioL1gAVzXhoi-CAAAqnlUY4u0256.png-wh_50


先用ip138,就可以查看你本地址。

wKioL1gAWaXhKRkIAACmluD8Nj0286.png-wh_50




2、

開始監控郵件想用sendmail,但問題百出。於是用linux自帶的postfix,把命令行放到腳本里即可。

1>關閉selinux

[root@bogon ~]# cat /etc/selinux/config 


# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=disabled

# SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes are protected,

#     mls - Multi Level Security protection.

SELINUXTYPE=targeted 

2>關閉防火牆

service iptables off

chkconfig iptables off

3>關閉sendmail

service sendmail stop

chkconfig sendmail off

4>開啓postfix

service postfix restart

chkconfig postfix on

5>保證sendmail關閉,postfix開啓

[root@bogon ~]# service postfix status

master (pid  53164) 正在運行...

[root@bogon ~]# service sendmail status

sendmail 已停

sm-client 已停


現在用postfix相當於foxmail一樣,都屬於客戶端,用客戶端主動去連接服務器端,然後發送郵件。

以QQ企業郵箱爲例,首先在郵箱客戶端設置如下,開啓SMTP,有什麼授權驗證碼的自行解決處理:

wKioL1gAcHWjvofuAABiJbP7qzg853.png-wh_50

postfix端配置如下:

FROM 填自己的郵箱,SMTP,SMTP-AUTH-USER填自己郵箱,PASSWORD填密碼,方式LOGIN。

wKioL1gAchvwvZhMAABgA--KVoA727.png

測試郵箱發送報警郵件,test後面加自己的郵箱測試,成功後寫入下面腳本:

wKiom1gAc2ni3lwyAAAHYnyDBv8661.png


做監控腳本:

創建ip_changed用來存放IP改變的時間,創建iptest用來存放監控腳本是否按計劃任務來執行。由於目前出口IP固定,可以用錯誤的IP來實現if的mail測試(我已經實驗成功)。

wKiom1gAdO3TUCcFAACNnTeiT9A274.png


3、計劃任務

1分鐘做一次IP的探測,保證能及時收到通知。

crontab -e 編緝一下計劃任務

wKiom1gA7baSaj7pAAByfCwPKMI180.png


查看歷史記錄,如下數據說明腳本執行成功,如果有IP變動就可以及時收到通知。大家還可以加入出口連通性測試,但閥值設高點,不然敏感了容易誤判。

[root@bogon home]# tail iptest.txt

wKiom1gA7jqC1QWGAABJMpEzZoE935.png


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章