PHP AMQPLib version 2.12.1
RabbitMQ 3.8.9
Erlang 23.1.4
RabbitMQ server config:
[
{ssl, [{versions, ['tlsv1','tlsv1.2']}]},
{rabbit, [
{log_levels, [{connection, error}]},
{ssl_listeners, [5671]},
{ssl_options, [{cacertfile,"/etc/rabbitmq/ssl/ssl4/result/ca_certificate.pem"},
{certfile,"/etc/rabbitmq/ssl/ssl4/result/server_certificate.pem"},
{keyfile,"/etc/rabbitmq/ssl/ssl4/result/server_key.pem"},
{versions, ['tlsv1','tlsv1.2']},
{verify, verify_peer},
{fail_if_no_peer_cert, false}]}
]}
].
When I try connect via openssl everything is ok, but when I'm connecting via PHP AMQP I'm getting an error:
PHP Fatal error: Uncaught PhpAmqpLib\Exception\AMQPIOException:
stream_socket_client(): unable to connect to ssl://fend01-TEST:5671
(Unknown error) in
/var/www/html/rabbitmq/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Wire/IO/StreamIO.php:110
ssl_opts are:
'capath' => '/etc/rabbitmq/ssl/ssl4/result/',
'cafile' => '/etc/rabbitmq/ssl/ssl4/result/ca_certificate.pem',
'local_cert' => '/etc/rabbitmq/ssl/ssl4/result/client_certificate.pem',
'local_pk' => '/etc/rabbitmq/ssl/ssl4/result/client_key.pem',
'ssl_version' => 'tlsv1',
'verify_peer' => true,
'verify_peer_name' => false
$connection = new AMQPSSLConnection('fend01-TEST',5671,'login',password,'vhost', $ssl_opts);