Publié le: 2011-02-22

Relative names from connection

Je vous propose un petit script qui vous simplifiera la vie si vous utilisez des certificats SSL avec des alternatives names, en récupérant la liste de ceux-ci depuis une connexion en SSL sur un serveur et en résolvant les noms associés (utile si vous avez des dizaines de noms de domaines sur le même certificat).

#! /bin/sh

if [ -z $1 ]
then
  echo "No argument given. Waiting a DNS name or an IP"
  exit 1
fi

for N in $(openssl s_client -connect $1:443 </dev/null 2>&1 | openssl x509 -text|grep -A1 "X509v3 Subject Alternative Name"|tail -1|sed 's/[DNS:|,]//g')
do
  echo "=== $N ==="
  dig +short $N
done

Vous pourriez également changer le script afin d’en faire une sonde de monitoring afin de vérifier les adresses IP correspondant à la liste des domaines trouvés sont correctes.

Vous retrouverez le script sur mon github