2013-04-27 36 views
6

Tôi đang sử dụng giao thức https địa phương và chứng chỉ giả mạo.cách sửa lỗi openid https

Khi sử dụng django-openid-auth, nó mang lại cho tôi lỗi này:

OpenID failed 

OpenID discovery error: Error fetching XRDS document: (60, 'server certificate   verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none') 

Làm thế nào tôi có thể sửa lỗi này?

+0

tôi thêm giấy chứng nhận giả của tôi trong tập tin /etc/ssl/certs/ca-certificates.crt và lỗi thay đổi để 'OpenID thất bại OpenID lỗi phát hiện: Lỗi lấy XRDS tài liệu: (77, 'Vấn đề với SSL CA cert (đường dẫn? Quyền truy cập?) ') ' – sdnaghdi

+2

Lỗi này là lỗi của thư viện CURL http://curl.haxx.se/libcurl/c/libcurl-errors.html#CURLESSLCACERT. Tài liệu CURL nói rằng máy chủ bạn đang kết nối có chứng chỉ không thể được xác thực. Khi nào lỗi xảy ra, trên URL nào? – ziima

Trả lời

0

Theo kinh nghiệm của tôi, trong hầu hết các trường hợp, người xác thực là cầu thủ về chứng chỉ tự ký.

Nói chung, khi sử dụng chứng chỉ "giả", bạn nên luôn thực hiện bước bổ sung và tạo một CA giả và ký chứng nhận giả mạo với CA. Nếu không có gì khác, điều này làm cho thử nghiệm của bạn giống như một kịch bản đời thực.

Dưới đây là hướng dẫn ngắn gọn về cách làm điều này với OpenSSL:

  1. Tạo một CA (tự ký)
  2. Tạo một khóa máy chủ và csr openssl req -out server.csr -pubkey -new -keyout server.secure.key
  3. Tháo cụm từ mật khẩu openssl rsa -in server.secure.key -out server.key
  4. Ký chứng chỉ máy chủ với CA openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 1825
  5. (Đối với các chứng chỉ khác, hãy sử dụng số sê-ri hiện có openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAserial ca.srl -out server.crt -days 1825)

Bất cứ khi nào bạn có vấn đề với bất kỳ SSL (không chỉ HTTPS) - sử dụng nguyên openssl để gỡ lỗi bằng cách làm

openssl s_verify -connect <hostname>:<portnumber> <options> 

ví dụ

openssl s_verify -connect localhost:443 -CAfile myfakeca.pem 

Điều này thường giúp bạn giải quyết nhiều vấn đề với chứng chỉ thực sự của bạn thực sự không liên quan gì đến mã của bạn.

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