SlideShare a Scribd company logo
1 of 32
UJIAN AKHIR SEMESTER (UAS) / FINAL PROJECT
VirtualHost + SSL
MODUL
oleh:
WINDI ROHMA HENY
1145305427
JURUSAN SISTEM INFORMASI
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SULTAN SYARIF KASIM RIAU
PEKANBARU
2017
Menjalankan CMD sebagai
Administrator
Cara 3 (Menjalankan CMD melalui Windows + R)
1. Klik tombol windows yang ada pada keyboard + R lalu ketikan CMD.
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. CMD yang telah dijalankan sebagai
administrator akan memiliki judul Administrator: seperti terlihat pada gambar berikut:
BERKAS HOST
Host file digunakan oleh sistem operasi untuk meng-override settingan DNS yang
diberikan oleh DNS Server. Pada Microsoft Windows, host file terdapat pada.
%WINDIR%System32Driversetchosts
Misalnya
C:WindowsSystem32driversetchosts
Disini kita perlu hak akses sebagai administrator untuk dapat mengedit file hosts untuk
menambahkan alamat IP kita.
Sebagai contoh dalam modul ini penulis akan menambahkan alamat IP 127.0.0.0 dengan
DNS rahmad.riansyah.com pada file hosts.
Adapun langkah - langkah pengerjaanya adalah sebagai berikut.
1. Buka CMD, Lalu ketikan perintah notepad
WindowsSystem32driversetchosts lalu klik enter.
2.Setelah anda menekan enter maka secara otomatis CMD akan membuka file hosts. lalu yang
perlu kita lakukan adalah menambahkan 127.0.0.1 windi.com pada baris bagian bawah.
3.Setelah selesai menambahkan 127.0.0.1 rahmad.riansyah.com pada baris bagian bawah maka
pilih file » save.
4.Setelah anda selesai menyimpan konfigurasi yang telah anda lakukan langkah selanjutnya
adalah kita melakukan pengujian apakah berkash hosts tersebut telah berhasil ditambahkan atau
belum, adapaun cara yang kita gunakan adalah dengan perintah ping rahmad.riansyah.com pada
CMD.
Setting VirtualHost dengan Apache (XAMPP)
Salah satu HTTP Daemon yang paling banyak digunakan adalah apache.
http://httpd.apache.org/ Apache mendukung VirtualHost, dokumentasi resmi dari Apache 2.4
untuk VirtualHost ada di sini:
http://httpd.apache.org/docs/2.4/vhosts/
http://httpd.apache.org/docs/2.4/mod/core.html#virtualhost dan
http://httpd.apache.org/docs/2.4/vhosts/name-based.html
Setelah berhasil membuat berkas hosts, maka yang selanjutnya akan kita lakukan adalah
mensetting virtualhost. adapun langkah - langkah dalam penyetingan VirtualHost pada apache
adalah sebagai berikut :
1. Tambahkan settingan pada berkas httpd.conf, biasanya berkas ini berada pada
C:xamppapacheconfhttpd.conf (jika Anda menginstal xampp di drive C)
2.Lalu tambahkan baris berikut di akhir:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin kampar@gmail.com
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"
Maksud perintah di atas adalah meng-enable 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
untuk VirtualHost ini jika orang mengakses localhost atau localhost.localdomain maka apache
akan memberikan DocumentRoot "C:/xampp/htdocs"
2. Selanjutnya buatlah sebuah folder sites-enabled pada direktori conf dengan perintah
mkdir C:xamppapacheconfsites-enabled
3.Kemudian buat sebuah berkas di dalam folder sites-enabled tersebut
notepad C:xamppapacheconfsites-enabledwindi.rohma.conf
4.Kemudian akan muncul pesan peringatan dari notepad bahwa dia tidak bisa
menemukan windi.rohma dan akan membuat file baru dengan nama windi.rohma .
Setelah file rahmad.riansyah berhasil di buat maka tambahkan baris berikut.
<VirtualHost *:80>
ServerAdmin admin@windi.rohma
DocumentRoot "C:/xampp/vhosts/windi.rohma/public_html"
ServerName windi.rohma
ServerAlias www.windi.rohma
ErrorLog "C:/xampp/vhosts/windi.rohma/logs/error.log"
CustomLog "C:/xampp/vhosts/windi.rohma/logs/access.log" combined
</VirtualHost>
<Directory "C:/xampp/vhosts/rahmad.riansyah/public_html">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
5. Kemudaian kita buat direktori vhosts untuk meletakan logs dan tempat penyimpanan
website yang akan kita buat (public_html)
1. mkdir C:xamppvhosts
2. mkdir C:xamppvhostswindi.rohma
3. mkdir C:xamppvhostswindi.rohmalogs
4. mkdir C:xamppvhostswindi.rohmapublic_html
6. Jangan lupa untuk menambahkan rahmad.riansyah ke berkas host Anda,
notepad C:WindowsSystem32driversetchosts
Kemudian Tambahkan 127.0.0.1 windi.com dan 127.0.0.1 windi.rohma
7.Sekarang, restart Apache Anda dengan menekan tombol Stop, tunggu sebentar, lalu
start. Kalau belum dijalankan, cukup di start saja.
Sekarang, seharusnya Apache Anda sudah memiliki setidaknya dua buah Document Root:
● yang pertama di "C:/xampp/htdocs" untuk http://localhost;
● yang kedua di "C:/xampp/vhosts/windi.rohma/public_html" jika ada yang mengakses
http://windi.rohma
Setelah proses restart selesai, seharusnya kita sudah bisa menjalankan http://windi.rohma namun
tampilanya masih akan seperti ini.
Mengganti Sertifikat SSL XAMPP
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. Komputer lain yang ada diantara Anda dan server
dapat melihat nomor Kartu Kredit Anda, username dan passwords, dan informasi sensitive
lainnya bila hal ini tidak dienkripsi dengan Sertifikat SSL. Ketika sertifikat SSL digunakan,
informasi menjadi tidak dapat terbaca oleh siapapun kecuali ke server yang memang dituju saat
mengirim informasi tersebut. Hal ini melindungi informasi tersebut dari hackers dan pencuri
identitas.
Otentikasi (Authentication)
Selain juga enkripsi, sertifikat SSL juga menyediakan otentikasi. Ini artinya Anda dapat lebih
pasti dalam mengirimkan informasi ke server yang benar-benar valid dan bukan malah ke
kriminal server . Mengapa ini begitu sangat penting ? Sifat dasar dari internet artinya bahwa
pelanggan Anda akan lebih sering dalam mengirimkan informasi yang melewati beberapa jumlah
komputer. Setiap dari komputer ini bisa berpura-pura menjadi website Anda dan mengelabui
pengguna Anda untuk mengirimkan informasi mereka ke komputer tersebut. Hal ini hanya dapat
dihindari dengan menggunakan Public Key Infrastructure (PKI), dan mendapatkan sertifikat SSL
dari penyedia SSL terpercaya.
Dalam modul kali ini penulis berperan sebagai CA (Certificate Authority) yang akan
menandatangani sertifikat sendiri serta merubah sertifikat SSL yang dimiliki oleh XAMPP.
langkah - langkah yang akan kita lakukan akan terbagi menjadi beberapa tahapan :
1. Perisapan
2. Membuat Sertifikat CA
3. Membuat Sertifikatt Untuk Localhost
4. Menandatangani Sertifikat Request
5. Meletakan CRT dan Key Ke Apache
6. Menginstall sertifikat CA
Persiapan
1. Buka CMD, lalu ketikan perintah cd  (enter)
2.Lalu buat folder baru dengan nama sslcert, untuk membuat direktori menggunakan CMD
ketikan Perintah mkdir. mkdir sslcert (enter)
3. Kemudian masuk kedalam folder sslcert dengan perintah cd sslcert (enter)
4.Setelah berada pada folder sslcert, langkah selanjutnya adalah membuat 2 folder baru, yaitu
folder certs dan private. ketikan perintah mkdir certs private (enter)
Folder certs nantinya untuk menampung semua sertifikat yang dihasilkan dan folder
private untuk menyimpan semua private-key kita.
5.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)
6.Kemudian Buat sebuah berkas baru, namanya certindex.txt untuk menampung daftar sertifikat
yang telah kita tandatangani.
ketikan perintah notepad certindex.txt (enter)
Apabila muncul pesan peringatan seperti pada gambar dibawah ini maka klik Yes, peringatan
tersebut muncul karna file certindex belum ada, dan notepad akan membuat file tersebut.
7.Sekarang buat konfigurasi OpenSSL kita, dengan perintah notepad openssl.cnf (enter)
Apabila muncul pesan peringatan seperti pada gambar sebelumnya maka klik saja Yes.
lalu copy-paste baris baris berikut :
#
# OpenSSL configuration file.
#
# Establish working directory.
dir = .
[ ca ]
default_ca = CA_default
[ CA_default ]
serial = $dir/serial
database = $dir/certindex.txt
new_certs_dir = $dir/certs
certificate = $dir/cacert.pem
private_key = $dir/private/cakey.pem
default_days = 3650
#default_md = md5
default_md = sha1
preserve = no
email_in_dn = no
nameopt = default_ca
certopt = default_ca
policy = policy_match
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
[ req ]
default_bits = 2048 # Size of keys
default_keyfile = key.pem # name of
generated keys
#default_md = md5 # message digest
algorithm
default_md = sha1 # message digest
algorithm
string_mask = nombstr # permitted characters
distinguished_name = req_distinguished_name
req_extensions = v3_req
[ req_distinguished_name ]
# Variable name Prompt string
#------------------------- ----------------------------------
0.organizationName = Organization Name (company)
organizationalUnitName = Organizational Unit Name (department,
division)
emailAddress = Email Address
emailAddress_max = 40
localityName = Locality Name (city, district)
stateOrProvinceName = State or Province Name (full
name)
countryName = Country Name (2 letter code)
countryName_min = 2
countryName_max = 2
commonName = Common Name (hostname.com, IP, or your
name)
commonName_max = 64
# Default values for the above, for consistency and less typing.
# Variable name Value
#------------------------ ------------------------------
0.organizationName_default = Universitas Islam Negeri Sultan Syarif
Kasim
localityName_default = Pekanbaru
stateOrProvinceName_default = Riau
countryName_default = ID
[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
[ v3_req ]
basicConstraints = CA:FALSE
subjectKeyIdentifier = hash
Membuat Sertifikat CA
Sebagai kepala unit IT di organisasi Anda, Anda harus bisa menandatangani sertifikat
seluruh server. Untuk itu, Anda harus memiliki dahulu sebuah sertifikat (KEY, privateKEY)
yang digunakan untuk menandangani seluruh sertifikat request (CSR) dari seluruh unit yang lain.
Sekarang, kita buat sertifikat PKI untuk CA kita, yang nantinya akan digunakan oleh
perusahaan / sekolah / universitas Anda untuk menandatangani seluruh sertifikat di kantor / lab /
kampus.
adapun langkah - langkah untuk membuat sertifikat PKI untuk CA adalah sebagai berikut :
1. ketikan perintah berikut :
C:xamppapachebinopenssl.exe req -new -x509 -extensions v3_ca -
keyout privateCAkey.pem -out CAcert.pem -days 3650 -config
./openssl.cnf (enter)
2.kemudian masukan password yang akan kita gunakan untuk sertifikat CA kita :
Setelah berhasil memasukan password, maka kita akan diminta untuk memasukan
informasi yang di butuhkan pada sertifikat.
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) []:SIF2014
Email Address []:windirohmaheny@gmail.com
Locality 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) []:windi.com
Dengan perintah di atas, kita sekarang sudah memiliki sebuah kunci private untuk
menandatangani sertifikat. Kunci private tersebut disimpan di folder private, dengan
nama CAkey.pem.
Adapun berkas CAcert.pem adalah sertifikat public kita yang nanti akan digunakan oleh
client untuk menginstal sertifikat kita.
Membuat sertifikat untuk Localhost
Selanjutnya, kita akan membuat sertifikat untuk localhost, untuk menggantikan sertifikat
yang dibuat oleh XAMPP, dan sertifikat ini akan kita tandatangani sendiri dengan CAkey
(private key) kita.
Perintah dibawah ini digunakan untuk membuat sebuah sertifikat REQuest, privateKEY.
Semuanya dalam format *.pem. Nantinya, localhost-req.pem ini akan dikirimkan ke CA agar
nanti ditandatangani (dan kalau ROOT CA, Anda harus bayar), nantinya CA akan menghasilkan
.CRT, yang CRT ini berikut dengan localhost-key.pem (private key) akan diinstall ke Apache.
1. ketikan perintah berikut ini C:xamppapachebinopenssl req -new -nodes -out
localhost-req.pem -keyout private/localhost-key.pem -config
./openssl.cnf (enter)
Kemudian masukan informasi yang dibutuhkan oleh sertifikat.
Organization Name (company) [Universitas Islam Negeri Sultan Syarif Kasim]:
Organizational Unit Name (department, division) []:IT Department
Email Address []:windirohmaheny@gmail.com
Locality 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
Menandatangani Sertifikat Request
Sebagai CA, Anda harus menandatangani seluruh request (yang valid) dari organisasi
Anda. Kali ini, kita menandatangani sertifikat request dari server localhost, dimana si localhost
ini telah memberikan berkas localhost-req.pem kepada kita.
Sekarang, jika ingin membuat snake-oil certificate, kita sendiri yang menjadi CA dan
menandatangani sertifikat request tadi.
Biasanya perintah ssl tidak mau jalan apabila kita belum mengsetting path nya.
Adapaun perintah untuk mengsetting path agar memasukkan direktori C:xamppapachebin
adalah :
set path=C:xamppapachebin;%PATH% (enter)
Setelah selesai menyeting path untul ssl maka selanjutnya yang akan kita lakukan adalah
menandatangani sertifikat request dari localhost-req.pem tadi, gunakan perintah:
openssl ca -out localhost.crt.pem -config ./openssl.cnf -infiles localhost-
req.pem (enter)
Using configuration from ./openssl.cnf
Loading 'screen' into random state - done
Enter pass phrase for ./private/cakey.pem:[masukkan password privatekeyCA Anda]
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
organizationName :PRINTABLE:'Universitas Islam Negeri Sultan Syarif Kasim'
organizationalUnitName :PRINTABLE:'IT Department'
localityName :PRINTABLE:'Pekanbaru'
stateOrProvinceName :PRINTABLE:'Riau'
countryName :PRINTABLE:'ID'
commonName :PRINTABLE:'localhost'
Certificate is to be certified until Jan 1 08:56:03 2027 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
Setelah melewati tahap ini, Anda akan memiliki sebuah CRT, localhost.crt.pem yang
dapat Anda letakkan ke server localhost Anda. Jangan lupa bahwa Apache juga membutuhkan
private KEY untuk localhost ini.
Meletakkan CRT dan KEY ke Apache
Setelah Anda sukses membuat CRT dan KEY, sekarang Anda harus meletakkanya ke
XAMPP. Jika XAMPP di install di drive C:, maka coba navigasi ke folder
C:xamppapacheconf
Letakkan CRT ke folder ssl.crt
Dan KEY ke ssl.key
Setelah itu, jangan lupa diganti konfigurasi Apache agar menggunakan sertifikat baru yang Anda
buat. Konfigurasi yang harus diganti biasanya terletak di folder extra, cari berkas httpd-ssl.conf
Kemudian ganti dengan sertifikat yang baru :
Restart XAMPP, sekarang Anda telah menggunakan sertifikat yang baru.
Menginstall Sertifikat CA.
Setelah berhasil Anda buat, sertifikat public key CA yang Anda buat tadi (CAcert.pem)
harus Anda install dahulu ke SELURUH komputer yang nantinya akan menggunakan sertifikat
yang kita tanda tangani. Menginstallnya cukup sekali saja. Internet Explorer dan Google Chrome
menggunakan mekanisme yang sama, sedangkan Mozilla Firefox menggunakan database root
CA sendiri, jadi harus di install juga (lagi) di Firefox.
Adapun langkah - langkah untuk menginstall sertifikat CA adalah sebagai berikut :
1. Buka Web Browser anda. (disini penulis menggunakan Mozila Firefox), kemudian pilih
Tools » Option » Advance » Encryption » View Certificates
2. lalu installkan sertifikat yang telah kita buat kedalam web browser dengan cara
mengimportkan sertifikat yang telah kita buat.
3. Disini penulis akan mengimportkan sertifikat dari windi.rohma.com
4. untuk melihat detail dari sertifikat yang telah kita install maka kita tinggal
menekan view.
Sekalipun telah di install, koneksi https kita tetap akan tersilang di Google Chrome, tetapi
tidak apa-apa, dan sedikit lebih baik daripada yang keluar adalah pesan Error koneksi tidak
privat, walaupun kita tahu koneksi itu privat.

