2015-02-05 86 views
2

我有一個php腳本,點擊一個https url來抓取數據。我之前在Centos 5上,這個腳本沒有顯示任何問題。然而,切換至CentOS 6後的腳本停止工作,我不斷收到錯誤Unknown cipher in list: TLSv1.Centos 6 libCurl TLSv1錯誤

在PHP腳本我逼的TLSv1:

curl_setopt($ch, CURLOPT_SSLVERSION, 1); 
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'TLSv1'); 

我不知道是什麼導致這種情況發生。當前版本的捲曲是

curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.16.2.3 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2 
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp 
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL lib 

OpenSSL的版本:

OpenSSL 1.0.1e-fips 11 Feb 2013 

回答

3

在CentOS 5捲曲建對OpenSSL的。

關於CentOS 6 curl是針對NSS構建的。

它們不支持相同的密碼列表字符串。話雖如此,我不能在短時間內嘗試使用curl + NSS來獲取任何密碼字符串。

此外,不要指望能夠使用自定義證書存儲區的根證書/等。用curl + NSS ......你不能。

+0

好吧,這樣纔有意義,因爲我在四處搜尋,看到有捲曲openssl包。你會建議用openssl替換NSS curl嗎?我確實嘗試安裝它,但看起來像他們並排坐在一起,我似乎無法取代另一個。 – foureight84 2015-02-05 22:26:12

+0

@ foureight84你從哪裏找到這個'curl-openssl'包?我不知道你可以替換yum/pycurl正在使用的那個。 – 2015-02-05 22:45:44

+0

http://software.opensuse.org/download.html?project=security%3Ashibboleth&package=curl-openssl還有一個libcurl-openssl – foureight84 2015-02-05 22:58:58