Я решил эту проблему с помощью предоставленного файла с сертификатом и ключом для функции stream_context_set_option. Это решило ssl_protocol_error.
$context = stream_context_create();
stream_context_set_option($context, 'ssl', 'local_cert', '/tmp/combined_cert.pem');
stream_context_set_option($context, 'ssl', 'passphrase', '');
stream_context_set_option($context, 'ssl', 'allow_self_signed', true);
stream_context_set_option($context, 'ssl', 'verify_peer', false);