More Related Content

What's hot

Menciptakan Sertifikat SSL dengan OpenSSL
Menciptakan Sertifikat SSL dengan OpenSSLMenciptakan Sertifikat SSL dengan OpenSSL
Menciptakan Sertifikat SSL dengan OpenSSLMunir Putra
 
Tutorial membuat virtual host+ssl
Tutorial membuat virtual host+sslTutorial membuat virtual host+ssl
Tutorial membuat virtual host+sslwiny setya ningrum
 
Tiara ramadhani, sitem terdistibusi, final project, 2017
Tiara ramadhani, sitem terdistibusi, final project, 2017Tiara ramadhani, sitem terdistibusi, final project, 2017
Tiara ramadhani, sitem terdistibusi, final project, 2017Tiara Ramadhani
 
How to creat virtual host + ssl
How to creat virtual host + sslHow to creat virtual host + ssl
How to creat virtual host + sslDAFIT SYAHPUTRA
 
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10manafhsb
 
Final project virtual hosts + ssl
Final project virtual hosts + sslFinal project virtual hosts + ssl
Final project virtual hosts + ssldevinta sari
 
Tutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppTutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppYoga Pratama Putra
 
Tutorial mengganti sertfikat ssl xampp
Tutorial mengganti sertfikat ssl xamppTutorial mengganti sertfikat ssl xampp
Tutorial mengganti sertfikat ssl xamppaidul azmi
 
