我正在使用一个 SMTP 邮件服务器,它需要用户 + ssl 身份验证才能进行连接。我正在寻找 perl 模块来连接到邮件服务器并发送电子邮件,但没有发现任何有用的东西。
对 perl 模块或任何 perl 代码的任何建议将不胜感激。
编辑
我尝试使用 Mail::Sendmail 和 Net::SMTP::SSL 连接到 sendmail 服务器并发送邮件。以下是示例代码,但出现错误用户未知。
错误:
mail: Net::SMTP::SSL=GLOB(0x9599850) not found
RCPT TO: error (550 5.1.1 <user@mail.com>... User unknown).
代码:
#!/usr/bin/perl
use strict;
use warnings;
use Mail::Sendmail;
use Net::SMTP::SSL;
my %mail = (
From=> 'user1@server.com',
To=> 'user2@server.com',
# Cc will appear in the header. (Bcc will not)
Subject => 'Test message',
'X-Mailer' => "Mail::Sendmail version $Mail::Sendmail::VERSION",
);
$mail{Smtp} = Net::SMTP::SSL->new("mail.server.com", Port=> 465, Debug=>1);
$mail{auth} = {user=>'username', password=>"password", required=>1 };
$mail{'X-custom'} = 'My custom additionnal header';
$mail{Message} = "The message key looks terrible, but works.";
# cheat on the date:
$mail{Date} = Mail::Sendmail::time_to_date( time() - 86400 );
if (sendmail %mail) { print "Mail sent OK.\n" }
else { print "Error sending mail: $Mail::Sendmail::error \n" }
print "\n\$Mail::Sendmail::log says:\n", $Mail::Sendmail::log;