0
我試圖從我的Red Hat(Jenkins)服務器上使用CuRL在另一臺服務器(IBM Security Access Manager)上調用REST API。Red Hat上的CuRL SSL握手問題
問題是,從我的Windows機器上,我能夠使用CuRL併成功調用REST API,但不是從我的服務器(Jenkins和普通命令行)調用。 似乎握手沒有完成...
兩個在正確的端口之間有一個連接。我用telnet命令(遠程登錄my.full.ip.adress 443)測試了,甚至捲曲似乎在詳細的輸出看時連接:
15:05:31.930998 * About to connect() to my.full.ip.adress port 443
15:05:31.931062 * Trying my.full.ip.adress... connected
15:05:31.931651 * Connected to my.full.ip.adress (my.full.ip.adress) port 443
15:05:31.937510 * successfully set certificate verify locations:
15:05:31.937531 * CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
15:05:31.937629 * SSLv2, Client hello (1):
SSL connection timeout
15:06:31.987734 * Closing connection #0
現在正在運行的命令IM是:
-bash-3.2$ curl -k -v -H 'Content-type:application/json' -H 'Accept:application/json' --user xxx:xxx -X POST -d '{"my_key":"my_value","another_key":"another_value"}' https://my.full.ip.adress/wga/reverseproxy/
(到現在還包括「--trace時間--show誤差--connect超時60」用於測試目的)
因此看起來握手過程出錯的地方。
我做過嘗試了以下:
-
正確的端口上 在兩個服務器之間
- 確認連接(SSL/443)
- 使用-1,-2,-3參數以迫使其它SSL版本
- 通過從我的Windows機器運行它來驗證命令。
如果你想知道:
-bash-3.2$ curl -V
curl 7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
Protocols: tftp ftp telnet dict ldap http file https ftps
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
怎麼可能握手不成功?