Panduan Lengkap Memasang Sertifikat SSL di VPS Centos

[Kincaimedia.net]

Panduan Lengkap Memasang Sertifikat SSL di VPS [Apache]

Panduan Lengkap Memasang Sertifikat SSL di VPS
Menggunakan terminal command artinya Anda belum install control panel untuk VPS kamu, kalau mau lebih gampang silahkan install Control panel, karena bisa membantu setup SSL ( Secure Sockets Layer) dengan lebih mudah. Gw memakai Centos 6.5 dan Apache sebagai contoh dalam praktek ini, OS lain bisa menyesuaikan karena nggak beda beda amat.

Sebelumnya apa sih SSL itu, kalau ambil dari wikipedia

Protokol ini menyediakan authentikasi akhir dan privasi komunikasi di Internet menggunakan cryptography. Dalam penggunaan umumnya, hanya server yang diautentikasi (dalam hal ini, memiliki identitas yang jelas) selama dari sisi client tetap tidak terautentikasi. Autentikasi dari kedua sisi (mutual autentikasi) memerlukan penyebaran PKI pada client-nya. Protocol ini mengizinkan aplikasi dari client atau server untuk berkomunikasi dengan didesain untuk mencegah eavesdropping, tampering dan message forgery

Protokol ini menyediakan authentikasi akhir dan privasi komunikasi di Internet menggunakan cryptography. Dalam penggunaan umumnya, hanya server yang diautentikasi (dalam hal ini, memiliki identitas yang jelas) selama dari sisi client tetap tidak terautentikasi. Autentikasi dari kedua sisi (mutual autentikasi) memerlukan penyebaran PKI pada client-nya. Protocol ini mengizinkan aplikasi dari client atau server untuk berkomunikasi dengan didesain untuk mencegah eavesdropping, tampering dan message forgery.

Intinya adalah setiap paket data atau informasi yang Anda kirimkan melaui protoko lSSL ini, yang biasanya mengacu pada port 443, akan terenskripsi dan aman dari pencurian paket paket data yang Anda kirim. Contoh gampangnya saja ketika kita login ke gmail atau facebook pasti protokolnya https bukan http, jadi password dan user yang kita subit di form login aman dari eavesdropping, contoh username kita misal puntoap ter enskripsi jadi gse)89490{}, dsb. Sangat cocok untuk Anda yang bikin website jualan misal woo-comerce buat ngamanin data pembeli kamu.

SSL terdiri dari 3 elemen, yang pertama adalah Private key (KEY), yaitu key unik untuk setiap domain yang akan kita pasangin ssl, ingat setiap domain hanya punya 1 key/kunci yang gunanya nanti membuka gembok dari sertifikat ssl kita. Kedua ialah Certificate Signing Request (CSR) yang berisi informasi mengenai domain, misal nama perusahaan, negara, dll. CSR ini nantinya digunakan buat request sertifikat SSL di penyedia SSL. Ketiga adalah, Certificate (CRT), yang mana nggak usah ditanya adalah sertifikat SSL yang kita dapatkan dari penyedia SSL. Biasanya formatnya CRT.

Sekarang masuk ke tutorial, sebelum menginstall ssl pada VPS kita kita harus menentukan domain mana yang mau kita pasangin ssl. misal saja kalau blog ini http://www.401xd.com. Sekarang kita generate KEY kita, masuk ke terminal menggunakan user root atau sudo.

Install dulu mod ssl dan open ssl kalau belum terisntal.

1
yum install mod_ssl openssl

kita masuk ke folder default key nya di

1
cd /etc/httpd/conf/

lalu hapus key default yang dibikin pas instalasi openssl (kalau ada)
lalu buat folder untuk menyimpan key kita agar lebih aman misal

1
mkdir /etc/httpd/ssl

bebas sih. Nah sekarang kita bikin key dulu di folder diatas tadi

1
cd /etc/httpd/ssl
1
openssl genrsa out /etc/httpd/ssl domainmu.com.key 2048

