Solace Dot Net核心SSL问题

Solace Dot Net核心SSL问题,solace,Solace,我正在尝试将运行在Windows上的Dot Net Core上的Solace应用程序部署到linux x64 Ubuntu机器上。这是我尝试跑步时得到的结果。无法解决此问题 2018-08-23 19:38:39.374 SolaceConsumer:LogEvent-Sdk solClientDL.c:165(7fcc46ef1700)无法加载库“libcrypto.so”,错误:libcrypto.so:无法打开共享对象文件:没有此类文件或目录 2018-08-23 19:38:39.375

我正在尝试将运行在Windows上的Dot Net Core上的Solace应用程序部署到linux x64 Ubuntu机器上。这是我尝试跑步时得到的结果。无法解决此问题

2018-08-23 19:38:39.374 SolaceConsumer:LogEvent-Sdk solClientDL.c:165(7fcc46ef1700)无法加载库“libcrypto.so”,错误:libcrypto.so:无法打开共享对象文件:没有此类文件或目录


2018-08-23 19:38:39.375 SolaceConsumer:LogEvent-Sdk solClient.c:12349(7fcc46ef1700)连接会话(c0,s1)失败,原因“solClientDL.c:165(7fcc46ef1700)无法加载库“libcrypto.so”,错误:libcrypto.so:无法打开共享对象文件:没有此类文件或目录“

问题是由于缺少
libcrypto.so
libssl.so
库。NET及其底层C API在需要时动态加载SSL库

至少在Ubunutu 18.04上,安装了两个版本的OpenSSL库——1.0和1.1。它们都没有命名为
libcrytpo.so
libssl.so

$ ldconfig -p | grep 'libssl\|libcrypto'
    libssl3.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libssl3.so
    libssl.so.1.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libssl.so.1.1
    libssl.so.1.0.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0
    libcrypto.so.1.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
    libcrypto.so.1.0.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
您需要
libcrypto.so
libssl.so
来指向Solace API的1.0.0版本。这需要:

  • 创建到相应OpenSSL 1.0库的软链接,并将该路径包含在
    LD_LIBRARY_path
    中,或
  • 安装一个可以为您实现这一点的软件包
  • 对于后者,可通过以下方式实现:

    $ sudo apt-get install libssl1.0-dev
    
    请注意,您不能同时拥有1.1-dev和1.0-dev:

    $ apt-cache show libssl1.0-dev
    Package: libssl1.0-dev
    Architecture: amd64
    ...
    Conflicts: libssl-dev
    ...