Trên Windows cách dễ nhất là sử dụng portecle chương trình .
- Tải về và cài đặt portecle.
- Trước tiên hãy chắc chắn 100% rằng bạn biết JRE hoặc JDK nào đang được sử dụng để chạy chương trình của bạn. Trên Windows 7 64 bit, có thể có khá nhiều JRE. Process Explorer có thể giúp bạn điều này hoặc bạn có thể sử dụng:
System.out.println(System.getProperty("java.home"));
- Sao chép tệp JAVA_HOME \ lib \ security \ cacerts sang thư mục khác.
- Trong Portecle, nhấp vào Tệp> Mở tệp kho khóa
- Chọn tập tin cacerts
- Nhập mật khẩu này: thay đổi
- Nhấp vào Công cụ> Nhập Chứng chỉ tin cậy
- Duyệt tìm tập tin mycert ve.pem
- Nhấp vào Nhập
- Nhấn OK để cảnh báo về đường dẫn tin cậy.
- Nhấn OK khi nó hiển thị chi tiết về chứng chỉ.
- Nhấp vào Có để chấp nhận chứng chỉ là đáng tin cậy.
- Khi nó yêu cầu bí danh, nhấp OK và nhấp OK lần nữa khi thông báo đã nhập chứng chỉ.
- Nhấp vào để lưu. Đừng quên điều này hoặc thay đổi bị loại bỏ.
- Sao chép các tập tin trở lại nơi bạn tìm thấy nó.
Trên Linux:
Bạn có thể tải xuống chứng chỉ SSL từ một máy chủ web đã sử dụng nó như thế này:
$ echo -n | openssl s_client -connect www.example.com:443 | \
sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/examplecert.crt
Tùy chọn xác minh thông tin chứng chỉ:
$ openssl x509 -in /tmp/examplecert.crt -text
Nhập chứng chỉ vào kho khóa Java:
$ keytool -import -trustcacerts -keystore /opt/java/jre/lib/security/cacerts \
-storepass changeit -noprompt -alias mycert -file /tmp/examplecert.crt
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider())
là hoàn toàn không cần thiết trong phần đầu tiên. Thứ hai không làm bất kỳ xác minh chứng nhận. Hãy thử với một đồng bằngURLConnection
để bắt đầu với. Bạn có chắc bạn đã sửa đổicacerts
tronglib/security
cài đặt JRE của bạn? Bạn đã thửtrustmanager
tùy chọn gỡ lỗi chưa?