Script Powershell pour obtenir le certificat d'expiration pour un site web à distance pour plusieurs serveurs
Je suis en train de créer un script pour obtenir la date d'expiration du certificat pour l'un des sites web à distance pour plusieurs serveurs. J'ai un script qui fonctionne pour un seul serveur (Besoin de se connecter sur le serveur et de faire de l'exécution), j'ai besoin d'exécuter à distance pour plusieurs serveurs. Comment puis-je modifier ce script à exécuter pour de multiples serveurs à distance. S'il vous plaît conseils.
$servers = get-content D:\Certificate.txt
$DaysToExpiration = 60 #change this once it's working
$expirationDate = (Get-Date).AddDays($DaysToExpiration)
foreach ($server in $servers)
{
$sites = Get-Website | ? { $_.State -eq "Started" } | % { $_.Name }
$certs = Get-ChildItem IIS:SSLBindings | ? {
$sites -contains $_.Sites.Value
} | % { $_.Thumbprint }
Get-ChildItem CERT:LocalMachine/My | ? {
$certs -contains $_.Thumbprint -and $_.NotAfter -lt $expirationDate
}
}
- obtenir la liste des serveurs, de la boucle sur la liste, ne cert contrôle des choses.
- Marc B, Oui, je peut savoir la logique, mais la façon d'écrire que dans le script. Je suis désolé, je suis nouveau à Powershell. En phase d'apprentissage.
- Mis à jour le script avec la commande Foreach, Lorsque j'exécute cette commande ne produit pas de sortie est à venir, et aucune erreur n'montrant ainsi, comment le faire fonctionner ? s'il vous plaît conseils
Vous devez vous connecter pour publier un commentaire.
Inspiré par https://iamoffthebus.wordpress.com/2014/02/04/powershell-to-get-remote-websites-ssl-certificate-expiration/ je utiliser le script suivant:
Sinon, vous pouvez trouver ce script avancées utiles:
Ici le script avancées code:
Sortie devrait ressembler par exemple:
Mettre tout le code que vous avez écrit dans un script-bloc, pour ce faire, il suffit d'ajouter au début de ce code:
et au bas de votre code d'ajouter:
Une fois que vous avez ce script bloc, vous pouvez exécuter ce script sur les serveurs à distance à l'aide de ces commandes:
Espère que ça a aidé!