vonAbisZ 2 Geschrieben 27. April 2022 Autor Melden Teilen Geschrieben 27. April 2022 Nun habe ich eine Testmail via Telnet als Test via Port 25 erfolgreich versendet. Als Absenderadresse (Mail from) habe ich eine ungültige, nicht existierende Mailnachricht verwendet und als Empfängeradresse habe ich meine pers. Mailadresse vom Geschäft verwendet und ja, das hat funktioniert. Ich nehme an, Du wolltest herausfinden, ob der Mailversand auf diese Art und Weise funktioniert, um prüfen zu können, ob bei diesem Testmail Versand eine Authentifizierung stattfindet, korrekt? Nein, es hat keine Authentifizierung stattgefunden, ich konnte anonym via Port 25 eine Mail versenden, was gibt es sonst noch für Lösungsansätze? Zitieren Link zu diesem Kommentar
NorbertFe 2.066 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 Richtig und wenn du da eine gültige absendeadresse einträgst geht das auch einfach so. Also führt dein Skript/task eine Authentifizierung durch, was die Fehlermeldung ja auch aussagt. Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 27. April 2022 Autor Melden Teilen Geschrieben 27. April 2022 vor 23 Minuten schrieb NorbertFe: Richtig und wenn du da eine gültige absendeadresse einträgst geht das auch einfach so Korrekt, das funktioniert auch. Ich habe als Absenderadresse unsere Support@unsereFirma.ch Mail verwendet und als Empfängeradresse meine pers. Mailadresse vom Geschäft. vor 24 Minuten schrieb NorbertFe: Also führt dein Skript/task eine Authentifizierung durch, was die Fehlermeldung ja auch aussagt. Nach meinem, technischen Verständnis würde ich meinen, NEIN! Das PS Skript habe ich vom Internet verwendet (den Code), ein wenig angepasst und nicht mehr. In der Aufgabenplanung habe ich beim Aufruf des PS Skript auch keine Authentifizierung verwendet! Zitieren Link zu diesem Kommentar
NorbertFe 2.066 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 vor 12 Minuten schrieb vonAbisZ: Nach meinem, technischen Verständnis würde ich meinen, NEIN! Das PS Skript habe ich vom Internet verwendet (den Code), ein wenig angepasst und nicht mehr. In der Aufgabenplanung habe ich beim Aufruf des PS Skript auch keine Authentifizierung verwendet! Und wie erklärst du dir die Fehlermeldung? ;) kommt die Fehlermeldung auch, wenn du das Skript mal nicht direkt auf dem Exchange ausführst (als task)? Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 27. April 2022 Autor Melden Teilen Geschrieben 27. April 2022 vor 5 Minuten schrieb NorbertFe: Und wie erklärst du dir die Fehlermeldung? ;) Wie schon erwähnt: wenn ich für die Aufgabenplanung meinen Domänen Administrator AD User hinterlege und das Skript laufen lasse, funktioniert der Mailversand. Mit dem gleichen Domänen Admin AD User bin ich auch per RDP am Exchange Server eingeloggt. Hinterlege ich in der Aufgabenplanung hingegen den AD User SMTP (ist ein Domänen- User, nicht mehr), erhalte ich diese Fehlermeldung. Der Unterschied der beiden AD- User ist klar. Einerseits der Domänen Administrator User kontra dem normalen AD User SMTP, wo der Versand nicht funktioniert. Wenn ich eine, deiner Argumentationen korrekt verstanden habe, sollte aber der Mailversand auch mit dem Domänen User möglich sein. Darum poste ich anbei mal den Skript, vielleicht findest Du da drin irgendwo eine Code Schnipsel, welcher eine Authentifizierung verlangt? ################################################################################################################# # Requires: Windows PowerShell Module for Active Directory ################################################################################################################## # Please Configure $smtpServer="mailserver.domain.local" #FQDN mail server $expireindays = 35 #days before reminding $from = "Support <noreply@unsereFirma.ch>" $logging = "Enabled" # Set to Disabled to Disable Logging $logFile = "C:\LOGs\mail.csv" # ie. c:\mylog.csv $testing = "Enabled" # Set to Disabled to Email Users $testRecipient = "Vorname.Nachname@unsereFirma.ch" # If Testing Is Enabled - Email Administrator ONLY # ################################################################################################################### # Check Logging Settings if (($logging) -eq "Enabled") { # Test Log File Path $logfilePath = (Test-Path $logFile) if (($logFilePath) -ne "True") { # Create CSV File and Headers New-Item $logfile -ItemType File Add-Content $logfile "Date,Name,EmailAddress,DaystoExpire,ExpiresOn,Notified" } } # End Logging Check # System Settings $textEncoding = [System.Text.Encoding]::UTF8 $date = Get-Date -format ddMMyyyy # End System Settings # Get Users From AD who are Enabled, Passwords Expire and are NOT Currently Expired Import-Module ActiveDirectory $users = get-aduser -filter * -properties Name, PasswordNeverExpires, PasswordExpired, PasswordLastSet, EmailAddress | where {$_.Enabled -eq "True"} | where { $_.PasswordNeverExpires -eq $false } | where { $_.passwordexpired -eq $false } $DefaultmaxPasswordAge = (Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge # Process Each User for Password Expiry foreach ($user in $users) { $Name = $user.Name $emailaddress = $user.emailaddress $passwordSetDate = $user.PasswordLastSet $PasswordPol = (Get-AduserResultantPasswordPolicy $user) $sent = "" # Reset Sent Flag # Check for Fine Grained Password if (($PasswordPol) -ne $null) { $maxPasswordAge = ($PasswordPol).MaxPasswordAge } else { # No FGP set to Domain Default $maxPasswordAge = $DefaultmaxPasswordAge } $expireson = $passwordsetdate + $maxPasswordAge $today = (get-date) $daystoexpire = (New-TimeSpan -Start $today -End $Expireson).Days # Set Greeting based on Number of Days to Expiry. # Check Number of Days to Expiry $messageDays = $daystoexpire if (($messageDays) -gt "1") { $messageDays = "in " + "$daystoexpire" + " Tagen" } else { $messageDays = "HEUTE" } # Email Subject Set Here $subject="Dein Kennwort läuft $messageDays ab." # Email Body Set Here, Note You can use HTML, including Images. $body =" <p style=""font-family:'Segoe UI', Segoe UI;""> Hallo $name, <br><br> Dein Windows-Kennwort wird $messageDays ablaufen.<br> Um Dein Kennwort zu ändern, drücke die Tastenkombination STRG-ALT-ENTF und wähle 'Kennwort ändern'.<br><br> Dein ICT Team.<br> (Diese Antwort wurde automatisch vom System generiert. Darum bitte nicht darauf antworten, danke.) </P>" # If Testing Is Enabled - Email only Administrator if (($testing) -eq "Enabled") { $emailaddress = $testRecipient } # End Testing # If a user has no email address listed if (($emailaddress) -eq $null) { $emailaddress = $testRecipient }# End No Valid Email # Send Email Message if (($daystoexpire -ge "30") -and ($daystoexpire -lt $expireindays)) { $sent = "Yes" # If Logging is Enabled Log Details if (($logging) -eq "Enabled") { Add-Content $logfile "$date,$Name,$emailaddress,$daystoExpire,$expireson,$sent" } # Send Email Message Send-Mailmessage -smtpServer $smtpServer -from $from -to $emailaddress -subject $subject -body $body -bodyasHTML -priority High -Encoding $textEncoding } # End Send Message else # Log Non Expiring Password { $sent = "No" # If Logging is Enabled Log Details if (($logging) -eq "Enabled") { Add-Content $logfile "$date,$Name,$emailaddress,$daystoExpire,$expireson,$sent" } } } # End User Processing # End Zitieren Link zu diesem Kommentar
NorbertFe 2.066 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 vor 20 Minuten schrieb vonAbisZ: Wenn ich eine, deiner Argumentationen korrekt verstanden habe, sollte aber der Mailversand auch mit dem Domänen User möglich sein. Warum führst du das Skript nicht als System aus? Wenn im Skript keine Authentifizierung stattfindet ist es doch egal, wer das Skript ausführt. :/ skripte sollte man als Code formatiert hier posten. So liest sich das echt unangenehm. Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 27. April 2022 Autor Melden Teilen Geschrieben 27. April 2022 vor 8 Minuten schrieb NorbertFe: Warum führst du das Skript nicht als System aus? Diese Variante hatte ich als bevorzugte Variante gesehen und darum auch als 1. Variante so angewendet, aber leider erhielt ich da eine Fehlermeldung. Um diese Fehlermeldung zu rekonstruieren, habe ich soeben erneut als User in der Aufgabenplanung den System User hinterlegt. Die PS Überwachung hat unteranderem folgendes aufgezeichnet: ********************** PS>CommandInvocation(Out-String): "Out-String" >> ParameterBinding(Out-String): Name="InputObject"; Wert="Von der Übertragungsverbindung können keine Daten gelesen werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen." Send-Mailmessage : Von der Übertragungsverbindung können keine Daten gelesen werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen. In C:\Skripts\Passwort-Ablauf-Mail.ps1:96 Zeichen:1 + Send-Mailmessage -smtpServer $smtpServer -from $from -to $emailaddres ... vor 11 Minuten schrieb NorbertFe: Wenn im Skript keine Authentifizierung stattfindet ist es doch egal, wer das Skript ausführt. :/ Das sehe ich auch so wie Du. Ich habe nur damit angefangen, einen User zu hinterlegen, weil eben, wie Du leider siehst, auch beim Ausführen mit dem System User in der Aufgabenplanung ein Fehler erscheint Und: Als ich merkte, dass beim Hinterlegen in der Aufgabenplanung mit dem Domänen Administrator der Skript ausgeführt wird, ich erst danach auf den Geschmack kam und dann eben den AD User SMTP verwendet (weil der eben schon für ähnliche Aufgaben schon verwendet wird, warum dann wieder einen neuen AD User erstellen?) vor 14 Minuten schrieb NorbertFe: skripte sollte man als Code formatiert hier posten. So liest sich das echt unangenehm. Sorry, ich hatte im Moment, wo ich den Code Schnipsel hier gepostet hatte, nicht realisiert, dass man hier extra eine Funktion zum Einfügen von Code Schnipsel vorgesehen hat. Soll ich den Code nochmals posten, aber lesbarer? Nein, war ein Witz. Du kannst ja Ihn kurz ein ein Notepad ++ kopieren oder nicht? So, meine lieben IT-Freaks: Für heute verabschiede ich mich hier. Morgen, am Donnerstag habe ich frei. Aber ich werde trotzdem kurz hier in das Board schauen und wenn ich das Gefühl habe, es lohnt sich, kurz von zu Hause aus einen, möglichen Lösungsvorschlag von Euch zu testen, wäre ich dazu bereit Zitieren Link zu diesem Kommentar
NorbertFe 2.066 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 vor 10 Minuten schrieb vonAbisZ: Notepad ++ kopieren oder nicht? Am iPhone eher schwierig. ;) aber für Skripte gibts hier ja noch mehr Helfer, die ggf. Einen Blick werfen werden. Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 27. April 2022 Autor Melden Teilen Geschrieben 27. April 2022 Ach so, Du bist ein iPhone Liebhaber? Das war ich jahrelang auch, dann Entschied ich mich für ein Google Pixel Smartphone und würde nie mehr etwas anderes wollen Doch, ein Linux Smartphone würde mich reizen, aber leider sind die von den Funktionen nicht über alle Zweifel erhaben. Easy, vielleicht liest hier noch ein PS Spezialist ein Code Schnipsel in Bezug Authentifizierung heraus? Ich bin zwar kein PS Spezialist, aber mein Bescheidenes Wissen sagt mir, dass es KEINEN solchen Code hat ;) Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 vor 19 Minuten schrieb vonAbisZ: Soll ich den Code nochmals posten, aber lesbarer? Editiere deinen Post und korrigiere das einfach. Zitieren Link zu diesem Kommentar
NorbertFe 2.066 Geschrieben 27. April 2022 Melden Teilen Geschrieben 27. April 2022 vor 9 Minuten schrieb vonAbisZ: Ach so, Du bist ein iPhone Liebhaber? Das war ich jahrelang auch, dann Entschied ich mich für ein Google Pixel Smartphone und würde nie mehr etwas anderes wollen Ich hätte auch genetisch Smartphone schreiben können. Ich denke das tut nix zur Sache. ;) Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 29. April 2022 Autor Melden Teilen Geschrieben 29. April 2022 Guten Morgen Norbert Deine letzte Frage an mich war ja: "Warum führst du das Skript nicht als System aus?" Meine Antwort darauf hatte ich am Mittwoch, 21:56 Uhr geliefert inkl. Fehlermeldung, welche die PS Überwachung aufgezeichnet hat, während ich die Aufgabenplanung mit hinterlegtem System User gestartet hatte. Hast Du eine Idee, warum diese Fehlermeldung kommt bzw. was Di uns konkret mitteilen möchte? Ich werde leider aus dem Text nicht sehr schlau?! Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 4. Mai 2022 Autor Melden Teilen Geschrieben 4. Mai 2022 Am 27.04.2022 um 21:40 Uhr hast Du mich, lieber NorbertFe gefragt: "Warum führst du das Skript nicht als System aus?" Meine Antworte lautete damals (siehe anbei den Text) und ist bis und mit heute unbeantwortet geblieben und somit ist natürlich, leider muss ich feststellen, mein Problem nach wie vor ungelöst?! Diese Variante hatte ich als bevorzugte Variante gesehen und darum auch als 1. Variante so angewendet, aber leider erhielt ich da eine Fehlermeldung. Um diese Fehlermeldung zu rekonstruieren, habe ich soeben erneut als User in der Aufgabenplanung den System User hinterlegt. Die PS Überwachung hat unteranderem folgendes aufgezeichnet: ********************** PS>CommandInvocation(Out-String): "Out-String" >> ParameterBinding(Out-String): Name="InputObject"; Wert="Von der Übertragungsverbindung können keine Daten gelesen werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen." Send-Mailmessage : Von der Übertragungsverbindung können keine Daten gelesen werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen. In C:\Skripts\Passwort-Ablauf-Mail.ps1:96 Zeichen:1 + Send-Mailmessage -smtpServer $smtpServer -from $from -to $emailaddres ... Zitieren Link zu diesem Kommentar
winmadness 79 Geschrieben 4. Mai 2022 Melden Teilen Geschrieben 4. Mai 2022 Hast Du auch einen extra Empfangsconnector angelegt und mit diesem getestet? - siehe mein Beitrag. Zitieren Link zu diesem Kommentar
vonAbisZ 2 Geschrieben 4. Mai 2022 Autor Melden Teilen Geschrieben 4. Mai 2022 (bearbeitet) vor 34 Minuten schrieb winmadness: Hast Du auch einen extra Empfangsconnector angelegt und mit diesem getestet? - siehe mein Beitrag. Nein. Anhand deiner Frage merke ich, dass mein Wissen in Bezug: "Empfangs und Sende Connectoren" "löchrig" ist und oder ich ein total falsches Verständnis dafür habe, was die Wörter senden und empfangen angeht? Denn in deinem Link, welchen Du mir gepostet hast steht: "Mit dem neuen Empfangsconnector soll verhindert werden, dass alle Systeme senden können. Es sollen nur bestimmte Systeme (über die IP) gezielt zugelassen werden." Um mein Verständnis für Sende-Connectoren und Empfangs-Connectoren zu verbessern, musst Du mir jetzt Mal in aller Ruhe erklären, warum ich für dieses Szenario hier einen neuen Empfangs-Connector erstellen soll, welchen ich so konfiguriere, dass nur "anonyme Benutzer" zugelassen sind? Hättest Du mir einen Post gezeigt, in welchem steht, ich müsse einen separaten Sende-Connecteor erstellen, hätte ich die Welt noch verstanden, aber warum bitte einen Empfangs-Connector? Bis anhin dachte ich immer: Sende-Connector = wie es das Wort Sende vermuten lässt, ist dafür da, dass der Exchange z.B. alle Mails in Bezug der Domain @gugus.de direkt an die Mailserver von @gugus.de senden soll, mit Betonung auf senden :) Empfangs-Connector = wie es das Wort Empfang vermuten lässt, sei nur, mit Betonung auf nur, dafür da, dass er Mails für @domainX.ch entgegen nimmt, also das Gegenteil von einem Sendeconntor macht, nicht? bearbeitet 4. Mai 2022 von vonAbisZ Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.