Saya menggunakan kode berikut untuk menghasilkan kunci:
apt-get -qq -y install openssl;
mkdir -p /etc/apache2/ssl;
openssl genrsa -des3 -out server.key 1024;
openssl req -new -key server.key -out server.csr;
cp server.key server.key.org;
openssl rsa -in server.key.org -out server.key;
openssl x509 -req -days 12000 -in server.csr -signkey server.key -out server.crt;
mv server.crt /etc/apache2/ssl/cert.pem;
mv server.key /etc/apache2/ssl/cert.key;
rm -f server.key.orig;
rm -f server.csr
Saya punya dua pertanyaan:
Bagaimana saya bisa melewatkan bisikan frasa sandi? Apakah cukup aman bagi saya untuk melakukannya? (seperti di dalamnya tidak boleh benar-benar bodoh seperti orang harus bisa meretas sertifikat)
Bagaimana saya menghindari prompt untuk nama negara, organisasi, dll. Saya harap saya bisa memberikannya pada command prompt (halaman manual hanya menunjukkan opsi tingkat atas untuk OpenSSL)
-x509
dan-days
untuk menghasilkan CSR, bukan sertifikat, lalu gunakan metode penandatanganan CA biasa.Apakah
-passin
opsi tidak melakukan trik untuk Anda?Dengan
file:pathname
formulir Anda bisa cukup aman dengan izin 600 untuk file itu.sumber
-passin 'pass:YOUR_PASSWORD'
? - doc: openssl.org/docs/man1.0.2/apps/…Jawaban yang diterima membutuhkan beberapa koreksi kecil. EC Lines:
seharusnya:
Pada MacOS - OpenSSL 1.0.2f diinstal melalui minuman saya memverifikasi jawaban yang diterima seperti yang dijelaskan di bawah ini
Untuk daftar kurva Elliptic yang tersedia:
Untuk menghasilkan file kunci:
Untuk menghasilkan sertifikat tanpa konfirmasi kata sandi:
Untuk melihat sertifikat:
sumber
Coba perintah berikut:
Bagian skipping adalah:
-passout pass:foo
.sumber
@ Bahaham memiliki jawaban yang bagus. Sayangnya beberapa versi openssl melempar kesalahan ketika mencoba membuat sertifikat ECDSA dengan satu perintah. Kesalahan terjadi seperti:
Saya menggunakan
openssl 1.0.1e-fips
padaCentOS 7
.Membuat sertifikat Anda dengan 3 perintah berikut tampaknya berhasil:
sumber
server.crt
?