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

导出时需要两个密码,第一个是私钥的密码,由于在申请证书的时候不设置密码,不输入,直接回车,需要输入第二个密码##
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 ##"
ZeroC Ice启用SSL通讯的配置的更多相关文章
- 自行搭建私有云ownCloud,启用SSL,其他配置
ownCloud简介 ownCloud(官网)是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!我花了大约一天的时间总算搭好了 ...
- (4.22)Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例
如何通过使用 Microsoft 管理控制台启用 SSL 加密的 SQL Server 实例 关键词:MSSQL加密,sql server加密,sql server客户端与服务器传输内容加密 转自:h ...
- (十四)RabbitMQ消息队列-启用SSL安全通讯
原文:(十四)RabbitMQ消息队列-启用SSL安全通讯 如果RabbitMQ服务在内网中,只有内网的应用连接,我们认为这些连接都是安全的,但是个别情况我们需要让RabbitMQ对外提供服务.这种情 ...
- ZeroC Ice 暂记
摘自: http://weibo.com/p/1001603869896789339575 原文地址: http://www.oschina.net/question/865233_242146 吴治 ...
- ZeroC Ice Ice Registry实现负载均衡
Registry介绍 对于多个IceBox集群该怎么负载均衡?以服务注册表Registry为依托的Service Locator组件,以及依赖其而诞生的强大的分分布式框架-IceGri ...
- 《ZeroC Ice 权威指南》笔记
Ice介绍 Ice(Internet Communications Engine)是ZeroC公司的杰作,继承了CORBA的血统,是新一代的面向对象的分布式系统中间件.Ice是RPC通 ...
- 用Python开发Zeroc Ice应用
Zeroc Ice简介 Zeroc ICE(Internet Communications Engine ,互联网通信引擎)是目前功能比较强大和完善的RPC框架,支持跨平台.跨语言调用.它非常灵活 ...
- Nginx启用ssl以及免费证书申请
主要是这个东西,折腾了我两天,所以记录下来. 最开始是在meteor下面调用一个webservice,但是发现meteor项目的发布环境时https,所以请求的webservice也必须时webser ...
- magento启用SSL改http成https
Magento是电子商务网站,对于网站的用户信息安全来说,让Magento使用SSL连接是一个很好的解决方案.如果在页面的边栏或者底部放上些表明本站使用安全连接的图片,显得更专业,让客户有安全感,对于 ...
随机推荐
- Linux上运行NET
今天尝试了下Ubuntu上运行NET程序,按照 https://github.com/aspnet/Home 的指引,一步一步来: 1.安装DNVM(原名KVM) Linux控制台下输入 curl - ...
- ENode框架Conference案例分析系列之 - 文章索引
ENode框架Conference案例分析系列之 - 业务简介 ENode框架Conference案例分析系列之 - 上下文划分和领域建模 ENode框架Conference案例分析系列之 - 架构设 ...
- 有意思的记录-python
1.变量 类变量紧接在类名后面定义,相当于java和c++的static变量 实例变量在init里定义,相当于java和c++的普通变量 2.日期 #coding:utf-8 import time ...
- Hibernate 命名查询
1.定义 Hibernate允许在映射配置文件中定义字符串形式的查询语句,这种查询方式被称为命名查询. 2.创建表结构并添加测试数据 create table `student` ( `id` dou ...
- iOS 之UITextFiled/UITextView小结
一:编辑被键盘遮挡的问题 参考自:http://blog.csdn.net/windkisshao/article/details/21398521 1.自定方法 ,用于移动视图 -(void)mov ...
- 苹果手机Safari无痕浏览模式下系统登录成功但是页面不跳转
昨天下午,测试提了一个bug,问题是:在苹果手机Safari无痕浏览模式下系统登录成功但是页面不跳转. 思前想后找了半天没思路,后来经过同事的点拨,说可能是禁用了cookie之类的,反正我也没思路就顺 ...
- WCF学习之旅—第三个示例之三(二十九)
上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) 在上一篇文章中我们创建了实体对象与接口协定,在这一篇文章中我们来学习如何创建WCF的服务端代码.具体步骤见下面. ...
- WCF学习之旅—WCF服务部署到IIS7.5(九)
上接 WCF学习之旅—WCF寄宿前的准备(八) 四.WCF服务部署到IIS7.5 我们把WCF寄宿在IIS之上,在IIS中宿主一个服务的主要优点是在发生客户端请求时宿主进程会被自动启动,并且你可以 ...
- SVM分类与回归
SVM(支撑向量机模型)是二(多)分类问题中经常使用的方法,思想比较简单,但是具体实现与求解细节对工程人员来说比较复杂,如需了解SVM的入门知识和中级进阶可点此下载.本文从应用的角度出发,使用Libs ...
- “前.NET Core时代”如何实现跨平台代码重用 ——程序集重用
除了在源代码层面实现共享("前.NET Core时代"如何实现跨平台代码重用 --源文件重用)之外,我们还可以跨平台共享同一个程序集,这种独立于具体平台的"中性" ...