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
READ MORE - Multi Domain dan Virtual Host
READ MORE - Multi Domain dan Virtual Host

Tuesday, November 6, 2012

WEB SERVER (APACHE & PHP)

WEBSERVER (APACHE & PHP)

WebServer adalah software server yang menjadi tulang belakang dari World Wide Web(WWW). Web servermenunggu permintaan dari client yang menggunakan browser seperti netscapenavigator, Internet Explorer, Mozilla, dan program browser lainnya. Jikaada permintaan dari browser, maka web server akan memproses permintaan itu dankemudian memberikan hasil prosesnya berupa data yang diinginkan kembali kebrowser. Data ini mempunyaiformat yang standar disebut dengan format SGML ( Standard General MarkupLanguage). Data yang berupa format ini kemudian akan ditampilkan oleh browsersesuai dengan kemampuan browser itu. Contohnya ialah bila data yang dikirimberupa data gambar, browser yang hanya mampu menampilkan text (misalnya lynx)tidak akan mampu menampilkannya dan jika ada akan menampilkan alternatifnyasaja.
Web Server, untuk berkomunikasi dengan clientnya (webbrowser) mempunyai protokol sendiri yaitu HTTP (HyperText Transfer Protocol).Dengan protokol ini, komunikasi antar web server dengan clientnya (browser)dapat saling dimengerti dan lebih mudah. Seperti telah dijelaskan diatas,Standar format data pada World Wide Web adalah SGML. Tapi sudah menjadi halyang umum bahwa para pengguna internet lebih banyak menggunakan format HTML(HyperText Markup Language) karena penggunaannya yang lebih sederhana dan mudahdipelajari. Kata HyperText mempunyai arti bahwa seorang pengguna internetdengan web browsernya dapat membuka dan mambaca dokumen-dokumen yang ada dalamkomputernya atau bahkan komputer yang jauh tempatnya sekalipun. Hal inimemberikan cita rasa dari suatu proses yang tridimensional, artinya penggunainternet dapat membaca dari satu dokumen ke dokumen yang lain hanya denganmengklik beberapa bagian dari halaman-halaman dokumen (web) itu.
Proses yang dimulai dari permintaan webclient (browser),diterima web server, diproses, dan dikembalikan hasil prosesnya oleh web serverke webclient lagi dilakukan secara transparan. Setiap orang dapat dengan mudahmengetahui apa yang terjadi pada tiap-tiap proses. Secara garis besarnya webserver hanya memproses semua masukan yang diperolehnya dari web clientnya.

APACHEWEB SERVER
Banyak sekali software web server yang berada diinternet. Dengan berdasarkan pada 12 macam pertimbangan diatas, maka dapatdipilih software mana saja yang cocok dengan kebutuhan kita.Misalnya : Kitamemasang web server untuk keperluan suatu perusahaan jasa internet (ISP ), makapertimbangan yang harus diambil adalah apakah mereka menginginkan software yanggratis ataukomersial. Keuntungan dari software komersial adalah mereka punyadukungan teknis dan dokumentasi yang lengkap, sedang pada kebanyakan softwaregratis tidak punya. Namun ada juga software gratisan yang mempunyai dukunganteknis dari pembuatnya dan dengan dokumentasi yang lengkap. Salahsatu software web server gratisan seperti itu adalah Web server Apache. Webserver Apache mempunyai kelebihan dilihat dari beberapa pertimbangan diatas:
Apachetermasuk dalam kategori freeware (software gratisan)
Apachemudah sekali proses instalasinya jika dibanding web server lainnya
sepertiNCSA, IIS, dan lain-lain.
PHP PADA APACHEWEB SERVER
Apacheweb server mendukung penambahan modul-modul. Diantara modul yang sering dipakai adalah modul PHP. PHP(Personal Homep Page Tool) adalah salah satu jenis aalat yang digunakan untkmembuat halaman web anda menjadi lebih menarik, lebih aman, dan lebih dinamik.Pada dasrnya PHP miirip dengan bahsa script yang lainnya seperti asp,Javascript , Visual BASic atau yang lainnya, namun keuntungannya adalah padaPHP tidak diperlukan tambahan pada sisi webclient seperti halnya Javascript danVisual Basic script, sehingga lebih luas penggunaannya. Beberapa keunggulan PHPdibandingkan dengan yang lain :
Autentikasi http menggunakan PHP menggunakan fungsiheader() yang ada
dalam modul apache PHP.
Pembuatan file GIF menggunakan library GD yangdikompilasi saat
menginstall php.
PHP dapat menerima metoda upload file
Mendukung penggunaan cookie
Mendukung integrasi dengan database
Mendukung ekspresi regular seperti ereg(), ereg_replace()dan lainnya.
Penanganan kesalahan berdasarkan tingkat kesalahan.
D. LANGKAH -  LANGKAH PRAKTIKUM
Untuk membuat suatu webserver yang support php pada komputer anda sertamemeriksa instalasinya, langkah-langkah yang harus dilakukan adalah sebagai :
1.     Periksa koneksike gateway, ke dns server dan ke server repositori (ping)
2.     Install apache2 yang akandigunakan sebagai web server
            sudo apt-get install apache2                                                                       
3.     Jalankan apache2
            sudo /etc/init.d/apache2 restart
4.     Periksa dan catat hasilnya
nmap-p80 localhost
nmap-p80 10.17.0.198
5.     Install lynx
sudoapt-get install lynx            
6.     Browsing ke webyang anda buat
lynx 10.17.0.198
7.     Direktoritempat file website anda adalah /var/www/. Buatfile html di folder tersebut
cd/var/www/
sudonano index.html
Isikan
<html>
<head>
<title>WEBSERVER KELOMPOK</title>
</head>
<body>
            Isilah bagian ini. Sehingga menjadisebuah halaman website.
</body>
</html>
Savedan Keluar dari nano
8.     Browsingkembali ke website anda, apa yang ditampilkannya ?
lynxalamat ip 10.17.0.198
9.     Install PHP pada web server anda
            sudo apt-get install php5libapache2-mod-php5
10. Restart apache
sudo/etc/init.d/apache2 restart
11. Buat halamanphp dan letakkan pada direktori www anda
            cd/var/www/
            sudo nano test.php

Savedan keluar dari text editor
12.  Browsing kewebsite anda sambil menjalankan tcpdump catat tampilan dan hasil tcpdump
            lynx ip_komputer_anda/test.php

Hasil Dari Praktikum : 1 of 15 page
1.



2.


3.


4.

5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
READ MORE - WEB SERVER (APACHE & PHP)
READ MORE - WEB SERVER (APACHE & PHP)