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连接是一个很好的解决方案.如果在页面的边栏或者底部放上些表明本站使用安全连接的图片,显得更专业,让客户有安全感,对于 ...
随机推荐
- Performance Tuning
本文译自Wikipedia的Performance tuning词条,原词条中的不少链接和扩展内容非常值得一读,翻译过程中暴露了个人工程学思想和英语水平的不足,翻译后的内容也失去很多准确性和丰富性,需 ...
- Collections
2017-01-06 22:50:43 数据结构和算法 <如何学习数据结构?>:https://www.zhihu.com/question/21318658 <How do I ...
- 一键部署mono 免费空间支持ASP.NET MVC 再也不担心伙食费换空间了
一直以来 部署mono 都是很头疼的事情 因为是我在是不熟悉非win环境,今天偶然发现这个项目,挺好的,分享下 https://github.com/wshearn/openshift-communi ...
- AOP之Castle DynamicProxy 动态代理
这里主要介绍使用castle这个动态代理,在.net一些开源的框架里可以找到它的影子,就连微软的rchard也是使用这个进行方法拦截等可以基于这个进行方法拦截,在这个方面PostSharp算是比较好用 ...
- Axure原型制作规范
一. 名词定义: Sitemap 导航图 Widgets 组件 Master 库 Label 控件名 Interactions 交互动作 Annotations 注释 Location and siz ...
- HTML基础
HTML指的是超文本标记语言 (Hyper Text Markup Language), HTML不是一种编程语言,而是一种标记语言 (markup language) ,HTML使用标记标签来描述网 ...
- angular + easyui 做界面验证
angular结合easyui这事其实并不是很合适,因为:angular的特点之一是双向绑定,页面元素与页面逻辑之间解耦:easyui是对页面元素进行封装,甚至一些组件是隐藏了原本的dom元素,初始化 ...
- PHP实现全排列(递归算法)
算法描述:如果用P表示n个元素的全排列,而Pi表示n个元素中不包含元素i的全排列,(i)Pi表示在排列Pi前面加上前缀i的排列,那么n个元素的全排列可递归定义为: ① 如果n=1,则排列P只有一 ...
- ASP.NET Core 中文文档 第四章 MVC(3.6.2 )自定义标签辅助类(Tag Helpers)
原文:Authoring Tag Helpers 作者:Rick Anderson 翻译:张海龙(jiechen) 校对:许登洋(Seay) 示例代码查看与下载 从 Tag Helper 讲起 本篇教 ...
- LinqToDB 源码分析——设计原理
我们知道实现了IQueryable<T>接口和IQueryProvider接口就可以使用Linq To SQL的功能.关于如何去实现的话,上一章也为我们引导了一个方向.LinqToDB框架 ...