Perl Net :: IMAP :: Клиент не может подключиться к imap-серверу при распи - PullRequest
0 голосов
/ 20 июня 2019

Скрипт для подключения учетной записи электронной почты с использованием Net :: IMAP :: Client работает в Windows, но не подключается в raspi.

Я разработал скрипт для Windows, и он отлично работает. Когда я пытаюсь запустить его на моем raspi (raspbian stretch light 04/2019), он не может подключиться к серверу (imap.gmx.de). Я установил openssl и libssl-dev. libssl-dev был необходим для запуска модуля Net :: SSLeay, который необходим для Net :: IMAP :: Client.

Я могу подключиться из raspi к этому серверу imap с помощью команды оболочки openssl. Я могу подключаться, входить в систему, просматривать папки ... Так что я думаю, что реализация openssl и настройка сети в порядке. Но это не работает со сценарием.

#!/usr/bin/perl
use Net::IMAP::Client;

print "user: ";
my $user=<STDIN>;
chomp ($user);
print "password: ";
my $password=<STDIN>;
chomp($password);

my $imap = Net::IMAP::Client->new(

    server => 'imap.gmx.de',
    user   => $user,
    pass   => $password,
    ssl    => 1,                              # (use SSL? default no)
#    ssl_verify_peer => 1,                     # (use ca to verify server, default yes)
#   ssl_ca_file => '/etc/ssl/certs/certa.pm', # (CA file used for verify server) or
#   ssl_ca_path => '/etc/ssl/certs/',         # (CA path used for SSL)
    port   => 993                             # (but defaults are sane)

) or die "Could not connect to IMAP server";

$imap->login or
  die('Login failed: ' . $imap->last_error);

На распи я всегда получаю сообщение

Could not connect to IMAP server at client.pl line 11, <STDIN> line 2.

С die "Could not connect to IMAP server: $@"; сообщение об ошибке

Could not connect to IMAP server: Can't call method "opened" on an undefined value at /usr/local/share/perl/5.24.1/Net/IMAP/Client.pm line 53, <STDIN> line 2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...