码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ICE安全插件配置实操


    项目场景:

    配置ICE安全插件,部署所用到的工具主要有icegridnode、icegridregistry、icegridadmin等


    问题描述一

    plug-in initiallization failed: IceSSL:unable to validate private key(s):unknow key type

    在这里插入图片描述


    原因分析:

    在所有节点中,只有该节点出现了这个问题,其他节点都可以正常加载安全插件,并完成证书验证,所以这个问题并不一定会出现。
    正常来说应该不是配置参数的问题,有可能是证书的问题。但是重新构建证书链后依然存在问题。此时切记切记,不要在怀疑是ICE的问题(ICE的bug大概率不会被你碰到),也不要怀疑证书链的问题(因为你已经尝试了很多次),考虑版本的问题,使用ldd命令查看出问题的链接库,ldd能够显示可执行模块的依赖。
    在这里插入图片描述
    下面是不正常情况下的,发现依赖中有两个libcrypto.so,但是他们分属于不同的版本1.0.0和1.0.1。重新编译验证后发现就是他的问题。


    解决方案:

    重新编译ICE,配置正确的链接库。

    问题描述二

    icegridnode:security:certificate verfication failure
    Network:IceSSL:certificate verfication failed:certificate is not yet valid

    在这里插入图片描述


    原因分析:

    由于ICE中使用了OpenSSL,证书中有一个有效时间段,当客户端或服务器的系统时间不在这个时间段内时SSL会因证书验证失败而无法连接。在此处的错误提示中,可以知道尚未进入客户端和服务器的握手阶段,本机在加载证书的时候就检测到了证书异常。原因是,证书创建的时间要晚于当前系统时间。
    系统时间错误是很常见的,因不能上网而未开时间自动同步,bios没电了,客户疏忽等原因都会导致系统时间设置有误。如果连接失败后需要重新设置系统时间,设置时间就需要在root权限下使用‘date -s’命令


    解决方案:

    date -s 2022/10/1 && date -s 10:10:10修改系统时间

    问题描述三

    error while parsing endpoint 'invalid endpoint 'ssl -h 192.168.0.187' in 'DemoIceGrid/Locator:ssl -h 192.168.0.187 -p 4062' '

    在这里插入图片描述


    原因分析:

    每一个问题都是经历了很多次的验证失败后才解决的。本例中的问题,是无法解析的节点,该节点就是" ssl -h 192.168.0.187’ in ‘DemoIceGrid/Locator:ssl -h 192.168.0.187 -p 4062’ "。在默认情况下不使用ssl协议,系统可以正常运行,但是改为ssl就失败了,分析认为是程序不能解析ssl协议,换一种说法是ICE程序未能成功加载安全插件。反观自己的配置,似乎配置齐全了。

    #
    # SSL Configuration
    #
    Ice.Plugin.IceSSL=IceSSL:createIceSSL
    IceSSL.DefaultDir=certs
    IceSSL.CAs=ca.pem
    IceSSL.CertFile=node.p12
    IceSSL.Password=password
    IceSSL.Keychain=../../../certs/node.keychain
    IceSSL.KeychainPassword=password
    IceSSL.TrustOnly.Client=CN="Server";CN="Master";CN="Slave"
    IceSSL.TrustOnly.Server=CN="Master";CN="Slave"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    但有一点是我没考虑到的,工具icegridadmin部署服务所加载的配置文件*.xml文件中也需要配置icessl,此处没有找到具体的解释,例如下面的案例:

    
      
    
        
          
          
          
          
          
          
          
    
          
          
          
          
        
    
        
          
            
              
            
    
            
               
               
               
               
               
            
          
        
    
      
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    解决方案:

    添加以下配置

    
      
    
        
          
          
          
          
          
          
          
    
          
          
          
          
        
      
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
  • 相关阅读:
    同一个IP地址可有不同的写法?
    flask请求生命周期
    javascript算法之从会用到理解 - 数组反转
    附加:对于“与数据表对应的实体类“,【面对MongoDB时,使用的@Id等注解】和【以前面对MySQL时,使用的@Id等注解】,是不同的;
    经验分享|甘肃某中型灌区信息化管理平台案例
    软件设计师考试学习1
    C++格式化输出
    【定义】矩阵初等变换和矩阵等价
    1392. 最长快乐前缀
    设计模式——访问者模式(Visitor Pattern)+ Spring相关源码
  • 原文地址:https://blog.csdn.net/Tom942067059/article/details/127647455
    • 最新文章
    • 攻防演习之三天拿下官网站群
      数据安全治理学习——前期安全规划和安全管理体系建设
      企业安全 | 企业内一次钓鱼演练准备过程
      内网渗透测试 | Kerberos协议及其部分攻击手法
      0day的产生 | 不懂代码的"代码审计"
      安装scrcpy-client模块av模块异常,环境问题解决方案
      leetcode hot100【LeetCode 279. 完全平方数】java实现
      OpenWrt下安装Mosquitto
      AnatoMask论文汇总
      【AI日记】24.11.01 LangChain、openai api和github copilot
    • 热门文章
    • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
      奉劝各位学弟学妹们,该打造你的技术影响力了!
      五年了,我在 CSDN 的两个一百万。
      Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
      面试官都震惊,你这网络基础可以啊!
      你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
      心情不好的时候,用 Python 画棵樱花树送给自己吧
      通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
      13 万字 C 语言从入门到精通保姆级教程2021 年版
      10行代码集2000张美女图,Python爬虫120例,再上征途
    Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
    正则表达式工具 cron表达式工具 密码生成工具

    京公网安备 11010502049817号