Tutorial mengganti sertfikat ssl xampp virtual Hosts
Tutorial mengganti sertfikat ssl xampp virtual HostsTutorial mengganti sertfikat ssl xampp virtual Hosts
Tutorial mengganti sertfikat ssl xampp virtual Hostsaidul azmi
 
Laporan 6
Laporan 6Laporan 6
Laporan 6hudakds
 
SSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSSSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSibnudhoank
 
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5akbarfak
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringMay OneNine
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linuxiRoot Inc.
 
Tutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppTutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppNadia Chairunissa
 

What's hot (19)

Tutorial ca
Tutorial caTutorial ca
Tutorial ca
 
Menciptakan Sertifikat SSL dengan OpenSSL
Menciptakan Sertifikat SSL dengan OpenSSLMenciptakan Sertifikat SSL dengan OpenSSL
Menciptakan Sertifikat SSL dengan OpenSSL
 
Tutorial membuat virtual host+ssl
Tutorial membuat virtual host+sslTutorial membuat virtual host+ssl
Tutorial membuat virtual host+ssl
 
Tiara ramadhani, sitem terdistibusi, final project, 2017
Tiara ramadhani, sitem terdistibusi, final project, 2017Tiara ramadhani, sitem terdistibusi, final project, 2017
Tiara ramadhani, sitem terdistibusi, final project, 2017
 
