Wednesday, November 21, 2012

Multi Domain dan Virtual Host



Multi Domain dan Virtual Host



Langkah Praktikum

Setting BIND (/etc/bind/named.conf.local)
$sudo nano /etc/bind/named.conf.local
Tambahkan zona baru untuk domain baru. Dalam contoh ini domain baru yang ditambahkan adalah jarkom1.com sedangkan domain lama adalah jarkom.com, Perhatikan kembali modul DNS Server




# zona domain jarkom.com
zone "jarkom.com" {
type master;
file "/etc/bind/zones/jarkom.com.db";
};

#zona domain jarkom1.com
zone "jarkom1.com" {
type master;
file "/etc/bind/zones/jarkom1.com.db";
};

#zona domain jarkom2.com
zone "jarkom2.com" {
type master;
file "/etc/bind/zones/jarkom2.com.db";
};

#zona domain jarkom.net
zone "jarkom.net" {
type master;
file "/etc/bind/zones/jarkom.net.db";
};

# DNS reverse
zone "0.17.10.in-addr.arpa" {
type master;
file "/etc/bind/zones/jarkom-rev.db";
};

Definisikan kembali zona domain yang baru dibuat dalam hal ini jarkom1.com, jarkom2.com dan jarkom.net
$sudo nano /etc/bind/zones/jarkom1.com.db

$TTL 3D
@ IN SOA ns.jarkom.com. admin.jarkom.com. (
2007062001
28800
3600
604800
38400
);
jarkom1.com IN NS ns.jarkom.com.

@ IN A 10.17.0.198

www IN A 10.17.0.198

TXT "Network Gateway"

Restart Bind
$sudo /etc/init.d/bind9 restart

Lakukan ping dan dig terhadap domain yang baru contoh jarkom.net atau jarkom2.com

Lakukan langkah yang sama untuk beberapa domain baru yang lain

Lakukan browsing ke domain-domain tersebut. Perhatikan bahwa semua domain akan menampilkan hasil yang sama. Agar setiap domain menampilkan tampilan sesuai dengan website masing-masing maka perlu dilakukan setting virtualhost pada apache yang terinstall.

Contoh terdapat 4 domain (jarkom.com, jarkom1.com, jarkom.net dan jarkom2.com). Maka harus ada 4 direktori yang akan menjadi tempat file-file website masing-masing.
jarkom.com terletak pada direktori /var/www
jarkom1.com terletak pada direktori /var/www/jarkom1
jarkom.net terletak pada direktori /var/www/jarkomnet
jarkom2.com terletak pada direktori /var/www/jarkom2
Kemudian buat file index.html dengan isi yang berbeda pada masing-masing direktori

Pembuatan direktori masing-masing domain :
$cd /var/www
$sudo mkdir jarkom1 jarkomnet jarkom2
$ls -l
$sudo chmod 755 jarkom jarkom1 jarkomnet jarkom2

Konfigurasi apache2.conf
$sudo nano /etc/apache2/apache2.conf
Isikan pada baris terakhir
ServerName 127.0.0.1
NameVirtualHost *:80

Buat file berikut dengan nama domain masing-masing pada direktori /etc/apache2/sites-available
$cd /etc/apache2/sites-available
$sudo nano jarkom1.com
Isikan

ServerName jarkom1.com
ServerAlias www.jarkom1.com
DocumentRoot /var/www/jarkom1 #Sesuai direktori yang telah kita tentukan
ErrorLog /var/log/apache2/jarkom1-error.log
CustomLog /var/log/apache2/jarkom1-access.log combined

Save dan Keluar dari teks editor. Lakukan langkah yang sama untuk domain lainnya (jarkom.net dan jarkom2.com)

Disable VirtualHost default dan enable domain yang baru
$sudo a2dissite default
$sudo a2ensite jarkom1.com
$sudo a2ensite jarkom.net
$sudo a2ensite jarkom2.com

Reload apache
$sudo /etc/init.d/apache2 reload

Lakukan browsing menggunakan lynx ke masing-masing domain atau gunakan komputer/laptop lain
lynx /var/www/index.html
lynx /var/www/jarkom1/index.html
lynx /var/www/jarkom2/index.html
lynx /var/www/jarkomnet/index.html
Hasil Praktikum

