zoukankan      html  css  js  c++  java
  • ZeroC Ice启用SSL通讯的配置

    Zeroc ICE ( Internet Communications Engine )中间件号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯屏蔽。https://zeroc.com/

    该中间件在跨语言集成时比较方便,如下就是在JAVA C++之间交互时,启用ssl通讯的设置

    1. 证书生成

    ICE提供申请证书的脚步,通过ICE脚本,可生成所需的证书。进入Ice-3.5.1/cpp/src/ca目录。

    1.1. 生成根证书,输入证书相关信息

    python iceca init --no-password –overwrite

    根证书在/root/.iceca/目录下生成,root为当前登陆用户

    1.2. 申请用于ICE服务器的证书:

    python iceca request --no-password server server

    1.3. 申请用于ICE客户端的证书

    python iceca request --no-password client client

    1.4. 证书签名

    python iceca sign --in server_req.pem --out server_cert.pem

    python iceca sign --in client_req.pem --out client_cert.pem

    1.5. 导出证书

    将ICE客户端用到的证书导出为java可用的格式。根证书的证书文件需要从/root/.iceca/ca/db下复制出来.

    python iceca import --java  client_cert.pem client_key.pem  client_cert.jks

    python iceca import --java  ca_cert.pem ca_key.pem  ca_cert.jks

    wps6508.tmp

    导出时需要两个密码,第一个是私钥的密码,由于在申请证书的时候不设置密码,不输入,直接回车,需要输入第二个密码##

    2. 程序配置

    2.1. 将生成的ca_cert.jks、ca_key.pem、client_cert.jks 、server_cert.pem文件复制到/home/certs目录下。

    将编译icessl生成的so文件(libIceSSL.so、libIceSSL.so.3.5.1、libIceSSL.so.35)复制到/usr/lib下,执行 ldconfig命令。

    2.2. ICE服务端ssl设置config.ice文件,添加以下行:

    Ice.Plugin.IceSSL=IceSSL:createIceSSL

    IceSSL.DefaultDir=/home/certs

    IceSSL.CertFile=server_cert.pem

    IceSSL.KeyFile=server_key.pem

    IceSSL.CertAuthFile=ca_cert.pem

    服务端绑定的Endpoint,如下是普通的和ssl同时启用

    default -p 8881 -h localhost:ssl -p 8882

    2.3. ICE客户端启用SSL

    在/home/web下新建配置文件config.ice,保存以下内容:

    Ice.Plugin.IceSSL=IceSSL.PluginFactory

    IceSSL.DefaultDir=/home/certs

    IceSSL.Keystore=ca_cert.jks

    IceSSL.Truststore=client_cert.jks

    IceSSL.TruststorePassword=admin12345

    客户端程序连接的服务信息和配置如下

    "--Ice.Config=/home/web/config.ice"

    "#:ssl -p 8882 -h ##"

  • 相关阅读:
    撩课-Java每天5道面试题第8天
    撩课-Java每天10道面试题第7天
    撩课-Java每天10道面试题第6天
    撩课-Java每天10道面试题第5天
    JavaScript高级程序设计51.pdf
    JavaScript高级程序设计50.pdf
    JavaScript高级程序设计49.pdf
    JavaScript高级程序设计48.pdf
    JavaScript高级程序设计47.pdf
    JavaScript高级程序设计46.pdf
  • 原文地址:https://www.cnblogs.com/2018/p/4711351.html
Copyright © 2011-2022 走看看