ganti domainmu.com dengan nama domain yang akan Anda pasang ssl certificate. Key akan tergenerate di folder tadi.
Setelah tahap ini bisa juga Anda bikin self-signed ssl certificate, artinya sertifikat ssl Anda sendiri tapi nggak trusted dan bakal ada warning di browser.

Berikut ini simbol – simbol di browser chrome mengenai ssl
Panduan Lengkap Memasang Sertifikat SSL di VPS [Apache]
Untuk penyedia SSL sebenarnya banyak, karena untuk tutorial maka gw akan rekomendasi trialnya comodo, gratis 90 hari.

silahkan daftar dulu di https://www.comodo.com/e-commerce/ssl-certificates/free-ssl-certificate.php

Langkah selanjutnya adalah membuat CSR yang nantinya Anda akan masukan pada waktu bikin sertifikat ssl di comodo.

1
openssl req new key /etc/httpd/ssl/domainmu.com.key out /etc/httpd/ssl/domainmu.com.csr

setelah itu ada beberapa form yang harus Anda isi, isi dengan benar (atau nggak). Pas disuruh mengisi password kosongin, atau nanti csr Anda bakal kekunci dan harus dibuka dulu(repot, bisa sih tapi repot). Cek CSR:

1
2
openssl req noout text in /etc/httpd/ssl/domainmu.com.csr
#verifikasi agar nggak error

Setelah itu coba Anda edit/download menggunakan ftp dan buka sebagai text.
kira kira isinya seperti ini

1
2
3
4
5
6
7
8
9
BEGIN RSA PRIVATE KEY
ProcType: 4,ENCRYPTED
DEKInfo: DESEDE3CBC,485B3C6371C9916E
ymehJu/RowzrclMcixAyxdbfzQphfUAk9oK9kK2
jadfoiyqthakLKNqw9z1MoaqkPyqeHevUm26no
AJKIETHKJADFS2BGb0n61/Ksk8isp7evLM4+QY
KAQETKjdiahteksMJOjXLq+vf5Ra299fZPON7yr
END RSA PRIVATE KEY

CSR ini yang nanti Anda masukin pas mau bikin sertifikat SSL. Setelah Anda selesai bikin sertifikat dan dapat sertifikatnya (format CRT) coba Anda upload di folder yang sama dengan KEY yang sudah Anda buat biar gampang.
Langkah selanjutnya adalah menambah SSL di confignya Apache

1
nano /etc/httpd/httpd.conf

kemudian edit virtual host( kalau Anda belum bikin visrtual host cukup tambahin dan sesuaikan sesuai dengan yang dibawah

1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost IPVPSMU:443>
ServerName www.domainmu.com
DocumentRoot /path/public/htmlmu
SSLEngine ON
SSLCertificateFile /etc/httpd/ssl/domainmu.com.crt
#path ke sertifikat ssl yang udah Anda upload
SSLCertificateKeyFile /etc/httpd/ssl/domainmu.com.crt
#path KEY
ErrorLog logs/ssl.domain.com.error_log
CustomLog logs/ssl.domain.com.access_log combined
</VirtualHost>nano /etc/httpd/conf.d/ssl.conf

Dan juga edit path di ssl.conf (gak tau kenapa, padahal di virtualhost sudah di set tapi kadang bisa bikin error kalo di ssl.conf nggak di set)

1
nano /etc/httpd/conf.d/ssl.conf

Selesai ! 
Sekarang tambah port 443 di Iptables agar dapat diakses

1
2
iptables I INPUT p tcp dport 443 m state state NEW,ESTABLISHED j ACCEPT
iptables I OUTPUT p tcp sport 443 m state state ESTABLISHED j ACCEPT

jangan lupa simpan dan restart Iptablesnya

1
2
3
service iptables save
service iptables restart
service httpd restart

Dan coba Anda akses di https://domainmu
Semoga bisa dimengerti dengan baik, Terima kasih.

Comments are closed.