嘗試使用Email::Sender::Transport::SMTPS發送電子郵件。我的交通是:信任郵件中的自簽名證書::發件人::傳輸:: SMTPS in perl
my $transport = Email::Sender::Transport::SMTPS->new({
host => $smtpserver,
ssl => 'starttls',
sasl_username => $smtpuser,
sasl_password => $smtppassword,
debug => 1,
});
當試圖發送電子郵件,調試說:
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 250-SIZE 52428800
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 250-8BITMIME
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 250-PIPELINING
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 250-STARTTLS
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 250 HELP
Net::SMTPS=GLOB(0x7f893b2b00f0)>>> STARTTLS
Net::SMTPS=GLOB(0x7f893b2b00f0)<<< 220 TLS go ahead
DEBUG: .../IO/Socket/SSL.pm:735: local error: SSL connect attempt failed error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed
DEBUG: .../IO/Socket/SSL.pm:738: fatal SSL error: SSL connect attempt failed error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed
unable to establish SMTP connection
可能是因爲使用self-signed
證書的服務器。 (在Thunderbird中使用相同的設置時,需要添加「信任此證書」設置。)
問題是:如何爲Email::Sender::Transport::SMTPS
添加「信任此證書」 - 從而允許發送電子郵件。
'set_args_filter_hack'方法'正常工作'。:)易於實現並且只允許特定的指紋。謝謝。 – jm666