Tutorial membuat sertifikat ssl menggunakan xampp
-
Upload
yoga-pratama-putra -
Category
Technology
-
view
69 -
download
9
Embed Size (px)
Transcript of Tutorial membuat sertifikat ssl menggunakan xampp

TUTORIAL MEMBUAT SERTIFIKAT SSL
MENGGUNAKAN XAMPPYoga Pratama Putra
Dosen Pembimbing : Muhammad Jazman, S.Kom., M.Info.Sys.

INTRODUCTION
SSL memastikan data transaksi yang terjadi secara online di enkripsi/acak sehingga tidak dapat dibaca oleh pihak lain. Kegunaan utamanya adalah untuk menjaga keamanan dan kerahasiaan data ketika melakukan transaksi.
Alasan utama mengapa menggunakan SSL adalah untuk menjaga informasi sensitif selama dalam proses pengiriman melalui Internet dengan cara dienkripsi, sehingga hanya penerima pesan yang dapat memahami dari hasil enkripsi tersebut. Hal ini sangat penting, karena informasi yang kita kirimkan di Internet membutuhkan proses perjalanan dari komputer ke komputer sampai mencapai server tujuan.
Dalam pembuatan SSL pada xampp, penulis menggunakan sebuah virtual host untuk membuat domain yang berbeda dari localhost. Jadi nantinya kita akan memiliki 2 domain utama yaitu localhost dan domain virtual host yang akan kita buat.

LANGKAH – LANGKAH MEMBUAT VIRUTAL HOST
Buka Command Prompt sebagai admnistrator
STEP 1

Setelah kita berhasil menjalankan CMD, maka kita lakukan pengujian dengan menjalankan perintah SET US, perintah SET US disini gunanya hanya untuk menampilkan Environment Variable yang dimulai dengan huruf US
STEP 2

Kita akan membuat sebuah DNS baru pada Microsoft Windows, dengan cara :
C:\Windows\System32\drivers\etc\hosts
STEP 3

NEXT..
Jika berhasil maka perintah akan otomatis membuka file di notepad.
Lalu tambahkan DNS baru pada baris paling bawah, seperti pada gambar – SAVE.

STEP 3
Setelah anda menyimpan konfigurasi, maka langkah selanjutnya melakukan testing pada DNS yang anda buat. Dengan cara

STEP 4
Tambahkan settingan pada berkas httpd.conf yang berada di folder xampp
*Note :Sesuaikan lokasi xammp, dengan lokasi anda menginstall xampp.

NEXT..
Jika berhasil maka akan membuka file httpd.conf seperti pada gambar, lalu tambahkan teks berikut pada baris akhir :
NameVirtualHost *:80<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "C:/xampp/htdocs" ServerName localhost ServerAlias localhost.localdomain ErrorLog "logs/localhost.error.log" CustomLog "logs/localhost.access.log" combined</VirtualHost>Include "conf/sites-enabled/*.conf"

NEXT...
Maksud perintah sebelumnya adalah mengaktifkan Name Based Virtual Host di port 80 untuk semua IP Address kita (*). ServerAdmin di sini adalah email admin yang nanti keluar kalau ada error pada VirtualHost kita.
Perintah yang penting di sini adalah ServerName dan ServerAlias : localhost disini artinya adalah sebagai domain untuk virtualhost jika mengakases localhost atau localhost.localdomain maka apache akan otomatis memberikan file yang ada pada DocumentRoot.

STEP 5
1. kita akan membuat sebuah folder “sites-enabled”, yang berfungsi sebagai tempat kita menyimpan konfigurasi DNS VirtualHost kita.
2. Kita akan membuat file untuk konfigurasi DNS VirtualHost yang akan disimpan pada folder sites-enabled.

NEXT..
Jika muncul pemberitahuan seperti pada gambar disamping, maka klik ‘yes’.Selanjutnya masukkan perintah berikut ini : <VirtualHost *:80>
ServerAdmin [email protected] DocumentRoot "C:/xampp/vhosts/yoga.putra/public_html" ServerName yoga.putra ServerAlias www.yoga.putra ErrorLog "C:/xampp/vhosts/yoga.putra/logs/error.log" CustomLog "C:/xampp/vhosts/yoga.putra/logs/access.log" combined </VirtualHost><Directory "C:/xampp/vhosts/yoga.putra/public_html"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory>

