有一堆内部批处理脚本,而不是利用sendEmail.exe,这是一个旧的perl自动电子邮件应用程序,在这里可以找到:
问题是,随着我们迁移到office365,以及我们的安全策略,smtp需要启动。SendEmail不支持startls (或者有startls选项).虽然ssl和tls都有选项: yes/auto/no,但它们都不起作用。
一种选择是用python和smtplib库创建一些新的东西来代替sendEmail.exe,但是我不想在这里重新创建轮子。
还有其他受欢迎的免费公共事业或程序,我可以很容易地交换出来来填补这个角色吗?
发布于 2020-11-09 10:03:44
我为您提供了另一个解决方案,与Stunnel一起使用的是您以前信任的C0。Stunnel确实支持STARTTLS,它在Linux/Windows/MacOS/*NIX下运行。
你可能会问,Stunnel现在在说什么?嗯,这个:
Stunnel是一种代理,旨在向现有客户端和服务器添加TLS加密功能,而不对程序代码进行任何更改。
因此,它基本上使您的旧解决方案能够说TLS;Stunnel负责加密部分,其余部分由SendMail.exe完成。
对于您来说,这可能是最简单的解决方案;您只需要添加Stunnel,而不是替换SendMail.exe,这可以非常快地完成。
发布于 2020-11-07 15:42:23
我将用一种使用PowerShell的更本地的方法来代替它。由于Send-MailMessage现在已经过时,这就留给我们System.Net.Mail:MailMessage & SmtpClient。据推测,您的脚本可以将变量(并且可以填充缺失的变量)传递给:
$mailMessage = New-Object System.Net.Mail.MailMessage($fromAddress, $toAddress, $subject, $body)
$smtpClient = New-Object System.Net.Mail.SmtpClient($smtpServer, $smtpPort)
$smtpClient.EnableSsl = $true
$smtpClient.Credentials = New-Object System.Net.NetworkCredential($smtpUsername, $smtpPassword)
$smtpClient.Send($mailMessage)https://serverfault.com/questions/1041570
复制相似问题