Skicka mail i powershell med tex Bahnhof

Permalänk
Medlem

Skicka mail i powershell med tex Bahnhof

Jag har länge gjort detta via en schedule task men det har slutat att funka för länge sedan.
Då använde jag outlook.com som smtp men nu verkar det som man har ändrat så man måste slå på MFA på kontot för att kunna få ut ett app lösenord som jag sedan kan använda i skriptet.

Jag vill inte slå på MFA, kan det finnas andra smtp servers jag jag använda som inte kräver MFA?

Jag har en Bahnhof konto, någon som vet hur det funkar där?

Egentligen spelar det ingen roll vilken avsändar mail leverantör jag använder, bara jag får iväg ett mail via powershell

Permalänk
Skrivet av kotten33:

Jag har länge gjort detta via en schedule task men det har slutat att funka för länge sedan.
Då använde jag outlook.com som smtp men nu verkar det som man har ändrat så man måste slå på MFA på kontot för att kunna få ut ett app lösenord som jag sedan kan använda i skriptet.

Jag vill inte slå på MFA, kan det finnas andra smtp servers jag jag använda som inte kräver MFA?

Jag har en Bahnhof konto, någon som vet hur det funkar där?

Egentligen spelar det ingen roll vilken avsändar mail leverantör jag använder, bara jag får iväg ett mail via powershell

Många ISP:er har en SMTP relay-tjänst man kan använda från datorer i deras nätverk.
Hos Bahnhof kan du skicka epost genom att gå via `mailout.privat.bahnhof.se:587` och ange det användarnamn/lösenord du hittar i dina kontouppgifter på dina sidor hos dem.

Permalänk
Medlem
Skrivet av Det Otroliga Åbäket:

Många ISP:er har en SMTP relay-tjänst man kan använda från datorer i deras nätverk.
Hos Bahnhof kan du skicka epost genom att gå via `mailout.privat.bahnhof.se:587` och ange det användarnamn/lösenord du hittar i dina kontouppgifter på dina sidor hos dem.

Snyggt, men jag hade tyvärr redan denna info i mitt script.

Jag fick dock igång det ändå nu, man var tvungen att göra en TLS ändring (chat gpt hjälpte mig)

Så här fick man skriva: (kanske är intressant för andra)

denna raden fick jag köra innan send-mail kommandot
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Hela skriptet:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Send-MailMessage -From $EmailFrom -To $EmailTo -Subject $Subject -Body $Body -SmtpServer "mailout.privat.bahnhof.se" -Port 587 -UseSsl -Credential $Credential -Encoding utf8

Permalänk
Skrivet av kotten33:

Snyggt, men jag hade tyvärr redan denna info i mitt script.

Jag fick dock igång det ändå nu, man var tvungen att göra en TLS ändring (chat gpt hjälpte mig)

Så här fick man skriva: (kanske är intressant för andra)

denna raden fick jag köra innan send-mail kommandot
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Hela skriptet:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Send-MailMessage -From $EmailFrom -To $EmailTo -Subject $Subject -Body $Body -SmtpServer "mailout.privat.bahnhof.se" -Port 587 -UseSsl -Credential $Credential -Encoding utf8

Ja just det: I alla andra miljöer får man automatiskt den bästa säkerheten och måste explicit nergradera om det behövs. I .Net Framework/legacy PowerShell/Schannel måste man istället säga till systemet om man vill ha säkerhet bättre än motsvarande 2006. Grattis, Microsoft… 😑

Tips: testa att installera PS7 och se om det kanske fungerar sundare…