how to creat virtual host + ssl

Post on 13-Apr-2017

51 Views

Category:

Presentations & Public Speaking

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

How To CreatVirtualHost + SSL

BY:

DAFIT SYAHPUTRANIM.11453101968

PROGRAM STUDI SISTEM INFORMASIFAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SULTAN SYARIF KASIM RIAUT.A 2016 - 2017

LANGKAH-LANGKAH

1. Menjalankan CMD sebagai administrator

» Pilih Accessories » Command Prompt » Klik Kanan Pada Command Prompt » Run as Administrator.

CMD yang telah dijalankan sebagai administrator akan memiliki judul Administrator: seperti terlihat pada gambar berikut:

2. Kita lakukan pengujian dengan menjalankan perintah SET USPerintah SET US disini gunanya hanya untuk menampilkan Environment Variable yang dimulai

dengan huruf US.

BERKAS HOST

 Host file digunakan oleh sistem operasi untuk meng-override settingan DNS yang diberikan oleh DNS

Server

3. Buka CMD, Lalu ketikan perintah notepad \Windows\System32\drivers\etc\hosts lalu klik enter.

4. Setelah anda menekan enter maka secara otomatis CMD akan membuka file hosts. lalu yang perlu kita lakukan adalah menambahkan 127.0.0.1 dafitsyahputra.com pada baris bagian bawah.

(Sebelum Ditambahkan)

(Sesudah di Ditambahkan)

Setelah selesai menambahkan 127.0.0.1 dafitsyahputra.com pada baris bagian bawah maka pilih file » save.

5. Selanjutnya masukkan perintah ping dafitsyahputra.com pada CMD untuk melakukan pengujian apakah berkash hosts tersebut telah berhasil ditambahkan atau belum

Setting VirtualHost dengan Apache (XAMPP)

6. Tambahkan settingan pada berkas httpd.conf, biasanya berkas ini berada pada C:\xampp\apache\conf\

httpd.conf (jika Anda menginstal xampp di drive C)

7. Lalu tambahkan baris berikut di akhir:

NameVirtualHost *:80<VirtualHost *:80> ServerAdmin dafit201@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"

8. Selanjutnya buatlah sebuah folder

sites-enabled pada direktori conf dengan

perintah:

mkdir C:\xampp\apache\conf\sites-enabled

notepad C:\xampp\apache\conf\sites-enabled\rahmad.riansyah.conf

9. Kemudian buat sebuah berkas di

dalam folder sites-enabled tersebut :

notepad C:\xampp\apache\conf\sites-enabled\dafitsyahputra.conf

Kemudian akan muncul pesan peringatan dari notepad bahwa dia tidak bisa menemukan dafitsyahputra dan akan

membuat file baru dengan nama dafitsyahputra .

10. Setelah file dafitsyahputra berhasil di buat maka tambahkan

baris berikut.<VirtualHost *:80> ServerAdmin admin@ dafitsyahputra DocumentRoot "C:/xampp/vhosts/ dafitsyahputra/public_html" ServerName dafitsyahputra ServerAlias www. dafitsyahputra ErrorLog "C:/xampp/vhosts/ dafitsyahputra/logs/error.log" CustomLog "C:/xampp/vhosts/ dafitsyahputra/logs/access.log" combined

 </VirtualHost><Directory "C:/xampp/vhosts/ dafitsyahputra/public_html"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted

</Directory>

11. Kemudaian kita buat direktori vhosts untuk meletakan logs

dan tempat penyimpanan website yang akan kita buat (public_html)

mkdir C:\xampp\vhostsmkdir C:\xampp\vhosts\dafitsyahputramkdir C:\xampp\vhosts\\dafitsyahputra\logsmkdir C:\xampp\vhosts\\dafitsyahputra\

public_html

12. Jangan lupa untuk menambahkan

dafitsyahputra ke berkas host Anda:

Notepad C:\Windows\System32\drivers\etc\hos ts

13. Kemudian Tambahkan 127.0.0.1 dafitsyahputra dan

127.0.0.1 dafitsyahputra.com

14. Sekarang, restart Apache Anda dengan menekan tombol Stop, tunggu sebentar, lalu start.

Kalau belum dijalankan, cukup di start saja.

15. Langkah terakhir kita tinggal mengisi

folder public_html dengan

website. disini contoh website yang

saya tampilkan adalah

website kepegawaian.

Mengganti Sertifikat SSL XAMPP

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. Perisapan2. Membuat Sertifikat CA3. Membuat Sertifikatt Untuk Localhost4. Menandatangani Sertifikat Request5. Meletakan CRT dan Key Ke Apache6. 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/serialdatabase = $dir/certindex.txtnew_certs_dir = $dir/certscertificate = $dir/cacert.pemprivate_key = $dir/private/cakey.pemdefault_days = 3650#default_md = md5default_md = sha1preserve = noemail_in_dn = nonameopt = default_cacertopt = default_capolicy = policy_match

 [ policy_match ]countryName = matchstateOrProvinceName

= matchorganizationName = matchorganizationalUnitName = optionalcommonName = 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 

[ 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 

# 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: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:\xampp\apache\bin\openssl.exe req -new -x509 -extensions v3_ca -keyout

private\CAkey.pem -out CAcert.pem -days 3650 -config ./openssl.cnf (enter)

2. kemudian masukan password yang akan kita gunakan untuk sertifikat CA kita :

Organization Name (company) [Universitas Islam Negeri Sultan Syarif Kasim]:

Organizational Unit Name (department, division) []:SIF2014Email Address []:dafit201@gmail.comLocality 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) []:dafitsyahputracom

  

 

 

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:\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 []:dafit201@gmail.comLocality 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

1. Adapaun perintah untuk mengsetting path agar memasukkan direktori C:\xampp\apache\bin adalah :set path=C:\xampp\apache\bin;%PATH% (enter)

2. 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 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]:y1 out of 1 certificate requests certified, commit? [y/n]yWrite 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:\xampp\apache\conf

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 :

Menginstall Sertifikat CA.

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 dafitsyahputra.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.

top related