Tugas keamanan sistem informasi membuat ca hazahara
1. Tutorial
by:Hazahara sha’dah
Menjalankan CMD sebagai Administrator
Berkas Host
Setting VirtualHost dengan Xampp
Mengganti Sertifikat SSL XAMPP
Membuat HTTPS
- Localhost
- Domain
Jurusan Sistem Informasi
Fakultas Sains dan Teknologi
3. Cara Membuat 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 yang digunakan.
Sebagai contoh dalam modul ini penulis akan menambahkan alamat IP 127.0.0.0
dengan DNS hazahara.com pada file hosts.
4. Langkah – langkah sebagai berikut :
Buka CMD sebagai administrator
Lalu ketikan perintah
notepad WindowsSystem32driversetchost
Klik enter
5. Setelah anda menekan enter maka secara otomatis CMD akan membuka file hosts.
Tambahkan host baru di bagian paling bawah
ex :
127.0.0.1 hazahara.com
Save (ctrl +s)
6. periksa host anda dengan perintah ping
Ex : ping hazahara.com
Jika berhasil maka hasilnya akan seperti ini :
7. Setting VirtualHost dengan 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
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.
Caranya sebagai berikut :
8. Xampp yang digunakan versi :
xampp-win32-5.6.28-0-VC11
Buka CMD sebagai administrator
Ketikan perintah:
notepad C:xamppapacheconfhttpd.conf
(jika Anda menginstal xampp di drive C)
9. Tambahkan baris berikut di baris 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"
10. Buat folder sites-enabled pada direktori conf dengan perintah:
mkdir C:xamppapacheconfsites-enabled
Kemudian buat sebuah berkas di dalam folder sites-enabled tersebut
notepad C:xamppapacheconfsites-enabledtata.com.conf
<VirtualHost *:80>
ServerAdmin admin@rahmad.riansyah
DocumentRoot "C:/xampp/vhosts/rahmad.riansyah/public_html"
ServerName rahmad.riansyah
ServerAlias www.rahmad.riansyah
ErrorLog "C:/xampp/vhosts/rahmad.riansyah/logs/error.log"
CustomLog "C:/xampp/vhosts/rahmad.riansyah/logs/access.log" combined
</VirtualHost>
<Directory "C:/xampp/vhosts/rahmad.riansyah/public_html">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
Save
11.
12. Buat direktori vhosts untuk meletakan logs dan public_html (tempat penyimpanan website)
Ketikkan perintah dibawah pada CMD : (berkas host tata)
mkdir C:xamppvhosts
mkdir C:xamppvhoststata
mkdir C:xamppvhoststatalogs
mkdir C:xamppvhoststatapublic_html
Jangan lupa tambahkan berkas host
notepad C:WindowsSystem32driversetchosts
13. Lalu restart ulang apache
pada xampp
Jika berhasil maka apache
akan jalan
Jika tidak maka ada
kesalahan pada settingan
host , atau di httpd.conf
14. Cara membuktikan Apache sudah memiliki
dua buah Document Root:
C:/xampp/htdocs untuk
http://localhost
Bukak mozila firefox
Ketikan localhost
Hasil
15. Cara membuktikan Apache sudah memiliki
dua buah Document Root:
"C:/xampp/vhosts/hazahara/public_h
tml" jika ada yang mengakses
http://hazahara
Hasil:
16. 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.
17. 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.
18. langkah - langkah membuat sertifikat yang sudah di tandatangani CA
- Perisapan
- Membuat Sertifikat CA
- Membuat Sertifikatt Untuk Localhost
- Menandatangani Sertifikat Request
- Meletakan CRT dan Key Ke Apache
- Menginstall sertifikat CA
19. - Buka CMD sebagai administrator
- Ketikan perintah cd (enter)
- Buat folder sslcert
- Ketikan perintah mkdir sslcert (enter)
- Masuk kedalam folder sslcert
- Ketikan perintah cd sslcert (enter)
20. 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.
21. 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)
22. 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.
Lalu Save (ctrl + s)
23. Sekarang buat konfigurasi OpenSSL
Ketikan 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.
26. [ 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
27. # 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
Save (ctrl +s)
28. 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.
29. Cara membuat sertifikat CA :
ketikan perintah berikut :
C:xamppapachebinopenssl.exe req -
new -x509 -extensions v3_ca -keyout
privateCAkey.pem -out CAcert.pem -
days 3650 -config ./openssl.cnf
(enter)
Kemudian masukan password yang akan kita
gunakan untuk sertifikat CA kita
penting !!
hati – hati dalam memasukan password karena di
cmd tidak kelihatan hasil password yang kita
buat, jadi harus diperhatikan
30. 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 []:hazahara.hh@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) []:hazahara.com
31. 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.
32. 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.
33. Cara membuat https localhost :
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 []:hazahara.hh@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
34. 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.
35. Langkah – langkah
menandatangani sertifikat CA :
Buka CMD sebgai administrator
Masuk kedalam folder sslcert
Ketikan perintah cd sslcert (enter)
Setelah masuk kedalam folder sslcert, kita setting
PATH
Ketikan perintah 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)
36. Langkah – langkah
menandatangani sertifikat CA :
Using configuration from ./openssl.cnf
Loading 'screen' into random state - done
Enter pass phrase for ./private/cakey.pem:[masukkan password
privatekey CA 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 Jun 2 17:33:09 2025 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
37. Langkah – langkah menandatangani sertifikat CA :
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
instalkan CA yang sudah ditandatangani ke apache, mozila firefox, google chrom, internet
explorer kita
38. Langkah – langkah menginstal SA yang sudah di tandatangani :
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
39. Letakan localhost.crt.pem ke apache yang terdapat di :
C :/xampp/apache/conf/ssl.cert
Letakan juga localhost-key.pem yang terdapat di :
C:/sslcert/private
Pindahkan ke :
C :/xampp/apache/conf/ssl.key
40. 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
Lalu ganti server menjadi localhost
41. Masuk ke mozila
Pilih options
Pilih advance
View certificates
43. • Jika sertifikat kita berhasil di instalkan maka jika di akses
https://localhost maka akan keluar seperti ini
44. Membuat sertifikat CA yang benama
(nama.com)
Pada tutorial ini menggunakan nama
domain hazahara.com. Carannya sama
dengan membuat sertifikat untuk
localhost tinggal mengganti localhost
menjadi hazahara.com
Langkah – langkah nya :
Buka CMD sebagai administrator
Masuk ke sslcert
Lalu buat sertifikat baru dengan
ketikan perintah :
openssl ca -out
hazahara.com.crt.pem -
config ./openssl.cnf -
infiles hazahara.com-
req.pem (enter)
45. Lalu tandatangani sertifikat
Sama caranya dengan
menandatangani sertifikat
localhost sebelumnya
Jika berhasil maka akan seperti
ini