Câu trả lời đơn giản cho điều này là khá nhiều ứng dụng sẽ xử lý nó khác nhau.
Ngoài ra OpenSSL và GNUTLS (các thư viện xử lý chứng chỉ được sử dụng rộng rãi nhất được sử dụng để xử lý các chứng chỉ đã ký) hoạt động khác nhau trong việc xử lý các certs cũng làm phức tạp vấn đề. Ngoài ra các hệ điều hành sử dụng các cơ chế khác nhau để sử dụng "CA gốc" được sử dụng bởi hầu hết các trang web.
Điều đó sang một bên, lấy Debian làm ví dụ. Cài đặt ca-certificates
gói:
apt-get install ca-certificates
Sau đó, bạn sao chép một nửa công khai chứng chỉ CA không đáng tin cậy (chứng chỉ bạn sử dụng để ký CSR) vào thư mục chứng chỉ CA (với quyền root):
cp cacert.pem /usr/share/ca-certificates
Và lấy nó để xây dựng lại thư mục với chứng chỉ của bạn đi kèm, chạy dưới quyền root:
dpkg-reconfigure ca-certificates
và chọn ask
tùy chọn, cuộn đến chứng chỉ của bạn, đánh dấu nó để đưa vào và chọn ok.
Hầu hết các trình duyệt sử dụng cơ sở dữ liệu CA của riêng họ và vì vậy các công cụ như certutil
phải được sử dụng để sửa đổi nội dung của chúng (trên Debian được cung cấp bởi libnss3-tools
gói). Ví dụ: với Chrome, bạn chạy một số thứ:
certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "My Homemade CA" -i /path/to/CA/cert.file
Firefox sẽ cho phép bạn duyệt đến chứng chỉ trên đĩa, nhận ra đó là tệp chứng chỉ và sau đó cho phép bạn nhập nó vào danh sách Root CA.
Hầu hết các lệnh khác, chẳng hạn như curl
chuyển đổi dòng lệnh bạn có thể sử dụng để trỏ đến CA của mình,
curl --cacert /path/to/CA/cert.file https://...
hoặc bỏ xác nhận SSL hoàn toàn
curl --insecure https://...
Phần còn lại sẽ cần điều tra riêng nếu ca-certificates
thủ thuật tương tự không sắp xếp nó cho ứng dụng cụ thể đó.