Friday, July 10, 2009

Membuat SSL Certificate (self signed)

Apache yang menjalankan https (port 443), memerlukan sertifikat keamanan untuk memastikan bahwa site yang diakses adalah aman.
Untuk membuat SSl certificate yang self signed gunakan langkah berikut ini:

1. Membuat server private key

openssl genrsa -des3 -out server.key 1024

Hasilnya adalah file server.key yang digunakan untuk mengidentifikasi server. Pada saat pembuatan server.key akan ditanya pass phrases atau kata sandi. Pilihlah kata sandi yang sudah diingat orang lain tetapi mudah diingat oleh anda.

2. Membuat server certificate

openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out server.crt

Masukan untuk membuat server certificate adalah file server.key yang dihasilkan pada langkah pertama dan lamanya berlaku sertifikat yang akan dibuat, dalam contoh diatas lamanya adalah 365 hari (1 tahun). Pada saat pembuatan server.crt akan ditanya pass phrase dari server.key yang dimasukan pada langkah pertama.

3. Apabila file server.key dan server.crt sudah berhasil dibuat, lihat file ssl.conf yang merupakan bagian dari httpd.conf dan biasanya terletak pada /etc/httpd/conf.d.
Pada file ssl.conf ada line yang menunjuk lokasi file server.key dan seperti:
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key

Copy file server.key dan server.crt yang dihasilkan pada langkah 1 dan 2 ke direktori yang ditunjuk oleh ssl.conf.

Pada saat httpd mulai dijalankan, akan ditanya pass phrase atau kata sandi untuk menjalankan fungsi SSL. Kata sandi ini diperlukan pada saat httpd baca file server.key. Untuk menghilangkan hal itu, maka file server.key dibuat tanpa menanyakan pass phrase. Caranya adalah sebagai berikut:
1. File server.key yang dihasilkan di copy ke file lain eg. server.key.org

cp server.key cerver.key.org

Jalankan perintah

openssl rsa -in server.key -out server.key

untuk menghasilkan file server.key yang tidak memerlukan pass phrase/kata sandi ketika dibaca. Pada proses ini akan ditanyakan pass phrase/kata sandi pada saat pembuatan file server.key.

Jangan lupa untuk memastikan file server.key yang baru dibuat hanya dapat dibaca oleh root dengan perintah:

chmod 400 server.key

Semoga bermanfaat.

No comments:

Post a Comment