Membuat sertifikat SSL
Langkah ini diasumsikan dilakukan di komputer sendiri yang bersistem operasi Linux. Bisa juga dilakukan di salah satu server Linux.
Pertama-tama, kita definisikan variabel-variabel ini agar tidak perlu terlalu mengulang-ulang:
$ export RANDFILE=/tmp/RANDFILE
$ export SERVERNAME=secure.example.com
secure.example.com diganti dengan nama website asli yang ingin dibuatkan sertifikat SSL-nya.
$ dd if=/dev/urandom of=$RANDFILE bs=1k count=5
Selanjutnya kita membuat private key. Hasilnya nanti adalah file SERVERNAME.key.
$ openssl genrsa -rand $RANDFILE -out $SERVERNAME.key 1024
Catatan: rata-rata CA root mendukung hingga 1024 bit saja. Jika ingin dienkrip, tambahkan opsi -des3 tapi umumnya tidak perlu.
Lalu buat $SERVERNAME.conf. Buatlah dengan mengkopi paste teks berikut ke teks editor (mis: joe $SERVERNAME.conf).
[ req ]
default_bits = 1024
distinguished_name = req_distinguished_name
attributes = req_attributes
prompt = no
[ req_distinguished_name ]
C = ID
ST = DKI
L = Jakarta
O = PT Example Dot Com
OU = PT Example Dot Com
CN = secure.example.com
emailAddress = admin@example.com
[ req_attributes ]
challengePassword = somePassword
Yang dicetak tebal adalah yang harus diganti dengan nilai sebetulnya.
Lalu buatlah certificate signing request (CSR). Hasilnya adalah $SERVERNAME.csr:
$ openssl req -new -key $SERVERNAME.key -out $SERVERNAME.csr -config $SERVERNAME.conf
Catatan: jika ingin membuat root CA sendiri, tambahkan -x509 tapi pada umumnya kita akan menggunakan salah satu root CA yang sudah ada. Jadi cukup sampai pembuatan CSR saja jika membuatkan csr untuk klien yang ingin membeli sertifikat dari pihak lain.
Langkah berikutnya adalah membuat sertifikat SSL itu sendiri. Hasilnya adalah $SERVERNAME.crt. Di tahap ini pada umumnya kita menyerahkan file .csr kepada pihak CA (misalnya: MWN) dan mereka yang akan memberikan .crt-nya kepada kita. Tapi bisa saja kita membuat .crt sendiri, yaitu sertifikat dummy:
$ openssl x509 -days 365 -in $SERVERNAME.csr -signkey $SERVERNAME.key -out $SERVERNAME.crt
|