How to creat virtual host + ssl
How to creat virtual host + sslHow to creat virtual host + ssl
How to creat virtual host + ssl
 
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10
Cara install apache, mysql, php, dan phpmyadmin pada freebsd 10
 
Final project virtual hosts + ssl
Final project virtual hosts + sslFinal project virtual hosts + ssl
Final project virtual hosts + ssl
 
Tutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppTutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xampp
 
Tutorial mengganti sertfikat ssl xampp
Tutorial mengganti sertfikat ssl xamppTutorial mengganti sertfikat ssl xampp
Tutorial mengganti sertfikat ssl xampp
 
Tutorial mengganti sertfikat ssl xampp virtual Hosts
Tutorial mengganti sertfikat ssl xampp virtual HostsTutorial mengganti sertfikat ssl xampp virtual Hosts
Tutorial mengganti sertfikat ssl xampp virtual Hosts
 
Konfigurasi debian
Konfigurasi debianKonfigurasi debian
Konfigurasi debian
 
Laporan 6
Laporan 6Laporan 6
Laporan 6
 
Squid indonesia
Squid indonesiaSquid indonesia
Squid indonesia
 
Soal ujikom 2013
Soal ujikom 2013Soal ujikom 2013
Soal ujikom 2013
 
SSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSSSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPS
 
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5
Memblokir situs dengan squid proxy di linux debian server By: Fakhri akbar CC5
 
Arisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoringArisnb proxy-squid-monitoring
Arisnb proxy-squid-monitoring
 
Perintah dasar linux
Perintah dasar linuxPerintah dasar linux
Perintah dasar linux
 
Tutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xamppTutorial membuat sertifikat ssl menggunakan xampp
Tutorial membuat sertifikat ssl menggunakan xampp
 

Viewers also liked

Una Gran Batalla en las Piedras
Una Gran Batalla en las PiedrasUna Gran Batalla en las Piedras
Una Gran Batalla en las Piedrasanitadalmas
 
Condições e motivações da expansão portuguesa
Condições e motivações da expansão portuguesaCondições e motivações da expansão portuguesa
Condições e motivações da expansão portuguesaMaria Gomes
 
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...nomascalculos
 
INDEVA-Range Liftdevices
INDEVA-Range LiftdevicesINDEVA-Range Liftdevices
INDEVA-Range LiftdevicesChristian
 
Tecnicas de evaluacion
Tecnicas de evaluacionTecnicas de evaluacion
Tecnicas de evaluacionAngie Lara
 
Relacion de libros_usados_en_cada_materia
Relacion de libros_usados_en_cada_materiaRelacion de libros_usados_en_cada_materia
Relacion de libros_usados_en_cada_materiapedropedritopedrote
 
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.Pierrot Caron
 
