如果忘记了替 Domain Name 续期的话, 被 Domain Registrar 停掉 Domain, 网站及电邮服务会暂停, 甚至失去网域的使用权。当持有网域的数量较多, 难免会忘记, 以下是介绍用 Shell Script 自动检查网域的到期日及注册机构, 并自动传送续期通知都电邮。
这个 Shell Script 使用 whois 检查网域资料, 及 mail 传送电邮, 先安装这两个小工具:
RHEL / CentOS / Fedora:
# yum install jwhois
# yum install mailx
# yum install mailx
Debian / Ubuntu:
# apt-get install python-software-properties
# add-apt-repository ppa:nathan-renniewaldock/ppa
# apt-get update
# apt-get install whois
# apt-get install bsd-mailx
# add-apt-repository ppa:nathan-renniewaldock/ppa
# apt-get update
# apt-get install whois
# apt-get install bsd-mailx
whois 会回传很多资讯, 但我们只需要 Domain 的到期日, 可以用 grep 过滤出来, 指令是这样:
# whois yourdomain.com | grep -i Expir
知道指令后, Shell Script 是这样写的, 只有几行十分简单:
|
1 2 3 4 5 6 7 8 9 10 11 |
#!/bin/sh DOMAIN_LIST="mydomain.com yourdomain.com" EMAIL_BODY="" for domain in $DOMAIN_LIST do EMAIL_BODY="$EMAIL_BODY$domain - $(/usr/bin/whois $domain | grep -i Expir)\n" done echo -e $EMAIL_BODY | /bin/mail -s "Domain Expiration Date" your@email.com |
将以上 Shell Script 第 3 行的 DOMAIN_LIST 设定成要检查的网域, 网域以空格分开, 以及最后一行改成自己的电邮, 再将 Script 放到 Crontab 自动执行即可。