我是 SSL/TLS 主题的新手,但我需要测试部署在 WebLogic 12c(客户端计算机,可以这么说)上的应用程序与部署在 WebLogic 12c(服务器计算机)上的 SOAP 服务通信的场景。我需要确保特定的密码套件用于此通信。在这方面,我有两个问题:
有没有办法在服务器计算机的系统属性中设置特定的密码套件(通过在其中一个启动脚本中设置 EXTRA_JAVA_PROPERTIES)以使其选择此密码套件与客户端计算机通信?如果这不是它可以完成的方式,它是否可以完成以及如何完成?
我可以在握手期间客户端机器发送的 ClientHello 消息中看到很多密码套件,但是当我对这台机器执行 nmap 时 (nmap -sV --script ssl-enum-ciphers -p port_number machine_name),仅报告来自 ClientHello 消息的密码套件的子集。为什么?这里的真理来源是什么? ClientHello 消息还是上述 nmap 命令的结果?
最佳答案
好的,我自己找到了答案。为了强制服务器(上述场景中的 WebLogic12c)选择非常具体的密码套件用于与客户端的握手,您需要修改 $DOMAIN_HOME/config/config.xml 文件。搜索 ssl 元素并针对部署服务的服务器(管理服务器或托管服务器)对其进行修改。之后重新启动 WLS。
<server>
<name>AdminServer</name>
<ssl>
<name>AdminServer</name>
<enabled>true</enabled>
<ciphersuite>SSL_RSA_WITH_RC4_128_SHA</ciphersuite>
<listen-port>7002</listen-port>
...
</ssl>
关于ssl - 如何在 weblogic 12c 中控制密码套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43101729/