LoginSignup
0
0

More than 5 years have passed since last update.

Net::Amazon::S3 で secure オプションを有効にすると起きるエラーについて

Posted at

perl で AWS S3 へアクセスするときに Net::Amazon::S3 というモジュールを使いました。
インターフェースもわかりやすいです。

my $s3 = Net::Amazon::S3->new(...); する際に secure => 1 という SSL 通信を使うためのオプションをセットすると通信時にエラーが起きてしまい悩んでいたのですが、解決したのでそのメモです。

エラーと原因

Net::Amazon::S3 が内部で使っている LWP::UserAgent モジュール。
これが SSL 通信するときにデフォルトで使っている CA ファイルは Mozilla::CA::SSL_ca_file() というものらしいのですが、Mozilla::CA モジュールが新しすぎると

SSL3_GET_SERVER_CERTIFICATE:certificate verify failed LWP/Protocol/http.pm

のようなエラーになります。

解決方法

Mozilla::CA モジュールの'20141217'バージョン(現在の最新版)を使っていると上のようなエラーが起きるので、'20130114'バージョンまたはそれ以前のものを使うようにします。

2014年のバージョンからは 1024 bit な証明書ファイルがだいぶ削除されてしまったというのがことの原因のようです。

詳しくは参考サイトをどうぞ。

参考サイト

PerlMonks: SSL Certificate Verification problem, using LWP::UserAgent by ManyHats

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0