Windows 2012 Server PowerShell Skript Mailversand - Ausnahme beim Versenden
Hallo,
ich mache gerade meine ersten Schritte mit der PowerShell und versuche mich an einem Skript, dass die IP-Adresse versenden soll.
Um ehrlich zu sein, ist das Skript bisher vollständig zitiert [Quelle: http://blog.stefanrehwald.de/2013/06/04/powershell-07-e-mail-versenden- ...]
Das ist der Code soweit. Wenn ich in der ISE nun das ganze ausführe, kommt die Fehlermeldung.
Offensichtlich liegt es am nicht eingerichteten SMTP-Server. Im Moment weiß ich hier allerdings nicht weiter. Kann jemand helfen?
LG
ich mache gerade meine ersten Schritte mit der PowerShell und versuche mich an einem Skript, dass die IP-Adresse versenden soll.
Um ehrlich zu sein, ist das Skript bisher vollständig zitiert [Quelle: http://blog.stefanrehwald.de/2013/06/04/powershell-07-e-mail-versenden- ...]
function sendmail($Body)
{
$Smtp = New-Object System.Net.Mail.SmtpClient
$MailMessage = New-Object System.Net.Mail.MailMessage
$Smtp.Host = "mail.arcor.de"
$MailMessage.From = "anonymous@the.net"
$MailMessage.To.Add("anonymous@the.net")
$MailMessage.Subject = "IP Address"
$MailMessage.Body = $Body
$MailMessage.IsBodyHtml = $false
$SmtpUser = New-Object System.Net.NetworkCredential
$SmtpUser.UserName = "anonymous@the.net"
$SmtpUser.Password = "*********"
$Smtp.Credentials = $SmtpUser
$Smtp.Send($MailMessage)
}
$Body = get-WMIObject Win32_NetworkAdapterConfiguration -filter IPEnabled=true
sendmail $Body
Das ist der Code soweit. Wenn ich in der ISE nun das ganze ausführe, kommt die Fehlermeldung.
Ausnahme beim Aufrufen von "Send" mit 1 Argument(en): "Fehler beim Senden von Mail."
In C:\Users\Administrator\Desktop\sendmail.ps1:15 Zeichen:1
+ $Smtp.Send($MailMessage)
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) , MethodInvocationException
+ FullyQualifiedErrorId : SmtpException
Offensichtlich liegt es am nicht eingerichteten SMTP-Server. Im Moment weiß ich hier allerdings nicht weiter. Kann jemand helfen?
LG
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 243558
Url: https://administrator.de/forum/windows-2012-server-powershell-skript-mailversand-ausnahme-beim-versenden-243558.html
Ausgedruckt am: 23.12.2024 um 05:12 Uhr
4 Kommentare
Neuester Kommentar
Moin 3xplor3r,
du solltest überprüfen ob der SMTP-Host bei Arcor überhaupt noch unverschlüsselte Mails auf dem Standard-Port 25 annimmt. Ich würde den Login mal über Port 465 und SSL aktivieren, so wie es Arcor angibt:
Dann muss die Absendermailadresse natürlich auch mit deinem Account übereinstimmen, und dein Passwort solltest du mit einfachen Anführungszeichen einfassen für den Fall das es Sonderzeichen wie z.B. ein Dollarzeichen enthält, was von Powershell sonst als Variable interpretiert würde.
Zusätzlich solltest du die Ausgabe der IP-Adresse als String formatieren. Im jetzigen Zustand übergibst du ein Objekt als Body anstatt eines Strings (Der Body würde also nur den Typ des Objektes enthalten und nicht die IP-Adresse selber); mach es z.B. so:
So läuft es hier testweise mit dem Code einwandfrei.
Grüße Uwe
du solltest überprüfen ob der SMTP-Host bei Arcor überhaupt noch unverschlüsselte Mails auf dem Standard-Port 25 annimmt. Ich würde den Login mal über Port 465 und SSL aktivieren, so wie es Arcor angibt:
$smtp.Port = 465
$smtp.EnableSsl = $true
Zusätzlich solltest du die Ausgabe der IP-Adresse als String formatieren. Im jetzigen Zustand übergibst du ein Objekt als Body anstatt eines Strings (Der Body würde also nur den Typ des Objektes enthalten und nicht die IP-Adresse selber); mach es z.B. so:
$Body = get-WMIObject Win32_NetworkAdapterConfiguration -filter IPEnabled=true | select IPAddress | out-string
Grüße Uwe
das die Mail abgeschickt wird hast du nicht erwähnt ...
IDAddress
du hast einen Schreibfehler, es heißt IPAddress nicht IDAddress
IDAddress