У меня возникла самая серьезная проблема при попытке выполнить вызов REST из скрипта cron.
Мой скрипт отлично работает как пользователь root в терминале, но когда я настраиваю его из корневого CRON, я получаю следующую ошибку:
$VAR1 = 'Can\'t connect to 172.16.250.159:443 (certificate verify failed)
LWP::Protocol::https::Socket: SSL connect attempt failed with unknown error error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed at /opt/algosec/perl5/lib/perl5/LWP/Protocol/http.pm line 51.
';
Мой хрон выглядит так:
*/5 * * * * /usr/share/fireflow/local/etc/site/lib/pending_ritm_kickoff_script.pl
Мой Perl-скрипт запускает следующее:
my $client = REST::Client->new({
hostname => ''
});
my $response = '';
$client->addHeader('Content-Type', 'application/json');
my %rec_hash = (
'username' => $username,
'password' => $password,
);
my $json_body = encode_json(\%rec_hash);
$client->POST("$endpoint/APP1/api/authentication/authenticate", "$json_body");
open(my $fh, '>', '/tmp/cron_report_1.txt');
print $fh Dumper($client->responseContent());
close $fh;
$response = decode_json($client->responseContent());
client-> responseContent возвращает ошибку ssl.
Но скрипт отлично работает с терминала! Любая помощь очень ценится.