很容易获得HTTPS端口的ssl证书(默认情况下为443)
但是tcp端口上的ssl呢?
活生生的例子:
205.185.198.226:1194
这是运行在端口1194上的vpn (openvpn server)。
IP 205.185.198.226在端口1194上使用ssl/tls处理基于证书的客户端身份验证方法
正如Steffen Ullrich所说:
OpenVPN不是普通的SSL,但它将SSL流打包在自己的协议中,请参见https://openvpn.net/index.php/open-source/documentation/security-overview.html,因此在进入包含证书的TLS流之前,您必须先说出封装协议。
那么,真的有可能在tcp端口上获得openvpn服务器的ssl证书吗?有示例代码吗?(PHP、C或Perl)
发布于 2015-10-11 17:45:25
$url = "tcp://198.203.28.44:2018";
我不知道在这个ip:port上讲的是什么协议,但要么不是SSL,要么是服务器不接受SSL握手中的公共参数。
$ openssl s_client -connect 198.203.28.44:2018 -debug
CONNECTED(00000003)
write to 0x17e1490 [0x17e1a20] (295 bytes => 295 (0x127))
...
read from 0x17e1490 [0x17e6f80] (7 bytes => 0 (0x0))
...SSL routines:SSL23_WRITE:ssl handshake failure:...客户端使用ClientHello (295个字节)启动SSL。服务器只关闭连接,而不是用握手(0字节)进行应答。
由于没有成功的SSL握手,所以无法获得连接的证书,也就是说,服务器不发送任何证书,这也意味着没有发送证书。
https://stackoverflow.com/questions/33067772
复制相似问题