5.3: ошибка при работе через urfaclient_php с OpenSSL 1.1.0f

Технические вопросы по UTM 5.0
Ответить
Георгий
Сообщения: 1
Зарегистрирован: Ср фев 28, 2018 21:41

5.3: ошибка при работе через urfaclient_php с OpenSSL 1.1.0f

Сообщение Георгий »

При попытке подключения к URFA при помощи модифицированной версии библиотеки http://wiki.flintnet.ru/doku.php/urfaclient_php при запуске на PHP 7.1 с OpenSSL 1.1.0f 25 May 2017 возникает ошибка:

Код: Выделить всё

Warning&#58; stream_socket_enable_crypto&#40;&#41;&#58; Unable to set local cert chain file `<...>/admin.crt'; Check that your cafile/capath settings include details of your certificate and its issuer in <...>/URFAClient_Connection.php on line 99
В районе строки 99 находится это:

Код: Выделить всё

    public function ssl_connect&#40;$ssl&#41;
    &#123;
        $method = STREAM_CRYPTO_METHOD_SSLv3_CLIENT;
        if &#40;$this->sslType == RSR_SSL_TLS1&#41; &#123;
            $method = STREAM_CRYPTO_METHOD_TLS_CLIENT; // $method равен вот этому
        &#125;
        stream_socket_enable_crypto&#40;$this->socket, $ssl, $method&#41;; // 99 строка
    &#125;
При использовании оригинальной версии библиотеки urfaclient_php на php7.1 с OpenSSL 1.1.0f 25 May 2017 ошибка сохраняется.

При использовании обеих версий библиотеки на PHP 7.1 с OpenSSL 1.0.1 3 May 2016 и на PHP 5.5.3 с OpenSSL 1.0.1t 3 May 2016 в полностью аналогичной конфигурации ошибки нет.


debug.log:

Код: Выделить всё

Feb 28 21&#58;44&#58;23  ERROR &#58; 32be7700 RPCConn&#91;SSL&#93;<init@...>&#58; SSL connection failed &#40;4&#41;, system errno <0>
Feb 28 21&#58;44&#58;23 ?Debug &#58; 32be7700 RPCConn&#91;SSL&#93;<init@...>&#58; new SSL connection accepted uses &#40;NONE&#41; cipher
Feb 28 21&#58;44&#58;23 ?Debug &#58; 32be7700 RPC2Connection&#58; Session Key <86f8965a00000000243d785ca6963578> stored for UID -1 from <...>
Feb 28 21&#58;44&#58;23 ?Debug &#58; 32be7700 RPCConn&#91;SSL&#93;<init@...>&#58; SSL cleared
Feb 28 21&#58;44&#58;23 ?Debug &#58; 32be7700 ConnectionManager&#58; connection &#91;1717&#93; has been closed
Feb 28 21&#58;44&#58;23 ?Debug &#58; 32be7700 RPCConn&#91;SSL&#93;<init@...>&#58; Session closed...
main.log:

Код: Выделить всё

Feb 28 21&#58;44&#58;34  ERROR &#58; 32be7700 RPCConn&#91;SSL&#93;<init@...>&#58; SSL connection failed &#40;4&#41;, system errno <0>
Версия UTM5:

Код: Выделить всё

# /netup/utm5/bin/utm5_core -version
NetUP UTM billing system core. Compile date&#58; Apr  1 2016 12&#58;29&#58;59
Version&#58;5.3-003-update15-debian_wheezy_x64 Rev #15609
Эта версия PHP 7.1 с этой версией OpenSSL сейчас поставляется как минимум в последних Дебианах и Убунту. Предполагаю, что RPM-дистрибутивы тоже либо уже перешли на OpenSSL 1.1.0, либо перейдут в ближайшее время. То есть обновление серверов, где происходит интеграция с инстансами UTM5 через URFA, приведёт к неработоспособности ПО интеграции.

Вопрос: где косяк, как поуметь?

Ответить