Vérifier la date d'expiration de plusieurs noms de domaine
Que ce soit à titre personnel ou dans le cadre de mon travail, je dois gérer une liste relativement importante de noms de domaine et m'assurer qu'ils sont renouvelés à temps.
Les prestataires vers qui sont achetés les noms sont divers et il n'y a pas d'homogénéité des alertes qui notifient d'une expiration prochaine.
Par conséquent, j'ai écris un projet qui a pour seul et unique objectif de me donner la date d'expiration d'un ou plusieurs noms de domaine. Cette date prendra une couleur selon la promimité de l'échanance : rouge si on est dans les 2 dernières semaines, jaune si c'est dans les 30 prochains jours ou ou vert si c'est au délà.
$ domain-expiration check google.com,amazon.com,facebook.com,apple.com,microsoft.com
+---------------+---------------------+
| Domain | Date |
+---------------+---------------------+
| google.com | 2020-09-14 04:00:00 |
| apple.com | 2021-02-20 05:00:00 |
| microsoft.com | 2021-03-05 04:00:00 |
| amazon.com | 2022-10-31 04:00:00 |
| facebook.com | 2028-03-30 04:00:00 |
+---------------+---------------------+
Grâce à ansi2html, on peut réaliser une conversion du rendu en HTML afin générer un mail coloré.
$ domain-expiration --ansi check [...] | ansi2html | mail \\
-a "Content-type: text/html" \\
-s "Dates d'expirations des domaines" \\
admin@example.com
Le projet est écrit avec PHP 7.3. Les dépendances sont traitées avec composer
et il faut le programme whois
.
$ git clone https://gitnet.fr/deblan/domain-expiration.git
$ cd domain-expiration
$ composer install
$ php7.3 ./domain-expiration check mon-site.fr
Le code n'est pas parfait mais ça fonctionne 😊