1

我有一个网站,我需要从中下载文件。该网站需要我拥有的数字证书。我有一个站点提供的 p12 文件,它很容易导入到允许访问该站点的 Windows 中。我想要做的是从网站下载一堆 csv 文件并解析它们。

我找到了 Net::SSLeay 和 Crypt::SSLeay 包。我还看到 LWP::Useragent 提到了 SSL,但我不确定这是否足以满足我的要求。

所以基本上我需要知道从哪里开始以及哪些软件包最容易用于此目的。
我正在使用草莓 perl 5.16.2 运行 Windows 7

4

3 回答 3

4

借助该命令将PKCS #12 证书转换为 PEM 格式。openssl pkcs12安装LWP::Protocol::https。将SSL_ca_file参数设置为指向 PEM 文件。

于 2013-02-28T17:08:54.803 回答
2

如果您将 P12 转换为 PEM 格式,您可以使用:

use Mojo::UserAgent;
my $url = 'https://some.site.com/path/to/file.zip';
my $ua = Mojo::UserAgent->new( max_redirects=>5, 
                               cert=>'client_cert.crt.pem', 
                               key=>'client_cert.key.pem' );
$ua->get($url)->res->content->asset->move_to('downloaded_file.zip');

如果您使用的是草莓 perl,您需要首先安装 Mojo::UserAgent 模块,如下所示:

c:\> cpan -i Mojo::UserAgent
于 2013-02-28T20:04:46.163 回答
1

从这篇文章看来,openssl 自 2006 年以来就支持 64 位 linux:

http://www.mail-archive.com/openssl-users@openssl.org/msg47285.html

可以在 64 位 Windows 上安装它你如何为 x64 编译 OpenSSL?

所以绝对可以在linux上安装它。请告诉我们您遇到的错误。

问候,

于 2013-02-28T16:50:56.667 回答