TUTORIAL
VIRTUAL HOST
& SSL
Isi dari tutorial ini akan
berkaitan dengan bagaimana
cara membuat virtual host dan
SSL
Langkah pertama yang harus
kita lakukan dalam membuat
Virtual Host + SSL adalah bisa
menjalankan CMD sebagai
Administrator sehingga kita bisa
menjalankan perintah,
mengubah, atau menjalankan
konfigurasi dari suatu file atau
program memerlukan hak akses
(Administrator).
Host file digunakan oleh sistem operasi untuk meng
override settingan DNS yang diberikan oleh DNS
server. Pada 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.
1. Buka CMD sebagai Admnistrator
2. Jalankan cmd sebagai user
Ketikkan perintah berikut
1. cd/
2. cd users
3. dir
4. cd ANDRI HAIRIYADI (tergantung
nama pc anda)
Lalu ketikkan kode berikut
Notepad WindowsSystem32driversetchosts
Setelah anda menekan enter maka
secara otomatis CMD akan membuka
file hosts. lalu yang perlu kita lakukan
adalah menambahkan 127.0.0.1
nama.com pada baris bagian bawah.
Setelah selesai, silahkan save
 File > save ( ctrl + s )
Setelah di save, langkah
selanjutnya adalah melakukan
pengujian apakah berkas host
tersebut telah berhasil
ditambahkan, adapun cara yang
kita gunakan adalah “ping
nama.com
Apabila hasilnya sama dengan
gambar disamping, artinya
berkas host anda berhsil
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 :
Tambahkan settingan pada berkas
httpd.conf, biasanya berkas ini berada
pada
C:xamppapacheconfhttpd.conf (jika
Anda menginstal xampp di drive C)
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"
Lalu tambahkan kode berikut pada
baris pang bawah
Selanjutnya buatlah sebuah 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-enablednama.conf
Kemudian akan muncul pesan
peringatan dari notepad bahwa dia
tidak bisa menemukan andri.conf
dan akan membuat file baru dengan
nama andri.conf .
Klik yes
<VirtualHost *:80>
ServerAdmin admin@rahmad.riansyah
DocumentRoot "C:/xampp/vhosts/andri/public_html"
ServerName andri
ServerAlias www. andri
ErrorLog "C:/xampp/vhosts/ andri /logs/error.log"
CustomLog "C:/xampp/vhosts/ andri /logs/access.log"
combined
</VirtualHost>
<Directory "C:/xampp/vhosts/ andri /public_html">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
Masukkan kode berikut :
Kemudaian kita buat direktori vhosts untuk
meletakan logs dan tempat penyimpanan
website yang akan kita buat (public_html)
Enter
Enter
Enter
Enter
Jangan lupa untuk menambahkan rahmad.riansyah
ke berkas host Anda,
Notepad C:WindowsSystem32driversetchosts
Setelah itu, silahkan restart
apache anda
Setelah proses restart selesai, seharusnya kita sudah bisa menjalankan
http://andri namun tampilanya masih akan seperti ini.
Tampilan seperti ini disebabkan karna
kita belum mengisi file pada
public_html
langkah terakhir kita
tinggal mengisi
folder public_html
dengan website.
disini contoh website
yang saya tampilkan
adalah website
kepegawaian.
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.
langkah - langkah yang akan kita lakukan akan terbagi menjadi
beberapa tahapan :
Perisapan
Membuat Sertifikat CA
Membuat Sertifikatt Untuk Localhost
Menandatangani Sertifikat Request
Meletakan CRT dan Key Ke Apache
Menginstall sertifikat CA
Buka CMD, lalu ketikkan perintah
cd
Lalu buat folder baru dengan nama sslcert,
untuk membuat direktori menggunakan CMD
ketikan Perintah mkdir. mkdir sslcert
Kemudian masuk kedalam folder
sslcert dengan perintah cd sslcert
Setelah berada pada folder sslcert, langkah selanjutnya
adalah membuat 2 folder baru, yaitu folder certs dan
private. ketikan perintah mkdir certs private
ketikan perintah : echo 100001 >serial
selanjutnya ketikan : copy con serial
100001 maka akan muncul pesan
<Yes/No/All> :ketik All
lalu tekan ctrl + z (pada keyboard)
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.
Kemudian Buat sebuah berkas baru, namanya
certindex.txt untuk menampung daftar sertifikat
yang telah kita tandatangani.
ketikan perintah
notepad certindex.txt
Apabila muncul pesan
peringatan , maka klik botton
yes
Sekarang buat konfigurasi OpenSSL kita,
dengan perintah notepad openssl.cnf
Copy kan perintah slide
selanjutnya
# 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
SELANJUTNYA
Hasilnya pada openssl.cnf anda
Sekarang, kita akan membuat sertifikat
PKI untuk CA kita, yang nantinya akan
digunakan oleh perusahaan / sekolah /
universitas Anda untuk menandatangani
seluruh sertifikat di kantor / lab / kampus.
ketikan perintah berikut :
C:xamppapachebinopenssl.exe req -
new -x509 -extensions v3_ca -keyout
privateCAkey.pem -out CAcert.pem -
days 3650 -config ./openssl.cnf
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.
ketikan perintah berikut ini
C:xamppapachebinopenssl req -new -nodes -
out localhost-req.pem -keyout private/localhost-
key.pem -config ./openssl.cnf
kemudian masukan informasi yang dibutuhkan
oleh sertifikat.
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%
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
1
2
3
4
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
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 :
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.
Buka Web Browser anda. (disini
penulis menggunakan Mozila
Firefox),
1
2
1
2
lalu installkan sertifikat
yang telah kita buat
kedalam web browser
dengan cara
mengimportkan sertifikat
yang telah kita buat.
Disini penulis akan
mengimportkan
sertifikat dari
andrihost.com
untuk melihat detail
dari sertifikat yang
telah kita install
maka kita tinggal
menekan view.
SEKIAN TUTORIAL
VIRTUAL HOST DAN CSS
SEMOGA ADA MANFAATNYA
WASSALAMUALAIKUM
andri hairiyadi
andrihairiyadi@gmail.com
andri_hairiyadi