NEXT...
Maka hasilnya seperti pada gambar disamping.

STEP 6
Buatlah 3 folder baru dengan perintah sbg berikut :
1. mkdir C:\xampp\vhosts2. mkdir C:\xampp\vhosts\yoga.putra3. mkdir C:\xampp\vhosts\yoga.putra\logs4. mkdir C:\xampp\vhosts\yoga.putra\public_html

STEP 7
Sekarang, restart Apache pada xampp Anda dengan menekan tombol Stop, tunggu sebentar, lalu start. Jika belum dijalankan, cukup klik tombol start saja.

STEP 8
Jika semua proses berhasil maka kita akan memiliki 2 DNS yaitu, localhost dan VirtualHost kita, seperti pada gambar :
Tampilan localhost

NEXT..
Tampilan DNS VirtualHost
Untuk mengisi tampilan virtual host Anda, maka anda cukup copy dan paste file website yang anda miliki ke folder “C:/vhosts/yoga.putra/public_html”

LANGKAH – LANGKAH MEMBUAT SSL
1. Perisapan2. Membuat Sertifikat CA3. Membuat Sertifikat Untuk Client4. Menandatangani Sertifikat Request5. Meletakan CRT dan Key ke Apache6. Menginstall sertifikat CA

STEP 1 : PERSIAPAN
Buka cmd dan masuk ke direktori C:

STEP 2
Buat folder baru yang bernama “sslcert” Lalu masuk ke folder tersbut :

STEP 3
Buatlah folder baru kembali yang bernama “certs private”, folder certs ini berfungsi sebagai tempat penyimpanan semua sertifikat dan private berfungsi sebagai penyimpanan private key.

STEP 4
Sekarang buat sebuah berkas bernama serial, dan isi dengan 100001. Berkas serial ini nantinya digunakan untuk otomatis memberi nomor serial untuk setiap sertifikat yang dihasilkan.
ketikan perintah : echo 100001 >serial (enter)selanjutnya ketikan : copy con serial (enter)
100001 maka akan muncul pesan <Yes/No/All> :ketik All (enter)
lalu tekan ctrl + z (enter)

STEP 5
Buat sebuah dile baru bernama “certindex.txt”ketikan perintah notepad certindex.txt (enter)
Hasil perintah tersebutuntuk menampung daftar sertifikat yang
telah kita tandatangani. Jadi biarkan kosong

STEP 6
Kemudia buatlah sebuah file baru yang bernama “openssl.cnf”
Masukkan semua teks yang ada pada slide berikutnya

## OpenSSL configuration file.## Establish working directory. dir = .[ ca ]default_ca = CA_default [ CA_default ]serial = $dir/serialdatabase = $dir/certindex.txtnew_certs_dir = $dir/certscertificate = $dir/cacert.pemprivate_key = $dir/private/cakey.pemdefault_days = 3650#default_md = md5default_md = sha1preserve = noemail_in_dn = nonameopt = default_cacertopt = default_capolicy = policy_match [ policy_match ]countryName = matchstateOrProvinceName = matchorganizationName = matchorganizationalUnitName = optionalcommonName = supplied
emailAddress = optional
[ req ]default_bits = 2048 # Size of keysdefault_keyfile = key.pem # name of generated keys#default_md = md5 # message digest algorithmdefault_md = sha1 # message digest algorithmstring_mask = nombstr # permitted charactersdistinguished_name = req_distinguished_namereq_extensions = v3_req [ req_distinguished_name ] # Variable name Prompt string#------------------------- ----------------------------------0.organizationName = Organization Name (company)organizationalUnitName = Organizational Unit Name (department, division)emailAddress = Email AddressemailAddress_max = 40localityName = Locality Name (city, district)stateOrProvinceName = State or Province Name (full name)countryName = Country Name (2 letter code)countryName_min = 2countryName_max = 2commonName = Common Name (hostname.com, IP, or your name)commonName_max = 64
Lanjutan