River Medina restoration report
River Medina restoration reportRiver Medina restoration report
River Medina restoration reportJoshua Day
 
Evaluación Expo Educa
Evaluación Expo EducaEvaluación Expo Educa
Evaluación Expo Educaanitadalmas
 
Осигуряване на трафик за сайта
Осигуряване на трафик за сайтаОсигуряване на трафик за сайта
Осигуряване на трафик за сайтаeTel (Bulgaria)
 

Viewers also liked (13)

Una Gran Batalla en las Piedras
Una Gran Batalla en las PiedrasUna Gran Batalla en las Piedras
Una Gran Batalla en las Piedras
 
Condições e motivações da expansão portuguesa
Condições e motivações da expansão portuguesaCondições e motivações da expansão portuguesa
Condições e motivações da expansão portuguesa
 
Roma Asterix
Roma AsterixRoma Asterix
Roma Asterix
 
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...
Costo - Efectividad del Tratamiento Preventivo con Citrato de Potasio para la...
 
03.06 bonos i (bb)
03.06 bonos i (bb)03.06 bonos i (bb)
03.06 bonos i (bb)
 
INDEVA-Range Liftdevices
INDEVA-Range LiftdevicesINDEVA-Range Liftdevices
INDEVA-Range Liftdevices
 
Tecnicas de evaluacion
Tecnicas de evaluacionTecnicas de evaluacion
Tecnicas de evaluacion
 
Relacion de libros_usados_en_cada_materia
Relacion de libros_usados_en_cada_materiaRelacion de libros_usados_en_cada_materia
Relacion de libros_usados_en_cada_materia
 
Seguridad vial
Seguridad vialSeguridad vial
Seguridad vial
 
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.
LEÇON 11 – Mes pensées in-signifiantes me montrent un monde in-signifiant.
 
River Medina restoration report
River Medina restoration reportRiver Medina restoration report
River Medina restoration report
 
Evaluación Expo Educa
Evaluación Expo EducaEvaluación Expo Educa
Evaluación Expo Educa
 
Осигуряване на трафик за сайта
Осигуряване на трафик за сайтаОсигуряване на трафик за сайта
Осигуряване на трафик за сайта
 

Similar to SSL Sertifikat

Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)
Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)
Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)Apridila Anggita Suri
 
Rizki tugas produktif tkj
Rizki tugas produktif tkjRizki tugas produktif tkj
Rizki tugas produktif tkjrizkijunot
 
Instalasi ssh server
Instalasi ssh serverInstalasi ssh server
Instalasi ssh serverOcto Ayomy
 
Virtual host and certificate authority
Virtual host and certificate authorityVirtual host and certificate authority
Virtual host and certificate authorityAhmad Sayuti
 
Virtualhost+ssl
Virtualhost+sslVirtualhost+ssl
Virtualhost+sslchayo rona
 
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)ApriyantoGafur
 
Squid proxy-server
Squid proxy-serverSquid proxy-server
Squid proxy-serverDwi Wahyudi
 
Pembahasan soal ukk tkj paket 1 2012
Pembahasan soal ukk tkj paket 1 2012Pembahasan soal ukk tkj paket 1 2012
Pembahasan soal ukk tkj paket 1 2012fmraihan
 
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...slempase
 
Konfigurasi server debian
Konfigurasi server debianKonfigurasi server debian
Konfigurasi server debianAgung Sakepris
 
SSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSSSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSMuhammad Ibnu Wardana
 
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)Mark Thalib
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLLusiana Diyan
 

Similar to SSL Sertifikat (18)

Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)
Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)
Tutorial Certificate Authority (CA) Public Key Infrastructure (PKI)
 
Rizki tugas produktif tkj
Rizki tugas produktif tkjRizki tugas produktif tkj
Rizki tugas produktif tkj
 
Instalasi ssh server
Instalasi ssh serverInstalasi ssh server
Instalasi ssh server
 
Virtual host and certificate authority
Virtual host and certificate authorityVirtual host and certificate authority
Virtual host and certificate authority
 
Pki
PkiPki
Pki
 
Virtualhost+ssl
Virtualhost+sslVirtualhost+ssl
Virtualhost+ssl
 
Konfigurasi web server
Konfigurasi web serverKonfigurasi web server
Konfigurasi web server
 
Presentasi (2).pptx
Presentasi (2).pptxPresentasi (2).pptx
Presentasi (2).pptx
 
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)
TugasII SO2 Install Apache, PHP Dan MySQL Pada CentOS 7 (LAMP)
 
Squid proxy-server
Squid proxy-serverSquid proxy-server
Squid proxy-server
 
Dokumentasi Gammu
Dokumentasi GammuDokumentasi Gammu
Dokumentasi Gammu
 
Pembahasan soal ukk tkj paket 1 2012
Pembahasan soal ukk tkj paket 1 2012Pembahasan soal ukk tkj paket 1 2012
Pembahasan soal ukk tkj paket 1 2012
 
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...
Konfigurasi pc server dan pc route6r pada lks nasional xiii jakarta tahun 201...
 
Tugas os 2 ke II
Tugas os 2 ke IITugas os 2 ke II
Tugas os 2 ke II
 
Konfigurasi server debian
Konfigurasi server debianKonfigurasi server debian
Konfigurasi server debian
 
SSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPSSSL (Security Socket Layer) and HTTPS
SSL (Security Socket Layer) and HTTPS
 
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQL
 