Tutorial virtual host dan ssl

  • 1.
    TUTORIAL VIRTUAL HOST & SSL Isidari tutorial ini akan berkaitan dengan bagaimana cara membuat virtual host dan SSL
  • 2.
    Langkah pertama yangharus kita lakukan dalam membuat Virtual Host + SSL adalah bisa menjalankan CMD sebagai Administrator sehingga kita bisa menjalankan perintah, mengubah, atau menjalankan konfigurasi dari suatu file atau program memerlukan hak akses (Administrator).
  • 3.
    Host file digunakanoleh sistem operasi untuk meng override settingan DNS yang diberikan oleh DNS server. Pada 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.
  • 4.
    1. Buka CMDsebagai Admnistrator 2. Jalankan cmd sebagai user Ketikkan perintah berikut 1. cd/ 2. cd users 3. dir 4. cd ANDRI HAIRIYADI (tergantung nama pc anda)
  • 5.
    Lalu ketikkan kodeberikut Notepad WindowsSystem32driversetchosts
  • 6.
    Setelah anda menekanenter maka secara otomatis CMD akan membuka file hosts. lalu yang perlu kita lakukan adalah menambahkan 127.0.0.1 nama.com pada baris bagian bawah. Setelah selesai, silahkan save  File > save ( ctrl + s )
  • 7.
    Setelah di save,langkah selanjutnya adalah melakukan pengujian apakah berkas host tersebut telah berhasil ditambahkan, adapun cara yang kita gunakan adalah “ping nama.com Apabila hasilnya sama dengan gambar disamping, artinya berkas host anda berhsil
  • 8.
    Setelah berhasil membuatberkas hosts, maka yang selanjutnya akan kita lakukan adalah mensetting virtualhost. adapun langkah - langkah dalam penyetingan VirtualHost pada apache adalah sebagai berikut : Tambahkan settingan pada berkas httpd.conf, biasanya berkas ini berada pada C:xamppapacheconfhttpd.conf (jika Anda menginstal xampp di drive C)
  • 9.
    NameVirtualHost *:80 <VirtualHost *:80> ServerAdminkampar@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" Lalu tambahkan kode berikut pada baris pang bawah
  • 10.
    Selanjutnya buatlah sebuahfolder sites- enabled pada direktori conf dengan perintah mkdir C:xamppapacheconfsites- enabled
  • 11.
    Kemudian buat sebuahberkas di dalam folder sites-enabled tersebut notepad C:xamppapacheconfsites-enablednama.conf
  • 12.
    Kemudian akan munculpesan peringatan dari notepad bahwa dia tidak bisa menemukan andri.conf dan akan membuat file baru dengan nama andri.conf . Klik yes
  • 13.
    <VirtualHost *:80> ServerAdmin admin@rahmad.riansyah DocumentRoot"C:/xampp/vhosts/andri/public_html" ServerName andri ServerAlias www. andri ErrorLog "C:/xampp/vhosts/ andri /logs/error.log" CustomLog "C:/xampp/vhosts/ andri /logs/access.log" combined </VirtualHost> <Directory "C:/xampp/vhosts/ andri /public_html"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory> Masukkan kode berikut :
  • 14.
    Kemudaian kita buatdirektori vhosts untuk meletakan logs dan tempat penyimpanan website yang akan kita buat (public_html) Enter Enter Enter Enter
  • 15.
    Jangan lupa untukmenambahkan rahmad.riansyah ke berkas host Anda, Notepad C:WindowsSystem32driversetchosts
  • 16.
    Setelah itu, silahkanrestart apache anda
  • 17.
    Setelah proses restartselesai, seharusnya kita sudah bisa menjalankan http://andri namun tampilanya masih akan seperti ini. Tampilan seperti ini disebabkan karna kita belum mengisi file pada public_html
  • 18.
    langkah terakhir kita tinggalmengisi folder public_html dengan website. disini contoh website yang saya tampilkan adalah website kepegawaian.
  • 19.
    SSL memastikan datatransaksi 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. langkah - langkah yang akan kita lakukan akan terbagi menjadi beberapa tahapan : Perisapan Membuat Sertifikat CA Membuat Sertifikatt Untuk Localhost Menandatangani Sertifikat Request Meletakan CRT dan Key Ke Apache Menginstall sertifikat CA
  • 20.
    Buka CMD, laluketikkan perintah cd
  • 21.
    Lalu buat folderbaru dengan nama sslcert, untuk membuat direktori menggunakan CMD ketikan Perintah mkdir. mkdir sslcert
  • 22.
    Kemudian masuk kedalamfolder sslcert dengan perintah cd sslcert
  • 23.
    Setelah berada padafolder sslcert, langkah selanjutnya adalah membuat 2 folder baru, yaitu folder certs dan private. ketikan perintah mkdir certs private
  • 24.
    ketikan perintah :echo 100001 >serial selanjutnya ketikan : copy con serial 100001 maka akan muncul pesan <Yes/No/All> :ketik All lalu tekan ctrl + z (pada keyboard) 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.
  • 25.
    Kemudian Buat sebuahberkas baru, namanya certindex.txt untuk menampung daftar sertifikat yang telah kita tandatangani. ketikan perintah notepad certindex.txt Apabila muncul pesan peringatan , maka klik botton yes
  • 26.
    Sekarang buat konfigurasiOpenSSL kita, dengan perintah notepad openssl.cnf
  • 27.
    Copy kan perintahslide selanjutnya
  • 28.
    # OpenSSL configurationfile. # # 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 SELANJUTNYA
  • 29.
  • 30.
    Sekarang, kita akanmembuat sertifikat PKI untuk CA kita, yang nantinya akan digunakan oleh perusahaan / sekolah / universitas Anda untuk menandatangani seluruh sertifikat di kantor / lab / kampus.
  • 31.
    ketikan perintah berikut: C:xamppapachebinopenssl.exe req - new -x509 -extensions v3_ca -keyout privateCAkey.pem -out CAcert.pem - days 3650 -config ./openssl.cnf
  • 32.
    kemudian masukan passwordyang akan kita gunakan untuk sertifikat CA kita
  • 33.
    setelah berhasil memasukanpassword, maka kita akan diminta untuk memasukan informasi yang di butuhkan pada sertifikat.
  • 34.
    ketikan perintah berikutini C:xamppapachebinopenssl req -new -nodes - out localhost-req.pem -keyout private/localhost- key.pem -config ./openssl.cnf
  • 35.
    kemudian masukan informasiyang dibutuhkan oleh sertifikat.
  • 36.
    Sebagai CA, Andaharus 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.
  • 37.
    Adapaun perintah untukmengsetting path agar memasukkan direktori C:xamppapachebin adalah : set path=C:xamppapachebin;%PATH%
  • 38.
    setelah selesai menyetingpath 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 1 2 3 4
  • 39.
    Setelah Anda suksesmembuat CRT dan KEY, sekarang Anda harus meletakkanya ke XAMPP. Jika XAMPP di install di drive C:, maka coba navigasi ke folder C:xamppapacheconf
  • 40.
    Letakkan CRT kefolder ssl.crt
  • 41.
  • 42.
    Setelah itu, janganlupa diganti konfigurasi Apache agar menggunakan sertifikat baru yang Anda buat. Konfigurasi yang harus diganti biasanya terletak di folder extra, cari berkas httpd-ssl.conf
  • 43.
  • 44.
    Setelah berhasil Andabuat, 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.
  • 45.
    Buka Web Browseranda. (disini penulis menggunakan Mozila Firefox), 1 2
  • 47.
    1 2 lalu installkan sertifikat yangtelah kita buat kedalam web browser dengan cara mengimportkan sertifikat yang telah kita buat.
  • 48.
  • 49.
    untuk melihat detail darisertifikat yang telah kita install maka kita tinggal menekan view.
  • 50.
    SEKIAN TUTORIAL VIRTUAL HOSTDAN CSS SEMOGA ADA MANFAATNYA
  • 51.