polsri@polsri:~$ ping jarkom.com
PING jarkom.com (10.17.0.198) 56(84) bytes of data
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=1 ttl=64 time=0.024 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=2 ttl=64 time=0.025 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=3 ttl=64 time=0.019 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=4 ttl=64 time=0.024 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=5 ttl=64 time=0.020 ms
^C
--- jarkom.com ping statistic ---
5 packets transmitted , 5 received, 0% packet loss, time 3997ms
rtt main /avg/max/mdev=0.019/0.022/0.025/0.004 ms
polsri@polsri:~$

polsri@polsri:~$ ping jarkom1.com
PING jarkom1.com (10.17.0.198) 56(84) bytes of data
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=1 ttl=64 time=0.023 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=2 ttl=64 time=0.021 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=3 ttl=64 time=0.020 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=4 ttl=64 time=0.018 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=5 ttl=64 time=0.020 ms
^C
--- jarkom1.com ping statistic ---
5 packets transmitted , 5 received, 0% packet loss, time 4000ms
rtt main /avg/max/mdev=0.018/0.020/0.023/0.004 ms
polsri@polsri:~$

polsri@polsri:~$ ping jarkom2.com
PING jarkom2.com (10.17.0.198) 56(84) bytes of data
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=1 ttl=64 time=0.022 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=2 ttl=64 time=0.024 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=3 ttl=64 time=0.016 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=4 ttl=64 time=0.019 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=5 ttl=64 time=0.017 ms
^C
--- jarkom2.com ping statistic ---
5 packets transmitted , 5 received, 0% packet loss, time 3999ms
rtt main /avg/max/mdev=0.016/0.019/0.024/0.005 ms
polsri@polsri:~$

polsri@polsri:~$ ping jarkom.net
PING jarkom.net (10.17.0.198) 56(84) bytes of data
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=1 ttl=64 time=0.023 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=2 ttl=64 time=0.025 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=3 ttl=64 time=0.026 ms
64 bytes from 5TCB.jarkom.com (10.17.0.198): icmp_reg=4 ttl=64 time=0.017 ms
64 bytes from 5CB.jarkom.com (10.17.0.198): icmp_reg=5 ttl=64 time=0.019 ms
^C
--- jarkom.net ping statistic ---
5 packets transmitted , 5 received, 0% packet loss, time 3999ms
rtt main /avg/max/mdev=0.017/0.022/0.026/0.003 ms

polsri@polsri:~$ dig jarkom.com
; < <> > DIG 9.6.1-P1 < <> > jarkom.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14635
;; flags: qr aa rd ra: QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;jarkom.com. IN A

;; ANSWER SECTION:
jarkom.com. 259200 IN A 10.17.0.198

;; AUTHORITY SECTION:
jarkom.com. 259200 IN A ns.jarkom.com

;; ADDITIONAL SECTION:
ns.jarkom.com. 259200 IN A 10.17.0.198

;; Query time: 2 msec
;; SERVER: 10.17.0.198#53(10.17.0.198)
;; WHEN : Thu Nov 6 07:41:17 2012
;; msg size rcvd: 77


polsri@polsri:~$ dig jarkom1.com
; < <> > DIG 9.6.1-P1 < <> > jarkom1.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28489
;; flags: qr aa rd ra: QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;jarkom1.com. IN A

;; ANSWER SECTION:
jarkom1.com. 259200 IN A 10.17.0.198

;; AUTHORITY SECTION:
jarkom1.com. 259200 IN A ns.jarkom.com

;; ADDITIONAL SECTION:
ns.jarkom.com. 259200 IN A 10.17.0.198

;; Query time: 2 msec
;; SERVER: 10.17.0.198#53(10.17.0.198)
;; WHEN : Thu Nov 6 07:42:11 2012
;; msg size rcvd: 85


polsri@polsri:~$ dig jarkom2.com
; < <> > DIG 9.6.1-P1 < <> > jarkom2.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35469
;; flags: qr aa rd ra: QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;jarkom2.com. IN A

;; ANSWER SECTION:
jarkom2.com. 259200 IN A 10.17.0.198

;; AUTHORITY SECTION:
jarkom2.com. 259200 IN A ns.jarkom.com

;; ADDITIONAL SECTION:
ns.jarkom.com. 259200 IN A 10.17.0.198

;; Query time: 2 msec
;; SERVER: 10.17.0.198#53(10.17.0.198)
;; WHEN : Thu Nov 6 07:42:36 2012
;; msg size rcvd: 85


