• 파이썬 WHOIS 모듈을 활용하여 도메인 등록기관(Registry)에서 관리하는 도메인의 만료 기간을 확인
  • 지속적으로 관리하지 않으면, 방심하는 사이에 도메인의 만료기간이 넘어서 서비스의 장애 발생
  • python3의 whois 모듈과 시간 모듈을 다운로드

    pip3 install python-whois
    pip3 install python-dateutil

  • WHOIS 모듈을 사용한 파이썬 코드 → 만료기간을 SLACK에 알려주는 기능 추가

    $ vi /root/whois_check.py
    import whois
    import datetime
    from dateutil.relativedelta import relativedelta
    import requests
    
    domain_lists = ['naver.com','kakao.co.kr']
    
    for domain in domain_lists:
        result = whois.whois(domain)
        expiration = result.expiration_date
        domain_txt = domain + "도메인의 만료기간이 " + str(expiration) + " 입니다."
        data = {'payload': '{"channel": "#hippo", "username": "alarm", "text": \"'+ domain_txt + '\"}'}
        response = requests.post('https://hooks.slack.com/services/[...생략...]',data=data)

  • crontab 설정

    $ cat /etc/crontab
    # 매일 아침 10시에 도메인 whois 확인
    00 10 * * * root python3 /root/whois_check.py > /dev/null 2>&1

※ 참고 URL

+ Recent posts