Halaman

Selasa, 28 Februari 2012

Apache Module SSL under Linux

SSL atau secure socket layer adalah metode enkripsi pengiriman data dari server ke klien atau sebaliknya yang bertujuan untuk melindungi data supaya tidak terlihat jelas isinya(berupa kode-kode). SSL bertujuan untuk melindungi data dari orang yang tidak berhak membacanya. Ketika data disadap melalui jaringan maka data yang tercapture berupa kumpulan kode-kode yang membutuhkan software dekripsi yang metodenya harus sesuai dengan yang digunakan jika tidak maka data tidak akan terbaca. SSL ini penting digunakan untuk aplikasi website yang harus menjaga kerahasiaan data dan transaksi yang berjalan dari klien dengan server seperti perbankan, jual-beli online atau aplikasi lainnya yang dianggap harus secure dalam implementasinya.

Penyedia layanan SSL yang umum digunakan adalah keluaran VerySign seperti yang digunakan pada snmptn. Sebetulnya prosedur berlangganan SSL ini cukup mudah hanya saja dari pihak verysign akan memverifikasi secara detail untuk keabsahan dari lembaga atau institusi yang akan berlangganan melalui email dan telepon serta dua-duanya ini harus direspon dengan baik oleh klien karena jika tidak maka pihak verysign bisa menolak permintaan anda dalam pengajuan ssl tersebut.
berikut step by step cara berlangganan ssl VerySign dengan webserver apache dan OS Linux:
  1. Generate RSA
  2.  Buat direktori untuk menempatkan file-file untuk ssl yang nantinya akan digunakan lalu masuk ki direktori tersebut dan mulailah mengenerate RSA untuk yang akan digunakan pada step berikutnya. Berikut urutan perintahnya(user: root):
    • cd /opt
    • mkdir ssl
    • cd ssl
    • openssl genrsa -des3 -out privatekey.key 2048
    • kemudian pada konfirmasi "Enter pass Phrase for privatekey.key" ketikan password sesuai keinginan anda.
  3.  Generate CSR
Setelah proses pertama selesai, sekarang generate CSR untuk pengajuan ssl di verysign. Informasi yang diminta ketika mengenerate CSR adalah:
  • konfirmasi password yang kita ketikan sewaktu generate RSA
  • Country Name yang berupa 2 kode huruf. Jika diindonesia gunakan ID
  • Nama Propinsi
  • Nama Kota
  • Nama Intstitusi/Lembaga
  • Nama Unit Kerja apabila tidak ada samakan dengan Nama institusi/lembaga
  • Nama hostname(domain yg akan kita gunakan) dan harus benar maksudnya domain itulan yg nantinya kan digunakan dalam mengakses situs web tersebut.
  • Email address(Jika melalui pihak ketiga kosongkan saja).
  • Perintah untuk generate CSR : openssl req -new -key privatekey.key -out request.csr

Setelah proses generate CSR selesai, backup semua file pada direktori ssl.  Kemudian buka file csr tersebut dengan menggunakan text editor(ex: vim request.csr) dan kopi isinya semua untuk divalidasi ke situs verysign di alamat: https://ssl-tools.verisign.com/checker/ lalu masukan kode CSR tersebut lalu klik validate CSR.
Setelah divalidasi dan sukses(tidak ada error) maka kirim file CSR tersebut ke VerySign atau pihak ketiga untuk diforward ke VerySign. Setelah itu tunggu konfirmasi dari pihak verysign untuk konfirmasi kebenaran permintaan anda dan validasi kebenaran institusi via email dan telpon. Ketika semua sudah oke dan anda sudah mendapatkan file berupa signed certificate maka langkah selanjutnya adalah implementasi ssl pada server anda.
  1. Implementasi SSL
File signed certificate dari verysign dibuka menggunakan text editor atau kopi semua isinya apabila file kode signed certificate tersebut di kirim via email. Ciri dari kode tersebut adalah:
  • Untuk Apache
-----BEGIN CERTIFICATE-----
Certificate code
-----END CERTIFICATE-----
  • Sedangkan untuk IIS :
-----BEGIN PKCS #7 SIGNED DATA-----
Certificate code
-----END PKCS #7 SIGNED DATA-----

Yang kita gunakan adalah yang untuk apache. Perlu diingat bahwa kode tersebut harus tanpa spasi jika ada spasi maka hapus dulu spasi lalu simpan dan upload ke direktori ssl yang kita gunakan untuk mengenarte RSA dan CSR sebelumnya. Pada langkah awal kita generate RSA adalah mengunakan encoder key jadi kita butuh decoder key dari file RSA tersebut. Berikut perintahnya:
  • /usr/bin/openssl rsa -in privatekey.key -out private.decode.key
  • lalu masukan password
  • simpan/backup file private.decode.key karena file inilah yang akan kita gunakan sebagai certificate file.
Setelah proses diatas, selanjutnya adalah mengedit file konfigurasi apachenya pada file httpd.conf atau httpd-ssl.conf yaitu pada baris:
  • httpd.conf
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf
  • httpd-ssl.conf
 <VirtualHost _default_:443>

#   General setup for the virtual host
DocumentRoot "/opt/web-server/htdocs"
ServerName domain_sesuai_di_csr:443

SSLCertificateFile "/opt/ssl/verysign.crt"

SSLCertificateKeyFile "/opt/ssl/private.decode.key"

Setelah selesai restart apache dan tes dengan mengakses laman web kita dengan domain yang sudah kita register ke verysign. Jika sudah oke maka validasi lagi ke situs verysign dialamat : https://ssl-tools.verisign.com/#certChecker lalu masukan domain kita lalu klik validate.

Kemudian akan menhasilkan hasil validasi jika ada tanda centang dan berwarna hijau semua berarti sudah valid tetapi jika masih ada tanda silang dan berwarna merah maka akan ditampilkan code certificate intermediate untuk CA 2 dan 3. Kopi file tersebut kedalam notepad dan simpan dengan nama file CARoot.crt yang merupakan gabungan dari dari CA 2 dan 3 jadi susunan filenya seperti berikut :
 -----BEGIN CERTIFICATE-----
CA2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
CA3
 -----END CERTIFICATE-----
Penamaan file tidak harus seperti itu. Ini hanya untuk memudahkan dalam pembedaaannya saja supaya peletakan file tidak tertukar. Masukan link file ini pada barracuda atau httpd.conf pada kolom intermediate certificate
 ini merupakan gambar hasil validasi ssl apabila belum seluruhnya sempurna. Setelah mendapatkan file root certificate intermediate upload ke server di direktori ssl lalu edit konfigurasinya pada file httpd-ssl.conf seperti berikut:
SSLCertificateChainFile "/opt/ssl/CARoot.crt"

Simpan hasil perubahan lalu retsart apache kemudian validasi lagi. Jika berhasil maka hasilnya akan seperti ini:
Semoga membantu postingan saya diatas. Untuk masalah harga dan produk ssl dari verysign silahkan kunjungi site resminya di: http://www.verisign.com/ssl/index.html?tid=gnps

    Tidak ada komentar:

    Posting Komentar