polsri@polsri:~$ dig jarkom.net
; < <> > DIG 9.6.1-P1 < <> > jarkom.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13519
;; flags: qr aa rd ra: QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;jarkom.net. IN A

;; ANSWER SECTION:
jarkom.net. 259200 IN A 10.17.0.198

;; AUTHORITY SECTION:
jarkom.net. 259200 IN A ns.jarkom.com

;; ADDITIONAL SECTION:
ns.jarkom.com. 259200 IN A 10.17.0.198

;; Query time: 2 msec
;; SERVER: 10.17.0.198#53(10.17.0.198)
;; WHEN : Thu Nov 8 08:28:20 2012
;; msg size rcvd: 87
Penjelasan

Ketika selesai menambahkan domain, selanjutnya melakukan pengecekan apakah sudah terhubung dengan domain tersebut. Domain itu diantaranya jarkom.com, jarkom1.com, jarkom2.com dan jarkom.net. Gunakan perintah ping dan dig untuk mengujinya. Misalnya ping jarkom1.com. Maka jika domain tersebut mereply ping kita tadi, domain tersebut sudah dapat diakses atau telah terhubung. Untuk dig misalnya dig jarkom.net. Fungsinya untuk mengetahui alamat host yang digunakan.


Pada langkah 7 dan 8, akan dibuat beberapa direktori untuk masing-masing domain yang telah dibuat sebelumnya. Pada masing-masing direktori tersebut akan dimasukkan sebuah index.html yang berbeda-beda. File index.html itu sebagai berikut:

index.html pada /var/www

<html>
<head>
<title>WEB Kelompok 4 5CB</title>
</head>
<body>
<h1>Nama Saya Dedy</h1>
<h2>Nama Saya Via</h2>
<h3>Nama Saya Dovi</h3>
<h7>Nama Saya Wendy</h7>
</body>
</html>

index.html pada /var/www/jarkom1

<html>
<head><title>Kelompok 2 5CB</title></head>
<body>
Hai Kami Kelompok4 5CB
kelompok bengal
</body>
</html>

index.html pada /var/www/jarkom2

<html>
<head><title>Kelompok4 5CB</title>
</head>
<body>
<ol>
<li>D3dy</li>
<li>v1a</li>
<li>d0v1</li>
<li>W3ndy</li>
</ol>
</body>
</html>

index.html pada /var/www/jarkomnet

<html>
<head><title>Kelompok4 5CB:)</title></head>
<body>
<ol>
<li>dedy bae</li>
<li>via bae</li>
<li>dovi bae</li>
<li>wendi bae</li>
</ol>
</body>
</html>

Untuk menampilkan setiap index.html pada masing-masing direktori, gunakan perintah lynx.

lynx /var/www/index.html

WEB Kelompok4 5CB
Nama Saya dedy
Nama Saya via
Nama Saya dovi
Nama Saya wendy


lynx /var/www/jarkom1/index.html

Kelompok4 5CB
Hai Kami Kelompok4 5CB bengal



lynx /var/www/jarkom2/index.html

Kelompok4 5CB
1.D3dy
2.v1a
3.d0v1
4.W3ndy


lynx /var/www/jarkomnet/index.html

Kelompok 4 5CB:)
1. dedy
2. via
3. dovi
4. wendy


Penjelasan
Ketika file index.html telah dimasukkan pada setiap direktori, selanjutnya file tersebut akan ditampilkan melalui perintah lynx. Contoh lynx jarkom.com. Pemanggilan ini merupakan kombinasi antara DNS Server dan juga WEB Server yang telah dibuat sebelumnya. Pada saat perintah lynx /var/www dipanggil maka file index.html yang terdapat pada direktori itulah yang akan tampil pada layar. Sehingga file index.html yang telah dibuat sebelumnya pada direktori /var/www akan tampil pada layar sesuai yang telah diisikan pada tag html file index.html tersebut. Untuk Domain yang lain mempunyai kesamaan dalam pemanggilan dan akan membaca file index.html pada direktori /var/www/jarkom1, /var/www/jarkom2 dan /var/www/jarkomnet dan menampilkan hasil dari index.html yang terdapat didalam direktori tersebut.

Kesimpulan
Apache digunakan untuk mengkonfigurasi Virtual Host pada WEB Server
BIND digunakan untuk mengkonfigurasi DNS pada Multi Domain
Cara penampilan file index.html merupakan kombinasi dari DNS Server dan WEB Server

No comments:

Post a Comment