Web拍手:
「Matsup's blog: FreeBSD, Perl の Net::SMTP::TLS ではまる」
http://matsup.blogspot.jp/2012/12/freebsd-perl-netsmtptls.html
「Net::SMTPSを使って SMTP-AUTH - Using Perl」
http://nozawashinichi.sakura.ne.jp/usingmt/2014/04/net-smtps-smtp-auth-sakura.html
「Bug #81710 for Email-Send-SMTP-Gmail: verify errors with Email-Send-SMTP-Gmail-0.32」
https://rt.cpan.org/Public/Bug/Display.html?id=81710#txn-1173876
******************************************************************
Using the default of SSL_verify_mode of SSL_VERIFY_NONE for client
is deprecated! Please set SSL_verify_mode to SSL_VERIFY_PEER
together with SSL_ca_file|SSL_ca_path for verification.
If you really don't want to verify the certificate and keep the
connection open to Man-In-The-Middle attacks please set
SSL_verify_mode explicitly to SSL_VERIFY_NONE in your application.
*******************************************************************
at /usr/local/share/perl5/Net/SMTP/TLS.pm line 181.
invalid SSL_version specified at /usr/share/perl5/vendor_perl/IO/Socket/SSL.pm line 415.
古い Perl スクリプトの Net::SMTP::TLS でのメール送信が動かなくなったときの対処方法,2とおり.
1.
ちょー雑にその場をしのぐ対処方法
Net::SMTP::TLS の代わりに Net::SMTP::TLS::ButMaintained を使う.
単に "Net::SMTP::TLS"という文字列を "Net::SMTP::TLS::ButMaintained"という文字列に書き換えるだけでしのげる.
(ライブラリ .pm を置き換えるのではなくて,それを使うコード,たとえば,"use Net::SMTP::TLS;" などを "use Net::SMTP::TLS::ButMaintained;" に書き換える.)
エラーどころか警告も出ない.
Net::SMTP::TLS::ButMaintained は,CPAN でインストールする.yum では入らない.なぜなら,「もはや古い」から.
「DEPRECATED!, Please use Net::SMTPS instead.」と作者本人が書いている.つまり,これを代わりに使うのは「その場しのぎ」をするときだけに限る.
http://search.cpan.org/~fayland/Net-SMTP-TLS-ButMaintained-0.24/lib/Net/SMTP/TLS/ButMaintained.pm
2.
ナウい方法でヤングも納得! の対処方法
Net::SMTP::TLS の代わりに Net::SMTPS を使い,さらに,SSL_verify_mode を明示的に指定する.
my $smtp = Net::SMTP::TLS->new(
$mail_host,
Port => $mail_port,
User => $mail_username,
Password => $mail_password,
);
↑こんな感じのコードは,↓こんな感じのコードに書き換える.
my $ssl = 'starttls'; # 'ssl' / 'starttls' / undef
my $smtp = Net::SMTPS->new(
$mail_host,
Port => $mail_port,
doSSL => $ssl,
SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE,
);
my $auth_method = 'LOGIN';
$smtp->auth($mail_username, $mail_password, $auth_method);
あとは,Net::SMTP::TLS のときとまったく同じコードのまま,
mail(), to(), data(), datasend(), dataend(), quit する.
いま,自宅サーバーを Scientific Linux 6 から 7 に移行していて,いろいろと勉強中... .
【コンピュータの最新記事】
- このブログ「とり茶」を,Seesaaブログから自宅サーバーの WordPress..
- メロディを入力することで楽譜を検索できるシステム,「musiconn.score..
- いつのまにか,MuseScore のモバイルアプリが Freemiumモデルに移..
- 「blogramサービス終了のお知らせ」 どこが運営しているブログシステムかを問..
- noike.info サイトの内容を WordPress で管理することにしまし..
- A 様から,「SMF to MP3 with ぼーか郎」に Amazon ギフト..
- noike.info ドメインの有効期限を 1年延長した.去年と変わらず 160..
- MuseScore の 2.3.2 がリリースされたそうです.
- 「MusicXML to MP3 with ぼーか郎」で,拡張子が .music..
- MuseScore の 2.3.1 がリリースされました.同梱されている言語ファ..
- Windows 用の MuseScore 2.3 で,ストレージ(ディスク)に十..
- MuseScore の 2.3 が公式にリリースされました.個人的には,新機能の..
- MEI, MusicXML, PAE(RISM) のデータを WordPress..
- 池添 彰 様から,noike.info のサービスに Amazon ギフト券での..
- 先日の Windows Update 適用後から Emacs(NTEmacs) ..
- 「東芝コミュニケーションAI「RECAIUS」(リカイアス)の音声合成技術」「音..
- TVアニメ版の「紅殻のパンドラ」を観終えた.全 12 話.「攻殻機動隊」の世界観..
- Android タブレットを PC のマルチディスプレイのひとつにすることを思い..
- MuseScore が 2.2.1 にアップデートされました.2.2 のリリース..
- MuseScore の 2.2 がリリースされました.いままでと同様に無料で使え..