任何**對外提供服務,都需要有乙個網域名稱,就像每個人都有人名,**的名字就是這個網域名稱。如果你想做乙個**,首先就需要租借乙個網域名稱。
當我們管理的網域名稱數量非常多的時候,就很容易忘記為這些網域名稱續期從而導致過期並**。本案例的需求是監控指定的網域名稱是否到期。
具體要求如下:
1)寫乙個函式,網域名稱以引數的形式傳遞給這個函式;
2)網域名稱到期前的一周和到期後的一周(兩周),每天傳送一封告警郵件;
3)指令碼每天執行一次。
郵件指令碼如下:
#!/usr/bin/python
#coding:utf-8
import smtplib
from email.mine.text import mimetext
import sys
mail_host =
'stmp.163.com'
mail_user =
mail_pass =
'your_mail_password'
mail_postfix =
'163.com'
defsend_mail
(to_list,subject,content)
: me =
"zabbix 監控告警平台"
+"<"
+mail_user+
"@"+mail_postfix+
">"
msg = mimetext(content,
'plain'
,'utf-8'
) msg[
'subject'
]= subject
msg[
'from'
]= me
msg[
'to'
]= to_list
try: s = smtplib:smtp(
) s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me,to_list,msg.as_string())
s.close(
)return
true
except exception,e:
print
str(e)
return
false
if __name__ ==
"__main__"
send_mail(sys.ar**[1]
, sys.ar**[2]
, sys.ar**[3]
)
#!/bin/bash
#用於檢測網域名稱是否過期
#定義收件人郵箱
mail=
"/usr/local/sbin/mail.py"
if! rpm -q jwhois &
>/dev/null
then
yum install -y jwhois #沒有whois命令就安裝
fiecho
"`whois $1`
"> /tmp/domain.txt
check_com()'
|cut -c1-10 |
awk -f '-'''`
i=7while
[$i -ge 0 ]
do alert_date1=
`date -d "+$i day" +%f |
awk -f '-'''`
alert_date2=
`date -d "-$i day" +%f |
awk -f '-'''`
if["$expiration_date_com" -eq "$alert_date1"
]then
#echo -e "$1 此網域名稱還有 $i 天過期,請盡快更新!"
python $mail
$mail_user
"$1 此網域名稱還有 $i 天過期,請盡快更新!" 2>/dev/null
elif
["$expiration_date_com" -eq "$alert_date2"
]then
#echo -e "$1 此網域名稱已經過期 $i 天,請盡快更新!"
python $mail
$mail_user
"$1 此網域名稱已經過期 $i 天,請盡快更新!" 2>/dev/null
fii=$[
$i-1]
done
}check_cn()'
|awk -f '-'''`
i=7while
[$i -ge 0 ]
do alert_date1=
`date -d "+$i day" +%f |
awk -f '-'''`
alert_date2=
`date -d "-$i day" +%f |
awk -f '-'''`
if["$expiration_date_cn" -eq "$alert_date1"
]then
#echo -e "$1 此網域名稱還有 $i 天過期,請盡快更新!"
python $mail
$mail_user
"$1 此網域名稱還有 $i 天過期,請盡快更新!" 2>/dev/null
elif
["$expiration_date_cn" -eq "$alert_date2"
]then
#echo -e "$1 此網域名稱已經過期 $i 天,請盡快更新!"
python $mail
$mail_user
"$1 此網域名稱已經過期 $i 天,請盡快更新!" 2>/dev/null
fii=$[
$i-1]
done
}domain=
`echo $1 |
cut -d '.' -f 2`if[
"$domain"
=="com"
]then
check_com $1
elif
["$domain"
=="cn"
]then
check_cn $1
fi
增加計畫任務:
0 8 * * * /usr/local/sbin/check_domain.sh alibaba.com #以 alibaba.com 為例,每天早上8點檢查一次
檢查網域名稱是否到期
bin bash 這個指令碼用來檢查網域名稱是否到期 日期 2019 12 19 mail u admin admin.com 當前日期時間戳,用於和網域名稱的到期時間做比較 t1 date s 檢測whois命令是否存在,不存在則安裝jwhois包 is install whois notify ...
什麼是網域名稱到期?網域名稱到期搶註要怎麼進行?
做seo很多人都需要老網域名稱,對那些到期的網域名稱進行搶註,在最近幾年變得格外火熱,下面懷公尺網和大家介紹一下什麼是網域名稱到期和網域名稱到期搶註要怎麼進行。什麼是網域名稱到期?網域名稱到期後,假如在乙個月時間內沒有進行網域名稱的續費,或者沒有申請保留狀態,那麼就會被強制刪除,這個到期的網域名稱就...
python 獲取網域名稱到期時間
需求 如果在linux系統中直接使用下面命令即可 但是這個命令使用python2 的commands執行不成功,所以只能換成通過shell指令碼去執行。init sh函式檢查shell指令碼不存在則建立,這樣不需要多寫乙個指令碼,有程式生成。usr bin python coding utf 8 a...