Flash info

"Les IT Pros sont en train de migrer rapidement car PowerShell est plus facile et plus puissant que VBScript."

Microsoft Scripting Guys

 
Accueil arrow Forum

Bienvenue sur le forum PowerShell-Scripting.com

 
SpeedKore
Utilisateur

PowerShelleur Débutant
Messages: 13
graphgraph
Karma: 0  
IIS SmtprelayWMI et CIM - 3/10/17 09:42 Bonjour,

Je rencontre actuellement un soucis sur mon relay SMTP.

J'ai un Windows serveur 2012 (Dédié au SMTPrelay, donc IIS) Membre du domain. Mon compte est admin du domain.(Les service compatibilité WMI sont installés)

J'ai un soucis pour retrouver toutes les IP smtp relay.

En effet, en local ou sur mon poste (remote), si je tape :

Code:

  Get-WmiObject -Namespace root/MicrosoftIISv2 -ClassName IISSMTPServerSetting -ComputerName ******* -Credential ******



Je me prend un accès refusé.
J'ai édité les ACL Wmi et Dcom pour me mettre en full access, mais rien n'y fait.

Je me suis donc retourné vers CIM.

j'ai fais cette requête:

Code:

  Get-CimClass -Namespace root/MicrosoftIISv2 -ClassName IISSMTPServerSetting -ComputerName "*******"



Là pas de problème j'ai bien accès à tous ce qui va bien MAIS je me suis aperçu que :

Code:

  $IPrelay Get-CimClass -Namespace root/MicrosoftIISv2 -ClassName IISSMTPServerSetting -ComputerName "*********" $IPrelay.CimClassProperties


Toutes les Values sont vide...

Je rappel que j'ai absolument tous les droits sur ce serveur.

Quelqu'un a-t-il une idée de la provenance de ces soucis?
  | | L'administrateur a désactivé l'accés public en écriture.
Arnaud
Admin

Administrateur
Messages: 1106
graphgraph
Karma: 37  
Re:IIS SmtprelayWMI et CIM - 3/10/17 11:43 Bonjour SpeedKore,

Depuis Windows Server 2012 le parefeu intégré à Windows bloque les connexions RPC/DCOM; c'est la raison pour laquelle Get-WMIObject te jette lorsque tu l'exécutes à partir d'une machine distance.

Par contre un Get-WMIObject exécuté en local (sur le serveur lui-même) devrait fonctionner sans problème, à condition de ne pas préciser le paramètre -ComputerName.

Quant aux commandes CIM, celles-ci encapsulent les requêtes WMI dans du WinRM; donc elles passent sur serveur 2012. En effet, le pare-feu désormais n'autorise que WinRM pour l'administration à distance.

Sinon pour venir au fait que Get-CIMClass te retourne des propriétés vides, c'est certainement tout à fait normal car l'équivalent de Get-WMIObject n'est pas Get-CIMClass mais Get-CIMInstance .

A bientôt,

Arnaud
MVP PowerShell (depuis 2007)
Suivez moi sur Twitter !
  | | L'administrateur a désactivé l'accés public en écriture.
SpeedKore
Utilisateur

PowerShelleur Débutant
Messages: 13
graphgraph
Karma: 0  
Re:IIS SmtprelayWMI et CIM - 23/10/17 13:53 Bonjour,

Effectivement, ça fonctionne nettement mieux avec "Get-CIMInstance". (Et c'est pourtant clairement écrit à la page 560 (4.1))

Merci pour cette réponse.

Au cas où cela aiderait quelqu'un d'autre (Attention, lorsqu'on récupère le RelayIpList nous n’obtenons que des octets.

Voici un script pour sauvegarder les IPs relay SMTP:

Code:

 $scriptPath split-path -parent $MyInvocation.MyCommand.Definition $IPrelay Get-CIMInstance -Namespace root/MicrosoftIISv2 -ClassName IISSMTPServerSetting -ComputerName "NomDuServeurIcI" $ListIP = @() $tmp $null $i 0 Foreach($Octet in $IPrelay.RelayIpList) {     if(($i 4) -eq 0)     {         $ListIP += $tmp         $tmp $null         $tmp $Octet     }     else     {         $tmp "$tmp.$Octet"     }     $i++     } $ListIP += $tmp Set-Content -Path "$scriptPath\Sauvegarde_Ip_Relay_$(get-date -Format yyyy-MM-dd).txt" -Value ($ListIP where {($_ -like "10*") -or ($_ -like "192*")}) -Force

  | | L'administrateur a désactivé l'accés public en écriture.
6ratgus
Utilisateur

PowerShelleur Platinum
Messages: 1326
graphgraph
Karma: 95  
Re:IIS SmtprelayWMI et CIM - 25/10/17 12:14 merci SpeedKore pour ce retour d'expérience
  | | L'administrateur a désactivé l'accés public en écriture.
© 2017 PowerShell-Scripting.com