Windows curl: (60) vấn đề về chứng chỉ ssl: chứng chỉ tự ký trong chuỗi chứng chỉ

Đôi khi, khi chúng tôi thực hiện lệnh gọi cuộn tròn tới các dịch vụ của bên thứ ba, chúng tôi gặp lỗi cuộn tròn. [60] Chứng chỉ SSL. không thể lấy chứng chỉ nhà phát hành địa phương

Lỗi này xảy ra do cuộn tròn xác minh và tạo yêu cầu kết nối an toàn bằng chứng chỉ tự ký. Khi không tìm thấy chứng chỉ hợp lệ, nó sẽ báo lỗi

Bạn đang ở đúng nơi nếu bạn đang cố gắng sử dụng git clone trên máy tính và gặp phải một trong các lỗi sau

Sự cố chứng chỉ SSL. chứng chỉ tự ký trong chuỗi chứng chỉ
Sự cố chứng chỉ SSL. không thể lấy chứng chỉ nhà phát hành địa phương

Một cách giải quyết phổ biến là tắt Xác minh SSL bằng cách sử dụng git config --global http.sslVerify false nhưng điều đó tạo ra rủi ro bảo mật lớn. SSL là một điều tốt & chúng ta nên sử dụng nó, ngay cả trong trường hợp công ty của bạn gây khó dễ. Giải pháp là thêm chứng chỉ vào chứng chỉ đáng tin cậy của Git

Tôi tình cờ gặp một công cụ doanh nghiệp phổ biến tên là Palo Alto, một công cụ trung gian đối với lưu lượng truy cập web không đáng tin cậy. Mặc dù Palo Alto rất tuyệt vời để bảo mật mạng của công ty bạn, nhưng nó có thể khiến việc sử dụng các kho lưu trữ mã bảo mật như GitHub trở nên khó khăn hơn nếu nó chặn lưu lượng truy cập. Hãy xem một ví dụ sử dụng GitHub

Sử dụng Google Chrome, tôi thấy rằng GitHub có SSL trên đó. Tôi có thể xem thêm thông tin bằng cách nhấp vào tab Bảo mật trên thanh địa chỉ

Trên menu thả xuống, nhấp vào Hợp lệ

Trong ví dụ của tôi, bạn sẽ nhận thấy hai đường dẫn chứng nhận phía trên GitHub

Chúng tôi sẽ cần thực hiện các bước sau cho cả hai đường dẫn chứng nhận

Nhấp vào chứng chỉ PaloAltoTrust đầu tiên [hoặc tương đương của bạn]

Trên cùng một cửa sổ, nhấp vào nút Xem chứng chỉ

Nhấp vào tab Chi tiết trên cửa sổ mới và sau đó nhấp vào nút sao chép vào tệp

Trên cửa sổ tiếp theo, nhấp vào Tiếp theo trên Trình hướng dẫn xuất

Chọn Cơ sở 64 được mã hóa

Lưu trữ tệp tạm thời ở đâu đó và nhấp vào Tiếp theo rồi Kết thúc. Bạn có thể xóa tệp sau khi mọi thứ hoạt động

Quan trọng. Lặp lại các bước này nếu bạn có nhiều cấp chứng chỉ được liệt kê ở trên GitHub

Git sử dụng tệp có tên ca-bundle.crt để liệt kê tất cả các chứng chỉ đáng tin cậy. Chúng tôi có thể tìm thấy tệp đó bằng cách nhập nội dung sau vào cửa sổ đầu cuối

git config --list --show-origin

Điều này cho tôi biết tệp ca-bundle.crt của tôi được liệt kê trong C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt. Hãy sao chép cái này đến một vị trí mới. Tôi sẽ sao chép của tôi vào C:\Users\Matt\ca-bundle.crt. Bạn có thể thực hiện việc này thông qua GUI hoặc bằng thiết bị đầu cuối như bên dưới

copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt

Thay đổi Matt thành thư mục người dùng Windows của bạn

Trình soạn thảo văn bản yêu thích của bạn có thể mở tệp ca-bundle.crt mà bạn đã sao chép và tệp

copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt
0 bạn đã xuất từ ​​trình duyệt. Sao chép toàn bộ văn bản
copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt
0 bao gồm cả
copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt
2 và
copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt
3 vào cuối tệp ca-bundle.crt của bạn. Làm điều này cho tất cả các tệp
copy "C:\Program Files [x86]\Git\mingw32\ssl\certs\ca-bundle.crt" c:\Users\Matt\ca-bundle.crt
0 mà bạn đã xuất

Một bước cuối cùng để hoàn thành. Quay lại thiết bị đầu cuối của bạn, thêm ca-bundle.crt đã sao chép vào cấu hình của Git

git config --global http.sslCAInfo C:/Users/Matt/ca-bundle.crt

Bây giờ bạn có thể truy cập GitHub bằng cách sử dụng git clone mà không ảnh hưởng đến bảo mật. Cung cấp cho nó một shot

Một điều cuối cùng

Nếu có thắc mắc hoặc thấy sai sót hãy bình luận bên dưới

Nếu bạn thấy bài viết này hữu ích, hãy chia sẻ nó với những người khác. Đó là lời cảm ơn tốt nhất mà tôi có thể yêu cầu và nó cho tôi động lực để tiếp tục viết

Cập nhậtCập nhậtCập nhậtCập nhậtCập nhật
Bảo mật . SSL . Lỗi

Ảnh của Matt Ferderer. Chỉ cần tưởng tượng một cái gì đó thực sự tốt đẹp và đó sẽ là một chiến thắng cùng có lợi cho cả hai chúng tôi

Matt Ferderer

Nhà phát triển phần mềm tập trung vào việc tạo ra trải nghiệm người dùng tuyệt vời. Tôi thích học hỏi, chia sẻ và giúp đỡ người khác tạo ra những điều tuyệt vời

Chủ Đề