2016-01-21 49 views
2

我已經通過Laravel爲我們的網站完成了一個omnipay-paypal實現。最近我無法使用我的任何沙箱帳戶進行測試。我一直在收到SSL連接錯誤。 NSS錯誤-12286。有人遇到這個問題嗎?我檢查了PayPal支持,並且他們在2016年1月19日解決了SSL問題。沙盒api捲曲(5)SSL連接錯誤

下面是對api.sandbox.paypal.com的cli curl調用以及相應的錯誤。 有沒有人面臨同樣的問題?

curl -v https://api.sandbox.paypal.com/v1/oauth2/token \ 
> -H "Accept: application/json" \ 
> -H "Accept-Language: en_US" \ 
> -u "xxx:xxxx" \ 
> -d "grant_type=client_credentials" 
* About to connect() to api.sandbox.paypal.com port 443 (#0) 
* Trying 173.0.82.78... connected 
* Connected to api.sandbox.paypal.com (173.0.82.78) port 443 (#0) 
* Initializing NSS with certpath: sql:/etc/pki/nssdb 
* CAfile: /etc/pki/tls/certs/ca-bundle.crt 
    CApath: none 
* NSS error -12286 
* Closing connection #0 
* SSL connect error 
curl: (35) SSL connect error 

回答

8

貝寶更新了其沙箱環境,只允許TLS 1.2連接,以提高安全性併爲將來的PCI合規做好準備。您可以在PayPal 2016 Merchant Security Roadmap Microsite上找到有關更新的更多信息。

如果您使用任何PayPal SDK,則可以查看PayPal TLS Update repository以獲取有關可能需要的SDK或環境升級的信息。請注意,在命令行運行(例如PHP CLI)與您的應用程序託管環境(例如Apache中的PHP模塊)之間可能存在環境差異,因此請確保更新所有相關環境。

+1

謝謝!原來我的本地虛擬機使用的是過時的libcurl。 如果有人正在使用CentOS 6.7版更新到libcurl 7.46版 'rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-1-13。 rhel6.noarch.rpm yum -y update libcurl' – watcher

0

您需要將--tlsv1.2開關添加到某些版本的curl

更高版本(例如7.35.0)將自動並正確地自動協商TLS 1.2。如果提供該開關,某些版本(例如7.19.7)將工作儘管man curl報告說,這是後來補充說:

--tlsv1.2 (SSL) Forces curl to use TLS version 1.2 when negotiating with a remote TLS server. (Added in 7.34.0)