2016-01-14 23 views
19

Các trang web đó kết nối các công trình paypal sandbox, cho đến gần đâyPaypal không thể kết nối với máy chủ Sandbox. Trở lỗi 14077410 (SSLv3 cảnh báo thất bại handshake)

nó có thể kết nối sẽ cuộn tròn

nhưng khi gửi yêu cầu vào thời điểm thứ hai

nó cho thấy lỗi của

lỗi: thói quen SSL:: 14.077.410 SSL23_GET_SERVER_HELLO: SSLv3 cảnh báo thất bại bắt tay

Tôi đã thử một số tài liệu tham khảo trực tuyến và thiết lập SSL SHA-256 cert của nó nhưng nó trở lại cùng một lỗi. Đề xuất khác chuyển sang TLS tại kết nối curl nhưng nó có thể không bị can thiệp vì có nhiều dự án tôi đã xử lý.

Có đề xuất nào để kết nối sandbox paypal với SSLv3 không? Cảm ơn bạn đã giúp đỡ.

enter image description here

enter image description here

enter image description here

Trả lời

15

Bạn sẽ phải chuyển đổi theo yêu cầu cURL để sử dụng TLS 1.2 để sử dụng sandbox PayPal. Tôi đang ở trong cùng một chiếc thuyền, và không có cách nào xung quanh nó, thật không may. Họ vừa kích hoạt sự thay đổi trên môi trường sandbox cách đây vài ngày.

https://devblog.paypal.com/upcoming-security-changes-notice/

+0

Vì có nhiều dự án tôi đã tạo bằng cách sử dụng hộp cát paypal, tôi tự hỏi là nó hoạt động sau khi bật tls v1.2, hoặc tôi phải sửa đổi mã thư viện? thế nào tôi có thể thiết lập kết nối tới Tls v1.2 theo mặc định trong máy chủ và sử dụng globallly trong mọi dự án? cảm ơn rất nhiều – user3538235

+4

Hey bạn sẽ có thể chỉ ghi đè lên cấu hình thư viện mặc định. Trong PHP, bạn có thể làm điều này 'curl_setopt ($ curl, CURLOPT_SSLVERSION, 6); // 6 là TLS 1.2' bạn đang sử dụng nền tảng nào? – 0kay

+0

thư viện paypal với omipay cho php https://github.com/thephpleague/omnipay-paypal – user3538235

11

Tôi sẽ thêm một số thông tin thêm về vấn đề này kể từ khi câu trả lời đầu tiên không thực sự bao gồm tất cả các điểm quan trọng.

Paypal đã bắt đầu triển khai một số bản nâng cấp, hộp cát hiện yêu cầu TLS 1.2 cho tất cả các yêu cầu và production systems will also require this from June 2016 onwards.

Để hỗ trợ điều này, bạn sẽ cần phải:

  • Đảm bảo máy chủ của bạn có OpenSSL 1.0.1 hoặc cao hơn (đó là khi hỗ trợ TLS 1.2 được bổ sung).
    openssl version sẽ hiển thị số phiên bản của bạn.

  • Khi bạn đáp ứng tiêu chí, trong mã PHP của bạn, bạn có thể buộc các SSLVERSION để TLS 1.2 với lệnh sau:

    curl_setopt($curl, CURLOPT_SSLVERSION, 6); 
    

Hoặc nếu bạn muốn có một giải pháp ít hacky, có thể để có phiên bản SSL chính xác tự động khởi động trong quá trình bắt tay, nơi máy khách và máy chủ so sánh mật mã có sẵn để tìm một giao thức chung. Dường như bạn đang sử dụng PHP + curl, vì vậy, bạn sẽ cần PHP 5,5.19+ và curl 7.29+ để việc này diễn ra.

+0

có phải đặt thủ công cho cuộc gọi curl – user3538235

0

Tôi gặp sự cố tương tự với lỗi 14077410 và SSL3. Tôi nâng cấp máy chủ PHP của mình từ 5.4 lên 7.0 và lỗi biến mất.

Các vấn đề liên quan