Đô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ấtMộ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ậtMatt 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