tutorial ca

41
KEMANANAN SISTEM INFORMASI Tutorial CA by endang setianingsih Menjalankan CMD sebagai Administrator Berkas Host Setting VirtualHost dengan Xampp Mengganti Sertifikat SSL XAMPP Membuat HTTPS - Localhost - Domain

Upload: endang-setianingsih

Post on 16-Apr-2017

27 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Tutorial ca

KEMANANAN SISTEM INFORMASITutorial CA by endang setianingsih

Menjalankan CMD sebagai Administrator

Berkas Host Setting VirtualHost dengan Xampp Mengganti Sertifikat SSL XAMPP Membuat HTTPS - Localhost - Domain

Page 2: Tutorial ca

CMD SEBAGAI ADMINISTRATOR

Cari CMD di searchklik kanan lalu pilih Run as Administrator

Page 3: Tutorial ca

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%\System32\Drivers\etc\hosts  Seperti:C:\Windows\System32\drivers\etc\hosts

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.

Page 4: Tutorial ca

Langkah – langkah sebagai berikut : Buka CMD sebagai administrator Lalu ketikan perintah notepad \Windows\System32\drivers\etc\host Klik enter

Page 5: Tutorial ca

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)

Page 6: Tutorial ca

LANJUTAN...

periksa host yang telah di buat dengan perintah ping

Contoh : ping endang.com Jika berhasil maka hasilnya akan seperti

berikut:

Page 7: Tutorial ca

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#virtualhosthttp://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 :

Page 8: Tutorial ca

LANJUTAN... Xampp menggunakan versi : xampp-win32-5.6.15-1-VC11 Buka CMD sebagai administrator Ketikan perintah:notepad C:\xampp\apache\conf\httpd.conf (jika Anda menginstal xampp di drive C)

Page 9: Tutorial ca
Page 10: Tutorial ca

LANJUTAN... Selanjutnya buatlah folder sites-enabled pada

direktori conf menggunakan perintah:mkdir C:\xampp\apache\conf\sites-enabled

Kemudian buat sebuah berkas di dalam folder sites-enablednotepad C:\xampp\apache\conf\sites-enabled\tata.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

Page 11: Tutorial ca

LANJUTAN...

Page 12: Tutorial ca

Buatlah direktori vhosts untuk meletakan logs dan public_html (tempat penyimpanan website)

Ketikkan perintah dibawah pada CMD : (berkas host endang)

mkdir C:\xampp\vhostsmkdir C:\xampp\vhosts\endangmkdir C:\xampp\vhosts\endang\logsmkdir C:\xampp\vhosts\endang\public_html tambahkan berkas host notepad C:\Windows\System32\drivers\etc\hosts

Page 13: Tutorial ca

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

Page 14: Tutorial ca

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

Page 15: Tutorial ca

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.

Page 16: Tutorial ca

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.

Page 17: Tutorial ca

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

Page 18: Tutorial ca

- 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)

Page 19: Tutorial ca

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)

Page 20: Tutorial ca

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)

Page 21: Tutorial ca

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.

Page 22: Tutorial ca

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

Page 23: Tutorial ca

[ policy_match ]countryName = matchstateOrProvinceName = matchorganizationName = matchorganizationalUnitName = optionalcommonName = suppliedemailAddress = 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

Page 24: Tutorial ca

[ 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 

Page 25: Tutorial ca

# 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 Save (ctrl +s)

Page 26: Tutorial ca

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.

Page 27: Tutorial ca

Cara 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) 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 !

Page 28: Tutorial ca

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 incorporatedinto 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 blankFor 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 []:[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) []:endang.com

Page 29: Tutorial ca

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.

Page 30: Tutorial ca

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.

Page 31: Tutorial ca

Cara membuat https localhost : 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) Kemudian masukan informasi yang dibutuhkan oleh sertifikat.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

Page 32: Tutorial ca

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.

Page 33: Tutorial ca

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:\xampp\apache\bin;%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)

Page 34: Tutorial ca

Langkah – langkah menandatangani sertifikat CA :Using configuration from ./openssl.cnfLoading 'screen' into random state - doneEnter pass phrase for ./private/cakey.pem:[masukkan password privatekey CA Anda]Check that the request matches the signatureSignature okThe Subject's Distinguished Name is as followsorganizationName :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]:y1 out of 1 certificate requests certified, commit? [y/n]yWrite out database with 1 new entriesData Base Updated

Page 35: Tutorial ca

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

Page 36: Tutorial ca

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:\xampp\apache\conf

Page 37: Tutorial ca

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

Page 38: Tutorial ca

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

Page 39: Tutorial ca

Letakan sertifikat ke xampp kita , caranya sama seperti sebelumnya

Page 40: Tutorial ca

Lalu tambahkan pada berkas httpd-ssl.conf ini :<VirtualHost _default_:443># General setup for the virtual hostDocumentRoot "C:/xampp/htdocs"ServerName endang.com:443ServerAdmin adminssl@ endang.com.comErrorLog "C:/xampp/apache/logs/error.log"TransferLog "C:/xampp/apache/logs/access.log"# SSL Engine Switch:# Enable/Disable SSL for this virtual host.SSLEngine onSSLCertificateFile "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>

Page 41: Tutorial ca

Instalkan sertifikat tadi ke mozila firefox/google chrom/internet explorer

Caranya sama seperti sebelumnya sertifikat berhasil di install maka di ketikan

https://endang.com