2010-07-13 56 views
7
$ curl -I https://9.185.173.135 
curl: (35) Unknown SSL protocol error in connection to 9.185.173.135:443 

Đây là trang bảo mật mà tôi cần truy cập. Nhưng tôi không biết cách lấy tập tin chứng chỉ của nó. Tôi đã cố gắng sử dụng Firefox, nhưng nó nói rằng không thể nhận được bất kỳ giấy chứng nhận ssl khi url được nhập vào.lỗi curl 35: lỗi giao thức SSL chưa biết trong kết nối

$ curl -I http://9.185.173.135 
HTTP/1.1 200 OK 
Content-Length: 686 
Content-Type: text/html 
Content-Location: http://9.185.173.135/Default.htm 
Last-Modified: Mon, 16 Mar 2009 05:05:38 GMT 
Accept-Ranges: bytes 
ETag: "a851dbd8f4a5c91:d41" 
Server: Microsoft-IIS/6.0 
X-Powered-By: ASP.NET 
Date: Tue, 13 Jul 2010 04:09:35 GMT 

Máy chủ chắc chắn có thể truy cập được từ máy tính xách tay của tôi. Khi tôi nhận được tệp chứng chỉ, tôi giả sử tôi có thể nhập nó vào Firefox và sau đó sử dụng thông tin đăng nhập của tôi để vượt qua xác thực (Tôi đã có tên người dùng/mật khẩu).

Rất tiếc, tôi không có chuyên gia về bảo mật. Tôi có thể thử gì khác không?

Rất cám ơn trước.

+3

Bạn có thể thiết lập kết nối với máy chủ bằng 'openssl s_client -host 9.185.173.135 -p 443' không? – Rudi

+0

@ Rudi: Cảm ơn gợi ý, vui lòng xem câu trả lời của tôi để cập nhật :) –

+0

open_ssl của tôi muốn tôi kết nối : thay vì host -p - có thể thay đổi trong phiên bản mới hơn. – froderik

Trả lời

2

Để Rudi: Cảm ơn gợi ý, điều đó cho tôi biết rất nhiều thông tin.

Bằng cách nào đó, quản trị viên của trang được bảo mật "làm mới" trạng thái giấy chứng nhận mỗi ngày. Vì vậy, mặc dù tôi đã bị chặn truy cập vào nó ngày hôm qua, nó hào phóng cho phép tôi lấy chứng chỉ khác và thêm nó vào danh sách ngoại lệ của Firefox.

Vì vậy, mọi thứ đều hoạt động và tôi thực sự học được điều gì đó từ trải nghiệm của ngày hôm qua.

5

thử này

curl_setopt($ch, CURLOPT_SSLVERSION, 3); // Force SSLv3 to fix Unknown SSL Protocol error 
+0

Điều này làm việc cho tôi, cảm ơn bạn! – http203

+0

Nhưng điều này sẽ không hoạt động trên SPDY. Ở đó bạn phải sử dụng ['spdycat'] (https://github.com/tatsuhiro-t/spdylay).Tôi không phải là tác giả mà là một dự án nguồn mở. –

+1

FYI: chúng tôi đã có điều này và nó không hoạt động. Từ một câu trả lời khác, chúng tôi đã tìm thấy: 'curl_setopt ($ ch, CURLOPT_SSLVERSION, 4);' đã hoạt động. (Phiên bản 4, không phải 3). –

0

tôi đã có lỗi tương tự sau khi cập nhật chứng chỉ SSL của tôi trên trang web mục tiêu SSL. Hệ điều hành nguồn của tôi là Centos 6 và cập nhật lên phiên bản curl mới đã giải quyết được. * Lưu ý rằng tôi đã sử dụng curl -k (tùy chọn không an toàn) nhưng tôi vẫn nhận được lỗi đó. yum -y install curl

0

Tôi gặp lỗi tương tự khi chạy curl/httpie đối với máy chủ Tomcat trên máy chủ cục bộ được triển khai từ Eclipse. Nó chỉ ra rằng máy chủ mặc định được Eclipse triển khai vô hiệu hoá https. Cụ thể, phần bên dưới được nhận xét trong tệp server.xml.

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" 
      maxThreads="150" SSLEnabled="true" scheme="https" secure="true" 
      clientAuth="false" sslProtocol="TLS" /> 

Sau khi bỏ ghi chú ra và thêm hai thông số keystore, lệnh curl bắt đầu hoạt động (với tùy chọn --insecure nếu chứng chỉ là tự ký).

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" 
      maxThreads="150" SSLEnabled="true" scheme="https" secure="true" 
      clientAuth="false" sslProtocol="TLS" /> 
      keystoreFile="/path/to/your/keystore" 
      keystorePass="yourpass" /> 
0

tôi có một số giải pháp mà khắc phục vấn đề đối với tôi:

1] cố gắng cập nhật curl của bạn/php/apache [yum update]

2] khởi động lại apache

Những làm việc cho tôi!

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