SSL Sertifikat

  • 1. UJIAN AKHIR SEMESTER (UAS) / FINAL PROJECT VirtualHost + SSL MODUL oleh: WINDI ROHMA HENY 1145305427 JURUSAN SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SULTAN SYARIF KASIM RIAU PEKANBARU 2017
  • 2. Menjalankan CMD sebagai Administrator Cara 3 (Menjalankan CMD melalui Windows + R) 1. Klik tombol windows yang ada pada keyboard + R lalu ketikan CMD. 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. CMD yang telah dijalankan sebagai administrator akan memiliki judul Administrator: seperti terlihat pada gambar berikut:
  • 3. BERKAS HOST Host file digunakan oleh sistem operasi untuk meng-override settingan DNS yang diberikan oleh DNS Server. Pada Microsoft Windows, host file terdapat pada. %WINDIR%System32Driversetchosts Misalnya C:WindowsSystem32driversetchosts Disini kita perlu hak akses sebagai administrator untuk dapat mengedit file hosts untuk menambahkan alamat IP kita. Sebagai contoh dalam modul ini penulis akan menambahkan alamat IP 127.0.0.0 dengan DNS rahmad.riansyah.com pada file hosts. Adapun langkah - langkah pengerjaanya adalah sebagai berikut. 1. Buka CMD, Lalu ketikan perintah notepad WindowsSystem32driversetchosts lalu klik enter. 2.Setelah anda menekan enter maka secara otomatis CMD akan membuka file hosts. lalu yang perlu kita lakukan adalah menambahkan 127.0.0.1 windi.com pada baris bagian bawah.
  • 4. 3.Setelah selesai menambahkan 127.0.0.1 rahmad.riansyah.com pada baris bagian bawah maka pilih file » save. 4.Setelah anda selesai menyimpan konfigurasi yang telah anda lakukan langkah selanjutnya adalah kita melakukan pengujian apakah berkash hosts tersebut telah berhasil ditambahkan atau belum, adapaun cara yang kita gunakan adalah dengan perintah ping rahmad.riansyah.com pada CMD.
  • 5. Setting VirtualHost dengan Apache (XAMPP) Salah satu HTTP Daemon yang paling banyak digunakan adalah apache. http://httpd.apache.org/ Apache mendukung VirtualHost, dokumentasi resmi dari Apache 2.4 untuk VirtualHost ada di sini: http://httpd.apache.org/docs/2.4/vhosts/ http://httpd.apache.org/docs/2.4/mod/core.html#virtualhost dan http://httpd.apache.org/docs/2.4/vhosts/name-based.html Setelah berhasil membuat berkas hosts, maka yang selanjutnya akan kita lakukan adalah mensetting virtualhost. adapun langkah - langkah dalam penyetingan VirtualHost pada apache adalah sebagai berikut : 1. Tambahkan settingan pada berkas httpd.conf, biasanya berkas ini berada pada C:xamppapacheconfhttpd.conf (jika Anda menginstal xampp di drive C)
  • 6. 2.Lalu tambahkan baris berikut di akhir: NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin kampar@gmail.com 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"
  • 7. Maksud perintah di atas adalah meng-enable 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 untuk VirtualHost ini jika orang mengakses localhost atau localhost.localdomain maka apache akan memberikan DocumentRoot "C:/xampp/htdocs" 2. Selanjutnya buatlah sebuah folder sites-enabled pada direktori conf dengan perintah mkdir C:xamppapacheconfsites-enabled
  • 8. 3.Kemudian buat sebuah berkas di dalam folder sites-enabled tersebut notepad C:xamppapacheconfsites-enabledwindi.rohma.conf 4.Kemudian akan muncul pesan peringatan dari notepad bahwa dia tidak bisa menemukan windi.rohma dan akan membuat file baru dengan nama windi.rohma .
  • 9. Setelah file rahmad.riansyah berhasil di buat maka tambahkan baris berikut. <VirtualHost *:80> ServerAdmin admin@windi.rohma DocumentRoot "C:/xampp/vhosts/windi.rohma/public_html" ServerName windi.rohma ServerAlias www.windi.rohma ErrorLog "C:/xampp/vhosts/windi.rohma/logs/error.log" CustomLog "C:/xampp/vhosts/windi.rohma/logs/access.log" combined </VirtualHost> <Directory "C:/xampp/vhosts/rahmad.riansyah/public_html"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory>
  • 10. 5. Kemudaian kita buat direktori vhosts untuk meletakan logs dan tempat penyimpanan website yang akan kita buat (public_html) 1. mkdir C:xamppvhosts 2. mkdir C:xamppvhostswindi.rohma 3. mkdir C:xamppvhostswindi.rohmalogs 4. mkdir C:xamppvhostswindi.rohmapublic_html 6. Jangan lupa untuk menambahkan rahmad.riansyah ke berkas host Anda, notepad C:WindowsSystem32driversetchosts
  • 11. Kemudian Tambahkan 127.0.0.1 windi.com dan 127.0.0.1 windi.rohma
  • 12. 7.Sekarang, restart Apache Anda dengan menekan tombol Stop, tunggu sebentar, lalu start. Kalau belum dijalankan, cukup di start saja. Sekarang, seharusnya Apache Anda sudah memiliki setidaknya dua buah Document Root: ● yang pertama di "C:/xampp/htdocs" untuk http://localhost;
  • 13. ● yang kedua di "C:/xampp/vhosts/windi.rohma/public_html" jika ada yang mengakses http://windi.rohma Setelah proses restart selesai, seharusnya kita sudah bisa menjalankan http://windi.rohma namun tampilanya masih akan seperti ini.
  • 14. Mengganti Sertifikat SSL XAMPP 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. Komputer lain yang ada diantara Anda dan server dapat melihat nomor Kartu Kredit Anda, username dan passwords, dan informasi sensitive lainnya bila hal ini tidak dienkripsi dengan Sertifikat SSL. Ketika sertifikat SSL digunakan, informasi menjadi tidak dapat terbaca oleh siapapun kecuali ke server yang memang dituju saat mengirim informasi tersebut. Hal ini melindungi informasi tersebut dari hackers dan pencuri identitas. Otentikasi (Authentication) Selain juga enkripsi, sertifikat SSL juga menyediakan otentikasi. Ini artinya Anda dapat lebih pasti dalam mengirimkan informasi ke server yang benar-benar valid dan bukan malah ke kriminal server . Mengapa ini begitu sangat penting ? Sifat dasar dari internet artinya bahwa pelanggan Anda akan lebih sering dalam mengirimkan informasi yang melewati beberapa jumlah komputer. Setiap dari komputer ini bisa berpura-pura menjadi website Anda dan mengelabui pengguna Anda untuk mengirimkan informasi mereka ke komputer tersebut. Hal ini hanya dapat dihindari dengan menggunakan Public Key Infrastructure (PKI), dan mendapatkan sertifikat SSL dari penyedia SSL terpercaya. Dalam modul kali ini penulis berperan sebagai CA (Certificate Authority) yang akan menandatangani sertifikat sendiri serta merubah sertifikat SSL yang dimiliki oleh XAMPP. langkah - langkah yang akan kita lakukan akan terbagi menjadi beberapa tahapan : 1. Perisapan 2. Membuat Sertifikat CA 3. Membuat Sertifikatt Untuk Localhost
  • 15. 4. Menandatangani Sertifikat Request 5. Meletakan CRT dan Key Ke Apache 6. Menginstall sertifikat CA Persiapan 1. Buka CMD, lalu ketikan perintah cd (enter) 2.Lalu buat folder baru dengan nama sslcert, untuk membuat direktori menggunakan CMD ketikan Perintah mkdir. mkdir sslcert (enter) 3. Kemudian masuk kedalam folder sslcert dengan perintah cd sslcert (enter)
  • 16. 4.Setelah berada pada folder sslcert, langkah selanjutnya adalah membuat 2 folder baru, yaitu folder certs dan private. ketikan perintah mkdir certs private (enter) Folder certs nantinya untuk menampung semua sertifikat yang dihasilkan dan folder private untuk menyimpan semua private-key kita. 5.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)
  • 17. 6.Kemudian Buat sebuah berkas baru, namanya certindex.txt untuk menampung daftar sertifikat yang telah kita tandatangani. ketikan perintah notepad certindex.txt (enter) Apabila muncul pesan peringatan seperti pada gambar dibawah ini maka klik Yes, peringatan tersebut muncul karna file certindex belum ada, dan notepad akan membuat file tersebut.
  • 18. 7.Sekarang buat konfigurasi OpenSSL kita, dengan perintah notepad openssl.cnf (enter) Apabila muncul pesan peringatan seperti pada gambar sebelumnya maka klik saja Yes. lalu copy-paste baris baris berikut : # # OpenSSL configuration file. # # Establish working directory. dir = . [ ca ] default_ca = CA_default [ CA_default ]
  • 19. serial = $dir/serial database = $dir/certindex.txt new_certs_dir = $dir/certs certificate = $dir/cacert.pem private_key = $dir/private/cakey.pem default_days = 3650 #default_md = md5 default_md = sha1 preserve = no email_in_dn = no nameopt = default_ca certopt = default_ca policy = policy_match [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional [ req ] default_bits = 2048 # Size of keys default_keyfile = key.pem # name of generated keys #default_md = md5 # message digest algorithm default_md = sha1 # message digest algorithm string_mask = nombstr # permitted characters distinguished_name = req_distinguished_name req_extensions = v3_req [ req_distinguished_name ] # Variable name Prompt string #------------------------- ---------------------------------- 0.organizationName = Organization Name (company) organizationalUnitName = Organizational Unit Name (department, division) emailAddress = Email Address emailAddress_max = 40 localityName = Locality Name (city, district) stateOrProvinceName = State or Province Name (full name) countryName = Country Name (2 letter code) countryName_min = 2 countryName_max = 2
  • 20. commonName = Common Name (hostname.com, IP, or your name) commonName_max = 64 # Default values for the above, for consistency and less typing. # Variable name Value #------------------------ ------------------------------ 0.organizationName_default = Universitas Islam Negeri Sultan Syarif Kasim localityName_default = Pekanbaru stateOrProvinceName_default = Riau countryName_default = ID [ v3_ca ] basicConstraints = CA:TRUE subjectKeyIdentifier = hash authorityKeyIdentifier = keyid:always,issuer:always [ v3_req ] basicConstraints = CA:FALSE subjectKeyIdentifier = hash
  • 21. Membuat Sertifikat CA Sebagai kepala unit IT di organisasi Anda, Anda harus bisa menandatangani sertifikat seluruh server. Untuk itu, Anda harus memiliki dahulu sebuah sertifikat (KEY, privateKEY) yang digunakan untuk menandangani seluruh sertifikat request (CSR) dari seluruh unit yang lain. Sekarang, kita buat sertifikat PKI untuk CA kita, yang nantinya akan digunakan oleh perusahaan / sekolah / universitas Anda untuk menandatangani seluruh sertifikat di kantor / lab / kampus. adapun langkah - langkah untuk membuat sertifikat PKI untuk CA adalah sebagai berikut : 1. ketikan perintah berikut : C:xamppapachebinopenssl.exe req -new -x509 -extensions v3_ca - keyout privateCAkey.pem -out CAcert.pem -days 3650 -config ./openssl.cnf (enter) 2.kemudian masukan password yang akan kita gunakan untuk sertifikat CA kita :
  • 22. Setelah berhasil memasukan password, maka kita akan diminta untuk memasukan informasi yang di butuhkan pada sertifikat. 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) []:SIF2014 Email Address []:windirohmaheny@gmail.com Locality 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) []:windi.com Dengan perintah di atas, kita sekarang sudah memiliki sebuah kunci private untuk menandatangani sertifikat. Kunci private tersebut disimpan di folder private, dengan nama CAkey.pem. Adapun berkas CAcert.pem adalah sertifikat public kita yang nanti akan digunakan oleh client untuk menginstal sertifikat kita. Membuat sertifikat untuk Localhost
  • 23. Selanjutnya, kita akan membuat sertifikat untuk localhost, untuk menggantikan sertifikat yang dibuat oleh XAMPP, dan sertifikat ini akan kita tandatangani sendiri dengan CAkey (private key) kita. Perintah dibawah ini digunakan untuk membuat sebuah sertifikat REQuest, privateKEY. Semuanya dalam format *.pem. Nantinya, localhost-req.pem ini akan dikirimkan ke CA agar nanti ditandatangani (dan kalau ROOT CA, Anda harus bayar), nantinya CA akan menghasilkan .CRT, yang CRT ini berikut dengan localhost-key.pem (private key) akan diinstall ke Apache. 1. ketikan perintah berikut ini C:xamppapachebinopenssl req -new -nodes -out localhost-req.pem -keyout private/localhost-key.pem -config ./openssl.cnf (enter) Kemudian masukan informasi yang dibutuhkan oleh sertifikat.
  • 24. Organization Name (company) [Universitas Islam Negeri Sultan Syarif Kasim]: Organizational Unit Name (department, division) []:IT Department Email Address []:windirohmaheny@gmail.com Locality 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 Menandatangani Sertifikat Request Sebagai CA, Anda harus menandatangani seluruh request (yang valid) dari organisasi Anda. Kali ini, kita menandatangani sertifikat request dari server localhost, dimana si localhost ini telah memberikan berkas localhost-req.pem kepada kita. Sekarang, jika ingin membuat snake-oil certificate, kita sendiri yang menjadi CA dan menandatangani sertifikat request tadi. Biasanya perintah ssl tidak mau jalan apabila kita belum mengsetting path nya. Adapaun perintah untuk mengsetting path agar memasukkan direktori C:xamppapachebin adalah : set path=C:xamppapachebin;%PATH% (enter)
  • 25. Setelah selesai menyeting path untul ssl maka selanjutnya yang akan kita lakukan adalah menandatangani sertifikat request dari localhost-req.pem tadi, gunakan perintah: openssl ca -out localhost.crt.pem -config ./openssl.cnf -infiles localhost- req.pem (enter) Using configuration from ./openssl.cnf Loading 'screen' into random state - done Enter pass phrase for ./private/cakey.pem:[masukkan password privatekeyCA Anda] Check that the request matches the signature Signature ok The Subject's Distinguished Name is as follows organizationName :PRINTABLE:'Universitas Islam Negeri Sultan Syarif Kasim' organizationalUnitName :PRINTABLE:'IT Department' localityName :PRINTABLE:'Pekanbaru'
  • 26. stateOrProvinceName :PRINTABLE:'Riau' countryName :PRINTABLE:'ID' commonName :PRINTABLE:'localhost' Certificate is to be certified until Jan 1 08:56:03 2027 GMT (3650 days) Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y Write out database with 1 new entries Data Base Updated Setelah melewati tahap ini, Anda akan memiliki sebuah CRT, localhost.crt.pem yang dapat Anda letakkan ke server localhost Anda. Jangan lupa bahwa Apache juga membutuhkan private KEY untuk localhost ini. Meletakkan CRT dan KEY ke Apache Setelah Anda sukses membuat CRT dan KEY, sekarang Anda harus meletakkanya ke XAMPP. Jika XAMPP di install di drive C:, maka coba navigasi ke folder C:xamppapacheconf
  • 27. Letakkan CRT ke folder ssl.crt Dan KEY ke ssl.key
  • 28. Setelah itu, jangan lupa diganti konfigurasi Apache agar menggunakan sertifikat baru yang Anda buat. Konfigurasi yang harus diganti biasanya terletak di folder extra, cari berkas httpd-ssl.conf Kemudian ganti dengan sertifikat yang baru :
  • 29. Restart XAMPP, sekarang Anda telah menggunakan sertifikat yang baru. Menginstall Sertifikat CA. Setelah berhasil Anda buat, sertifikat public key CA yang Anda buat tadi (CAcert.pem) harus Anda install dahulu ke SELURUH komputer yang nantinya akan menggunakan sertifikat yang kita tanda tangani. Menginstallnya cukup sekali saja. Internet Explorer dan Google Chrome
  • 30. menggunakan mekanisme yang sama, sedangkan Mozilla Firefox menggunakan database root CA sendiri, jadi harus di install juga (lagi) di Firefox. Adapun langkah - langkah untuk menginstall sertifikat CA adalah sebagai berikut : 1. Buka Web Browser anda. (disini penulis menggunakan Mozila Firefox), kemudian pilih Tools » Option » Advance » Encryption » View Certificates 2. lalu installkan sertifikat yang telah kita buat kedalam web browser dengan cara mengimportkan sertifikat yang telah kita buat.
  • 31. 3. Disini penulis akan mengimportkan sertifikat dari windi.rohma.com 4. untuk melihat detail dari sertifikat yang telah kita install maka kita tinggal menekan view.
  • 32. Sekalipun telah di install, koneksi https kita tetap akan tersilang di Google Chrome, tetapi tidak apa-apa, dan sedikit lebih baik daripada yang keluar adalah pesan Error koneksi tidak privat, walaupun kita tahu koneksi itu privat.