Saya telah menghasilkan sertifikat yang ditandatangani sendiri untuk server build saya dan saya ingin mempercayai sertifikat itu secara global pada mesin saya, karena saya sendiri yang membuat kunci dan saya muak melihat peringatan.
Saya di Ubuntu 12,04. Bagaimana saya bisa mengambil sertifikat dan mempercayainya secara global sehingga peramban (Google Chrome), utilitas CLI (wget, curl), dan bahasa pemrograman (Python, Java, dll.) Mempercayai koneksi ke https://mysite.com tanpa meminta pertanyaan?
Jawaban:
Jawaban sederhana untuk ini adalah bahwa hampir setiap aplikasi akan menanganinya secara berbeda.
Juga OpenSSL dan GNUTLS (perpustakaan pemrosesan sertifikat yang paling banyak digunakan untuk menangani sertifikat yang ditandatangani) berperilaku berbeda dalam perlakuan mereka terhadap sertifikat yang juga memperumit masalah. Juga sistem operasi menggunakan mekanisme berbeda untuk memanfaatkan "root CA" yang digunakan oleh sebagian besar situs web.
Selain itu, memberi Debian sebagai contoh. Instal
ca-certificates
paket:Anda kemudian menyalin setengah publik dari sertifikat CA yang tidak tepercaya (yang Anda gunakan untuk menandatangani CSR) ke direktori sertifikat CA (sebagai root):
Dan mendapatkannya untuk membangun kembali direktori dengan sertifikat Anda, jalankan sebagai root:
dan pilih
ask
opsi, gulir ke sertifikat Anda, tandai untuk dimasukkan dan pilih ok.Sebagian besar browser menggunakan database CA mereka sendiri, dan alat-alat seperti
certutil
harus digunakan untuk memodifikasi konten mereka (pada Debian yang disediakan olehlibnss3-tools
paket). Misalnya, dengan Chrome Anda menjalankan sesuatu di sepanjang baris:Firefox akan memungkinkan Anda untuk mencari ke sertifikat pada disk, mengenalinya file sertifikat dan kemudian memungkinkan Anda untuk mengimpornya ke daftar Root CA.
Sebagian besar perintah lain seperti
curl
take switch baris perintah yang dapat Anda gunakan untuk menunjuk pada CA Anda,atau lepaskan validasi SSL sama sekali
Selebihnya akan memerlukan penyelidikan individu jika
ca-certificates
trik sejenisnya tidak mengurutkannya untuk aplikasi tertentu.sumber
dpkg-reconfigure ca-certificates
daftar. Apa yang saya lakukan salah?whatever.pem
menjadiwhatever.crt
..cer
, dan itu tidak berhasil. Saya harus mengganti nama.crt
agar bisa dikenali.Pendekatan Non Interaktif
Untuk digunakan dalam konteks non-interaktif (misalnya resep koki), Anda dapat menggunakan urutan berikut.
man update-ca-certificates
Metode ini lebih disukai daripada metode @ Drav, karena
/usr/share/
biasanya disediakan untuk file yang ditambahkan oleh OS /apt-get
.sumber
/usr/local/share/ca-certificates/
seperti yang disebutkan di halaman manual.crt
, saya menemukan.cert
klaim itu ditambahkan tetapi tidak membantuPada Fedora 23, tambahkan file .pem atau .der ke
/etc/pki/ca-trust/source/anchors/
dan jalankansudo update-ca-trust extract
.Lihat
man update-ca-trust
detailnya, misalnya apakah akan menggunakan / etc atau / usr.sumber
Dalam centos:
sumber
openssl connect
harus menentukan folder / jangkar ini? Saya masih mendapatkan kesalahan "self signed certs
Pendekatan Non Interaktif (Oct'18)
untuk sistem berbasis debian terbaru
Ada perbedaan antara menambahkan sertifikat ke toko host dan mengaktifkannya sehingga aplikasi benar-benar memanfaatkannya. Sertifikat yang ada di toko belum tentu digunakan (walaupun saya harus mengakui bahwa masih banyak paket yang salah melakukannya)
Ini dapat membingungkan ketika Anda menyiapkan paket yang mempertimbangkan
/etc/ca-certificate.conf
dan hanya menolak untuk menggunakan sertifikat Anda meskipun telah memiliki telah ditambahkan tanpa kesalahan. Anda harus memberi tahuupdate-ca-certificates
secara eksplisit untuk (tidak hanya menyalin tetapi) mengaktifkan sertifikat dengan menambahkannya ke/etc/ca-certificate.conf
atau/etc/ca-certificate/update.d
.Sekarang ini menjadi membingungkan karena ada cara untuk secara implisit mempercayai sertifikat dengan menggunakan jalur yang berbeda:
sumber