Tutorial membuat sertifikat autoriti pada xamppfadhilla elita
pada tutorial ini terdapat langkah - langkah membuat sertifikat autoriti mulai dari pengaturan host, v-host , dan pembuatan CA menggunakan xampp, sampai penginstalannya di mesin pencarian Laptop kita.
Tutorial membuat sertifikat autoriti pada xamppfadhilla elita
pada tutorial ini terdapat langkah - langkah membuat sertifikat autoriti mulai dari pengaturan host, v-host , dan pembuatan CA menggunakan xampp, sampai penginstalannya di mesin pencarian Laptop kita.
cara membuat virtual host, cara mengganti sertifikat SSL, cara membuat sertifikat CA, menandatangani sertifikat request dan meng-install sertifikat CA pada browser.
Describe how to create Certificate Authority, Certificate for Localhost, Certificate for VirtualHost and Signing the Certificate has been created by our self. Then Running HTTPS in xampp.
cara membuat virtual host, cara mengganti sertifikat SSL, cara membuat sertifikat CA, menandatangani sertifikat request dan meng-install sertifikat CA pada browser.
Describe how to create Certificate Authority, Certificate for Localhost, Certificate for VirtualHost and Signing the Certificate has been created by our self. Then Running HTTPS in xampp.
Virtual host and certificate authorityAhmad Sayuti
slide ini merupakan tutorial membuat virtual host dengan apache pada xampp serta bagaimana membuat sertifikat ssl (https) untuk localhost dan virtualhost
OwnCloud adalah software suite yang berfokus pada layanan penyimpanan data berbasis lokasi yang independen (cloud storage) dan termasuk kategori Infrastructur as a Services (IaaS) Cloud Computing
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
Seperti:
C:WindowsSystem32driversetchosts
diperlukan hak akses sebagai administrator untuk bisa
mengedit file hosts menambahkan alamat IP.
Contoh: dalam modul ini saya akan menambahkan alamat IP
127.0.0.0 dengan DNS endang.com pada file hosts.
4. Langkah – langkah sebagai berikut :
Buka CMD sebagai administrator
Lalu ketikan perintah
notepad WindowsSystem32driversetchost
Klik enter
5. LANJUTAN...
Setelah menekan enter
maka CMD akan
membuka file hosts.
Tambahkan host baru di
bagian paling bawah
contoh:
127.0.0.1 endang.com
Save (ctrl +s)
6. LANJUTAN...
periksa host yang telah di buat dengan perintah ping
Contoh : ping endang.com
Jika berhasil maka hasilnya akan seperti berikut:
7. SETTING VIRTUALHOST DENGAN XAMPP
HTTP Daemon yang paling banyak digunakan adalah apache.
http://httpd.apache.org/ Apache mendukung VirtualHost,
dokumentasi resmi dari Apache 2.4 untuk VirtualHost sebagai
berikut:
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 selanjutnya
akan di lakukan adalah mensetting virtualhost.
Caranya sebagai berikiut :
8. LANJUTAN...
Xampp menggunakan versi :
xampp-win32-5.6.15-1-VC11
Buka CMD sebagai administrator
Ketikan perintah:
notepad C:xamppapacheconfhttpd.conf
(jika Anda menginstal xampp di drive C)
9.
10. LANJUTAN...
Selanjutnya buatlah folder sites-enabled pada
direktori conf menggunakan perintah:
mkdir C:xamppapacheconfsites-enabled
Kemudian buat sebuah berkas di dalam folder sites-enabled
notepad C:xamppapacheconfsites-enabledtata.com.conf
<VirtualHost *:80>
ServerAdmin admin@endang
DocumentRoot "C:/xampp/vhosts/endangpublic_html"
ServerName endang
ServerAlias www.endang
ErrorLog "C:/xampp/vhosts/endang/logs/error.log"
CustomLog "C:/xampp/vhosts/endang/logs/access.log" combined
</VirtualHost>
<Directory "C:/xampp/vhosts/endang/public_html">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
Save
12. Buatlah direktori vhosts untuk meletakan logs dan
public_html (tempat penyimpanan website)
Ketikkan perintah dibawah pada CMD : (berkas
host endang)
mkdir C:xamppvhosts
mkdir C:xamppvhostsendang
mkdir C:xamppvhostsendanglogs
mkdir C:xamppvhostsendangpublic_html
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
Ketelitian sangat diperlukan dalam mengetikan perintah di CMD atau di notepadnya
14. CARA MEMBUKTIKAN APACHE SUDAH MEMILIKI DUA
BUAH DOCUMENT ROOT:
:/xampp/htdocs untuk http://localhost
Bukak mozila firefox
Ketikan localhost
Cara membuktikan Apache sudah memiliki dua buah
Document Root:
"C:/xampp/vhosts/tata/public_html" jika ada yang
mengakses http://endang
15. 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 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.
16. LANJUTAN..
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.
17. Langkah membuat sertifikat yang selesai di
tandatangani CA
- Perisapan
- Membuat Sertifikat CA
- Membuat Sertifikatt Untuk Localhost
- Menandatangani Sertifikat Request
- Meletakan CRT dan Key Ke Apache
- Menginstall sertifikat CA
18. - 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)
19. Kemudian saat 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.
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)
20. 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)
21. Langkah berikutnya adalah membuat konfigurasi
OpenSSL
Ketik perintah notepad openssl.cnf (enter)
bila muncul pesan peringatan seperti pada
gambar sebelumnya maka klik saja Yes.
Lalu copy-paste baris baris berikut :
#
# OpenSSL configuration file.
#
# Establish working directory.
24. [ 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
25. # 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)
26. 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.
27. 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
Peringatan !!!
hati – hati pada saat memasukan password karena di cmd tidak terlihat
hasil password yang telah dibuat, jadi harus diperhatikan !
28. setelah berhasil memasukan password, maka 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 []:endangsetiaa14@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) []:endang.com
29. 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.
30. Membuat sertifikat untuk Localhost
Selanjutnya, 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 ditandatangani (dan
kalau ROOT CA, Anda harus bayar), kemudian CA
akan menghasilkan .CRT, yang CRT ini berikut
dengan localhost-key.pem (private key) akan
diinstall ke Apache.
31. 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 []:endangsetiaa14@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
32. Menandatangani Sertifikat Request
Sebagai CA, Anda harus menandatangani seluruh
request (yang valid) dari organisasi Anda. Kali ini,
kita akan menandatangani sertifikat request dari
server localhost, dimana si localhost ini telah
memberikan berkas localhost-req.pem kepada kita.
jika ingin membuat snake-oil certificate, kita sendiri
yang menjadi CA dan menandatangani sertifikat
request.
33. 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)
34. 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:’SIF E'
localityName :PRINTABLE:'Pekanbaru'
stateOrProvinceName :PRINTABLE:'Riau'
countryName :PRINTABLE:'ID'
commonName :PRINTABLE:'localhost'
Certificate is to be certified until jan 7 08:35:29 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
35. 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
36. 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
37. 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
38. 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
Masuk ke mozila
Pilih options
Pilih advance
View certificates
40. Lalu tambahkan pada berkas httpd-ssl.conf ini :
<VirtualHost _default_:443>
# General setup for the virtual host
DocumentRoot "C:/xampp/htdocs"
ServerName endang.com:443
ServerAdmin adminssl@ endang.com.com
ErrorLog "C:/xampp/apache/logs/error.log"
TransferLog "C:/xampp/apache/logs/access.log"
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile "conf/ssl.crt/ endang.com.crt.pem"
SSLCertificateKeyFile "conf/ssl.key/ endang.com-key.pem"
<FilesMatch ".(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:/xampp/apache/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
41. Instalkan sertifikat tadi ke mozila firefox/google
chrom/internet explorer
Caranya sama seperti sebelumnya
sertifikat berhasil di install maka di ketikan
https://endang.com