# Default values for the above, for consistency and less typing.# Variable name Value#------------------------ ------------------------------0.organizationName_default = Universitas Islam Negeri Sultan Syarif KasimlocalityName_default = PekanbarustateOrProvinceName_default = RiaucountryName_default = ID [ v3_ca ]basicConstraints = CA:TRUEsubjectKeyIdentifier = hashauthorityKeyIdentifier = keyid:always,issuer:always [ v3_req ]basicConstraints = CA:FALSEsubjectKeyIdentifier = hash
Lanjutan
Hasil script tersebut

STEP 7 : MEMBUAT SERTIFIKAT CA
Ketikan perintah berikut :C:\xampp\apache\bin\openssl.exe req -new -x509 -extensions v3_ca -keyout private\CAkey.pem -out CAcert.pem -days 3650 -config ./openssl.cnf (enter)

STEP 8
Kemudian masukkan Password yang akan kita gunakan sebagai CA.

STEP 9Setelah berhasil memasukkan password CA maka kita akan diminta untuk mengisi data berikut :
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Organization Name (company) [Universitas Islam Negeri Sultan Syarif Kasim]:
Organizational Unit Name (department, division) []:SIF2014Email Address []:yogapr[email protected] Name (city, district) [Pekanbaru]:
State or Province Name (full name) [Riau]:
Country Name (2 letter code) [ID]:Common Name (hostname.com, IP, or your name) []:yoga.putra.com
Anda bisa sesuaikanAnda bisa sesuaikan
Anda bisa sesuaikan

NEXT..
Contoh gambar :

STEP 10 : MEMBUAT SERTIFIKAT CLIENT
ketikan perintah berikut ini :C:\xampp\apache\bin\openssl req -new -nodes -out localhost-req.pem -keyout private/localhost-key.pem -config ./openssl.cnf (enter)
Jika anda ingin membuat client baru, Anda cukup mengganti seluruh nama“localhost” menjadi nama DNS anda

STEP 11
Kemudian isilah informasi tersebut :
Organization Name (company) [Universitas Islam Negeri Sultan Syarif Kasim]:Organizational Unit Name (department, division) []:IT DepartmentEmail Address []:[email protected] Name (city, district) [Pekanbaru]:State or Province Name (full name) [Riau]:Country Name (2 letter code) [ID]:Common Name (hostname.com, IP, or your name) []:localhost

STEP 12 : MENANDATANGANI SERTIFIKAT
Biasanya perintah ssl tidak akan berjalan jika kita belum melakukan setting path, maka ketikan text berikut untuk mengaktifkan path :set path=C:\xampp\apache\bin;%PATH% (enter)

STEP 13
Selanjutnya kita akan menandatangani sertifikat requestopenssl ca -out localhost.crt.pem -config ./openssl.cnf -infiles localhost-req.pem (enter)
Jika anda ingin menandatangani sertifikat lainnya, anda cukup mengganti seluruh nama “localhost” dengan DNS anda.

STEP 14
Jika langkah sebelumnya berhasil, maka selanjutnya kita akan memindahkan file CRT dan KEY ke Apache pada xampp. *sesuaikan lokasi xampp anda

STEP 15
Kemudian edit pengaturan pada “httpd-ssl.conf”

NEXT..
Edit semua file yang telah diblock sesuai dengan sertifikat yang anda miliki. Lalu restart Apache pada xampp.

STEP 16 : MENGINSTALL SERTIFIKAT CA
Selanjutnya kita akan menginstall sertifikat CA pada browser.
Disini saya menggunakan Mozilla Firefox V. 48.0.2
Buka browser pilih menu sepert pada gambar Option

STEP 17
Selanjutnya pilih Advanced Certificates View Certificates

STEP 18
Lalu installkan sertifikat anda dengan mengimport sertifikat yang anda miliki.
Disini saya menginstall sertifikat “yoga.putra”

STEP 19
Setelah berhasil kita dapat melihat informasi mengenai sertifikat yang kita miliki dengan klik tombol View.

STEP 20
Meskipun kita telah menginstall sertifikat ke browser tetap saja koneksi https kita akan dibaca koneksi yang tidak aman. Namun itu tidak masalah, lebih baik dari pada pemberitahuan eror yang anda terima.

SEKIANTerima Kasih