Selasa, 16 April 2013

Web Server & Proxy Server: Soal Web Server Modul 2

Kali ini saya akan menjelaskan tentang Web Server menggunakan UML atau yang biasa kita sebut User Mode Linux. 

Bagaimana cara membuat web server dengan UML?

1. Yang harus dilakukan adalah membuat routing dengan topologi jaringan sederhana yang hanya terdiri atas client router dan DMZ ( Web Server ) dengan menggunakan UML.

Tuliskan code ini ke dalam file .sh ( contoh : start.sh ) dan jalankan. maka akan terbuat 1 switch kemudian 1 router dan 2 komputer yang salah satunya akan dijadikan sebagai web server.



#!/bin/bash
uml_switch -unix switch > /dev/null < /dev/null &

xterm -T router -e linux ubd0=router,uml umid=router eth0=tuntap,,,10.151.70.73 eth1=daemon,,,switch &

xterm -T komputer1 -e linux ubd0=komputer1,uml umid=komputer1 eth0=daemon,,,switch mem=80M&

xterm -T komputer2 -e linux ubd0=komputer2,uml umid=komputer2 eth0=daemon,,,switch mem=80M&

Tuliskan code ini ke dalam file .sh ( contoh : stop.sh ) yang berbeda dari file .sh yang di atas, yang digunakan untuk menghentikan semua proses yang ada.
#!/bin/bash
uml_mconsole router halt

uml_mconsole komputer1 halt

uml_mconsole komputer2 halt

Setiap komputer memiliki konfigurasi yang berbeda dan akan dijelaskan di bawah ini : 
  • Setiap komputer virtual memiliki interfaces yang berbeda-beda. Untuk itu perlu diatur dengan cara mengetik "nano /etc/network/interfaces" dan kemudian edit isi dari setiap interface. Untuk interface komputer virtual yang lain bisa disesuaikan dengan interface dari router.
    C
    ontoh interface pada router:



  • Kemudian pada router ditambah pada file rc.local pada folder /etc seperti berikut
  • Kemudian lakukan restart pada networking interface dengan cara "service networking restart". Dan coba cek pada router anda dengan cara ping ip router anda.
2. Pada komputer virtual yang dijadikan sebagai web server, di install apache, mySQL, phpmyadmin

Pada komputer DMZ ( Web Server ) harus diinstall apache dengan cara mengetikkan "apt-get install apache2", menginstall mySQL dengan cara "apt-get install mysql-server" dan menginstall phpmyadmin dengan cara "apt-get install phpmyadmin".
Kemudian tiap komputer virtual harus di install lynx dengan cara "apt-get install lynx"

Sekarang kita akan masuk ke dalam kasus-kasus atau soal yang ada pada Modul 2

Soal 1:
DMZ akan digunakan sebagai Web Server. Terdapat 2 buah website yang ditangani oleh web server ini yaitu ip_anda:80, ip_anda:8080. Kemudian pada website  ip_anda:80  terdapat subdirektori /admin yang mana sebenarnya file-filenya terletak di /home/admin, berbeda dengan file-file lain yang terletak di /var/www.Ketika mengakses ip_anda:8080 user harus menginputkan username dan password (menggunakan .htaccess) Semua website tidak boleh menampilkan list direktori. Jadi jika tidak ada file index (index.html, index.php, default.asp) maka daftar file dan subdirektori yang ada tidak akan tampil. Ketika kita mengakses ip_anda:80/example maka akan diarahkan ke ip_anda:80/example/example.html



Jawaban: 


Pertama untuk yang port 8080, yang harus dilakukan adalah membuat konfigurasi pada apache yaitu pada sites-avalaible/default lebih tepatnya "nano /etc/apache2/sites-avalaible/default". Kemudian ganti code yang ada di file default menjadi seperti yang tampak pada gambar berikut.



Disitu terjadi penambahan pada:

Alias /admin "/home/admin"
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all

yang maksudnya digunakan untuk mengganti alamat /home/admin menjadi /admin pada saat diproses.



Untuk port 8080, agar bisa dilakukan authentication dengan username dan password yang telah didaftarkan bisa dilakukan dengan membuat file text baru dengan nama yang berbeda pada "/etc/apache2/sites-avalaible" dan mengisi nya dengan script yang tampak seperti gambar berikut.




Untuk isian authentication-nya, berada pada AllowOverride All karena yang digunakan adalah All jadi authentication juga masuk pada webserver jika memang terdapat authentication. Untuk mengatur agar ada authenticationnya yaitu dengan cara membuat file pada "/var/www" dengan nama .htaccess yang kemudian diisi dengan:


Dengan itu akan ada authentication pada setiap pembukaan web pada localhost:8080.



Kemudian untuk "Semua website tidak boleh menampilkan list direktori" dilakukan dengan menambahkan 2 line tulisan pada .htaccess yaitu seperti ini 





Soal 2: 


Umumnya file yang diakses http://www.something.com adalah file index.html atau index.php di folder htdocs (kalau di apache windows) atau di /var/www/html (untuk apache server linux). Nah, ada kalanya kita sebagai pemilik web server tersebut berkeinginan untuk memberikan fasilitas kepada user yakni berupa homepage mereka. Buatlah configurasi Web server agar memiliki fasilitas user dapat memiliki web pagenya sendiri (mod_userdir).



Jawaban:



-to be continued-

Web Server & Proxy Server: Soal Proxy Modul 2

Setelah menginstall squid3 pada virtual komputer yang bertindak sebagai proxy server, lakukan konfigurasi dengan cara mengedit dan/atau menambah konfigurasi dalam squid.conf yang terdapat dalam /etc/squid3/squid.conf. Ketikkan perintah berikut:
nano /etc/squid3/squid.conf

Ingat! Lakukan restart pada service squid3 setiap kali selesai mengedit/menambah konfigurasi dengan cara mengetikkan perintah service squid3 restart agar perubahan konfigurasi dapat diterapkan. 
  • Lakukan uncomment pada baris yang terdapat perintah: #http_access allow localnet
  • Pada tabel cache_proxy, edit alamat IP dengan menambahkan netmask 24 didahului dengan tanda '/' karena setting IP yang ditentukan menggunakan netmask tersebut.
  • Tambahkan konfigurasi di bawah tabel konfigurasi cache_proxy. Konfigurasi tsb. berisi alamat proxy server, username (isikan dengan alamat webmail), dan diikuti dengan password. Setelah itu tekan Enter, tambahkan konfigurasi never_access all.

Berikut persoalan-persoalan yang diuji dalam praktikum modul 2 jaringan komputer yang saya jalani beserta jawabannya.
  1. Salah satu server DMZ akan digunakan sebagai proxy server. Sehingga user-user pada jaringan anda untuk mengakses internet akan menggunakan proxy.
    Jawaban: Lakukan setting penetapan komputer yang akan mengakses internet melalui proxy server. Tambahkan konfigurasi berikut pada squid.conf.:
    acl komputer3 src 172.16.0.15/255.255.255.0
    acl komputer4 src 172.16.0.14/255.255.255.0

    Keterangan: komputer3 = nama_acl, src = komputer host yang ingin dilewatkan ke proxy server, 172.16.0.15/255.255.255.0 = alamat IP host beserta netmask (netmask tidak harus disertakan).
  2. IP salah satu host memiliki kecepatan download maksimal 10 kbps dan IP lainnya memiliki kecepatan download maksimal 20 kbps sebelum jam 14.00 dan kedua IP memiliki kecepatan download maksimal sebesar 30 kbps setelah jam 14.00 atau hari libur (Sabtu,Minggu).
    Jawaban:

    acl waktu1 time SMTWHFA 00:00-14:00
    acl waktu2 time SMTWHFA 14:00-23:59

    acl waktu3 time AS

    delay_pools3
    delay_class 1 1
    delay_parameters 1 1250/1250
    delay_access 1 allow komputer3 waktu1
    delay_access 1 deny all

    delay_class 2 1
    delay_parameters 2 2500/2500
    delay_access 2 allow komputer4 waktu1
    delay_access 2 deny all

    delay_class 3 1
    delay_parameters 3 3750/3750
    delay_access 3 allow komputer3 waktu2
    delay_access 3 allow komputer4 waktu2
    delay_access 3 allow komputer3 waktu3
    delay_access 3 allow komputer4 waktu3

    delay_access 3 deny all

    Keterangan:
    SMTWHFA = singkatan urutan hari dalam bahasa Inggris, mulai darii Minggu (S) sampai Sabtu (A)
    Antara jam dan menit harus dipisahkan dengan tanda ':'
    Delay_pools 3 maksudnya ada 3 pengaturan
    Delay_class 1:  IP salah satu host memiliki kecepatan download maksimal 10 kbps
    Delay_class 2: IP host lainnya memiliki kecepatan download maksimal 20 kbps
    Dua kelas tersebut berlaku sebelum jam 14.00
    Delay_class 3: kedua IP memiliki kecepatan download maksimal sebesar30 kbps setelah jam 14.00 atau hari libur (Sabtu,Minggu).
  3. Buatlah setting tambahan agar IP dari host 1(client) tidak dapat melakukan download file : pdf, mp3,doc.
    Jawab: Konfigurasi berikut ditempatkan setelah konfigurasi yang terdapat dalam persoalan nomor 1.
    acl downl1 url_regex  -i /.pdf$ /.mp3$ /.doc$
    http_reply_access deny komputer3 downl1
  4. Rubahlah agar IP dari host 1(client) memiliki maksimal kecepatan download sebesar 20 kbps file : pdf, mp3,doc.
    Jawab: Pada konfigurasi yang terdapat pada persoalan nomor 2, lakukan pengubahan sehingga menjadi seperti berikut.
    delay_class 2 1
    delay_parameters 2 2500/2500
    delay_access 2 allow komputer3 downl1

    delay_access 2 allow komputer4 waktu1
    delay_access 2 deny allJangan lupa lakukan comment pada konfigurasi nomor 3 sebelum menerapkan!
  5. Batasi hanya ada 2 buah koneksi secara bersamaan pada tiap host.
    Jawab:
    Tambahkan konfigurasi berikut setelah konfigurasi yang terdapat pada persoalan nomor 3.
    acl maxkom maxconn 2
    http_access deny komputer3 maxkom
    http_access deny komputer4 maxkom
    Jangan lupa lakukan comment pada konfigurasi nomor 2 hingga 4 sebelum menerapkan!
  6. Penjelasan 5 poin mengenai log squid
    Terdapat dua file log yang sering digunakan, yaitu access.log dan cache.log yang mana kedua file tersebut terdapat di /var/log/squid3.
    Pada access.log, urutan kolom dari kiri ke kanan: Tanggal akses, IP yang digunakan, status, direct/indirect yang artinya kita mengkases destination dengan proxy atau tidak.
 

Web Server dan Proxy Server: UML & Konfigurasinya


      Di postingan ini, saya jelaskan mengenai UML. UML (User-Mode Linux) merupakan suatu fasilitas yang dimiliki oleh OS Linux yang memungkinkan pengguna dapat menjalankan virtual komputer ber-OS Linux dalm jumlah banyak secara bersamaan (disebut sebagai guest) sebagai suatu aplikasi yang berjalan dalam OS Linux secara normal (disebut sebagai host). fasilitas yang diberikan ini bersifat aman sehingga tidak sampai mengganggu kestabilan dan konfigurasi platform OS Linux yang terdapat pada host.
Nah sebelum itu, kita harus mengenal dulu apa yang disebut dengan topologi jaringan. Topologi jaringan adalah hal yang menjelaskan hubungan geometris antara unsur-unsur dasar penyusun jaringan, yaitu node, link, dan station. Berikut contoh topologi jaringan.
http://didikakata.files.wordpress.com/2013/04/canvas.pngKeterangan:
eth0 : eth0 yang ada di bagian atas adalah tuntap, untuk menghubungkan topologi jaringan lokal ke jaringan internet. eth0 yang berada di bagian bawah adalah untuk menghubungkan dua komputer dengan switch
eth1: daemon ke topologi

        Untuk dapat membuat komputer virtual tersebut, kita harus membuat UMLnya terlebih dahulu yang disimpan dalam bentuk file shell (berkstensi .sh). Format pengetikan UML-nya adalah:
  1. untuk Switch: uml_switch -unix nama_switch > /dev/null < /dev/null &
  2. untuk Router: xterm -T nama_router ubd0=nama_router,uml umid=nama_router eth0=tuntap,,,alamat_IP_tuntap eth1=daemon,,,nama_switch [mem=value_in_K|B|M|G] &
  3. untuk komputer/host: xterm -T nama_host ubd0=nama_host,root_uml umid=nama_host eth0=daemon,,,nama_switch [mem=value_in_K|B|M|G] &
Pertama-tama, kita harus terhubung dulu ke server yang memiliki fasilitas UML. Bisa memakai kombinasi Terminal dan Xterm di Linux atau bisa juga memakai kombinasi PuTTY dan X-Win32 di Windows. Di Terminal Linux, ketikkan perintah ssh -X nama_user@alamat_IP, contoh: ssh -X e18@10.151.36.205. Setelah itu tekan Enter pada keyboard. Jika username ditemukan, maka lalu diminta mengetikkan password yang sesuai. Di Windows, asumsikan X-Win32 sudah berjalan. Lakukan dulu konfigurasi pada PuTTY dengan cara:
  1. Buka program PuTTY! Program langsung menampilkan konfigurasi untuk bagian Session. Isikan alamat IP dari server UML! Pastikan isi portnya adalah 22 dan connection tyoe-nya adalah SSH!
  1. Pada bagian Category, pilih kelompok Connection >> SSH >> X11! Kemudian aktifkan pilihan Enable X11 forwarding! Setelah selesai, tekan tombol Open!
  1. Jika berhasil terhubung, maka muncul jendela PuTTY. Saat muncul "login as:", ketikkan nama user, misalnya e18! Tekan Enter, setelah itu diminta passwordnya! Tekan Enter sekali lagi!
       Jika password yang diketikkan benar dan sesuai, maka kita sudah bisa login ke dalam server UML. sekarang kita bikin file script .shnya sejumlah dua buah. File script pertama untuk mengaktifkan/menjalankan UML, sedangkan yang kedua untuk menghentikan/mematikan UML. File script tersebut dibuat dengan text editor Nano karena text editor ini paling mudah digunakan.

Buatlah file script pertama
nano start.sh

Kemudian isi di dalamnya (jangan lupa disimpan sebelum menutup Nano):
uml_switch -unix switch > /dev/null < /dev/null &
xterm -T router -e linux ubd0=router,uml umid=router eth0=tuntap,,,10.151.70.73 eth1=daemon,,,switch mem=80M &
xterm -T komputer1 -e linux ubd0=komputer1,uml umid=komputer1 eth0=daemon,,,switch mem=80M &
xterm -T komputer2 -e linux ubd0=komputer2,uml umid=komputer2 eth0=daemon,,,switch mem=80M &
xterm -T komputer3 -e linux ubd0=komputer3,uml umid=komputer3 eth0=daemon,,,switch mem=50M &

xterm -T komputer4 -e linux ubd0=komputer4,uml umid=komputer4 eth0=daemon,,,switch mem=50M &

Keterangan:
xterm -T router -e linux ubd0=router,uml umid=router eth0=tuntap,,,10.151.70.73 eth1=daemon,,,switch mem=80M
router
berarti kita menamai komputer virtual/UML kita dengan nama "router". tuntap 10.151.70.73 adalah alamat IP tuntap saya. Sedangkan mem=50M adalah pengalokasian memori RAM kita sebesar 50 Mb. dan & adalah membuatnya sebagai daemon.

Sekarang kita bikin file script kedua:
nano stop.sh
 
Kemudian isi di dalamnya dengan format penulisan seperti berikut:
uml_mconsole nama_UML halt &

uml_mconsole router halt &
uml_mconsole komputer1 halt &
uml_mconsole komputer2 halt &
uml_mconsole komputer3 halt &
uml_mconsole komputer4 halt &   

Jalankan file script tersebut dengan cara mengetikkan perintah bash start.sh! Jika berhasil, maka muncullah semua komputer virtual yang dibuat tadi. Proses munculnya ini bisa berlangsung sangat lama, bergantung banyaknya user yang aktif atau bandwidth yang terdapat dalam jaringan.

Sekarang, kita masuk ke komputer virtual router. Pertama kali, login dan masukan password Anda. Di sini username login yang digunakan adalah root, passwordnya a.
1. Lakukan update. Caranya: apt-get update
2. Edit file rc.local. Caranya: nano /etc/rc.local
Tambahkan di baris sebelum exit 0 dengan:
    iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
    iptables -t nat -A POSTROUTING -o eth0 -j  MASQUERADE
3. Edit file sysctl.info. Caranya:  nano /etc/sysctl.conf
uncoment #net.ipv4.ip_forward=1 dengan cara menghilangkan tanda #.
4. Setting interface: nano /etc/network/interfaces. Berikut code-nya:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
        address 10.151.70.75 (tuntap Anda + 2)
        netmask 255.255.255.0 (default)
        gateway 10.151.70.74 (tuntap Anda + 1)
auto eth1
iface eth1 inet static
        address 172.16.0.16 (digit terakhir terserah Anda)
        netmask 255.255.255.0 (default)
5. Setelah itu, lakukan restart dengan cara ketikkan perintah reboot
6. Login kembali dan lakukan ping/tes koneksi pada suatu alamat web tertentu, misal ping its.ac.id
Sekarang, kita masuk ke komputer virtual komputer1. Di sini dia bertindak sebagai web servernya. Hampir mirip dengan yang pertama, tapi di sini kita perlu install phpmyadmin, apache2, dan lynx. Step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. Install/pasang paket-paket tadi:
    apt-get install phpmyadmin
    apt-get install apache2
    apt-get install lynx
3. Lakukan restart dengan cara ketik reboot
4. Login kembali dan lakukan ping, misal ping its.ac.id
Sekarang, kita masuk ke komputer virtual komputer2. Di sini dia bertindak sebagai proxy servernya. Hampir mirip dengan yang pertama, tapi di sini kita perlu install squid3 dan lynx. Step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. Install/pasang paket-paket tadi:
    apt-get install squid3
    apt-get install lynx
3. Lakukan restart dengan cara ketik reboot
4. Login kembali dan lakukan ping, misal ping its.ac.id

Sekarang, kita masuk ke komputer virtual komputer3. Di sini dia bertindak sebagai client/host biasaHampir mirip dengan yang pertama, tapi di sini kita perlu install lynx saja. Step-stepnya:
1. Update dulu komputer Anda: apt-get update
2. Install/pasang paket tadi: apt-get install lynx

3. Lakukan restart: reboot
4. Login kembali dan lakukan ping, misal ping its.ac.id
Sekarang, kita masuk ke komputer virtual komputer4. Lakukan cara yang sama seperti pada komputer3 karena dia sini dia juga bertindak sebagai client/host biasa.

Senin, 15 April 2013

Web Server & Proxy Server: What are Those?

       Kali ini, saya akan menjelaskan materi-materi yang didapat saat menjalani praktikum mata kuliah jaringan komputer modul kedua. Modul tersebut membahas tentang web server dan proxy server.
        Apakah itu web server? Web server (server/peladen web) adalah suatu software yang memberikan layanan berupa pengiriman konten web yang diakses melalui internet. Umumnya web server berfungsi menerima permintaan HTTP atau HTTPS dari klien dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML. Fitur standar/yang umumnya dimiliki web server adalah:
  • Virtual hosting, untuk melayani banyak alamat situs web dalam satu alamat IP.
  • Large file support, untuk melayani berkas/file yang berukuran lebih dari 2 atau 4 GB pada sistem operasi 32 bit.
  • Bandwidth throttling, untuk membatasi laju tanggapan/respons pada server agar kinerja jaringan komputer tidak terganggu dan mampu melayani klien lebih banyak.
  • Server-side scripting, untuk menghasilkan halaman web dinamis yang membuat implementasi antara situs web dan web server tetap terpisah satu sama lainnya.
http://www.visualbuilder.com/UserFiles/articles30661/jsp_tut_diagrams_typical_webserver.gif

Ilustrasi Web Server

       Contoh web server antara lain: Apache Web Server - The HTTP Web Server, Apache Tomcat, Microsoft Windows Internet Information Services (IIS), Lighttpd, Jigsaw, Sun Java System Web Server, Xitami Web Server, dan Zeus Web Server. Namun web server yang terkenal dan yang sering digunakan adalah Apache dan Microsoft Internet Information Service (IIS).
        Sekarang, apa itu proxy server? Proxy server (server proxy) adalah suatu sistem komputer atau aplikasi yang bertindak sebagai perantara permintaan dari pengguna (client) dalam mencari sumber daya dari server/peladen lain. Proxy server umumnya berupa server yang digunakan untuk menyimpan web cache/tembolok web yang pernah diakses oleh pengguna.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI8oHgeBCzePR_CctO6vAW_7eEyIKiEAeKRNXXCJGIarxs7PtiLqqQwt8ps3SJ96ZDCkG4pKztmUxv6CtvhSBnJL3aKQ6NswuVdVsSxb6hugRjzRARsSFGyNE0JMyd0lTgQrsfCBL1fjPQ/s1600/anonymous-proxies-1667.jpg

Ilustrasi Proxy Server

        Apa sih pentingnya keberadaan proxy server? Tanpa proxy server, setiap pengguna harus melakukan akses langsung ke server tujuan yang sering kali jaraknya jauh sehingga menghasilkan waktu tunda/tunggu (delay) yang besar. Itulah sebabnya walaupun bandwidth yang dimiliki cukup besar yang diberikan oleh ISP, tetapi performa yang dihasilkan kurang memuaskan. Dengan adanya proxy server, pengguna yang mengakses suatu halaman web tidak perlu harus selalu mengakses secara langsung ke server tujuan. Hal ini sangat menghemat bandwidth sekaligus mempercepat request koneksi bandwidth. Oleh karena itu, manfaat dari proxy server adalah untuk mempercepat akses ke situs web serta mengoptimalkan bandwidth yang dimiliki. Manfaat lainnya dari proxy server adalah untuk memblok situs yang tidak diperbolehkan untuk diakses oleh user, seperti situs yang berkaitan dengan pornografi, kriminalitas, dan lain-lain.
       Lalu bagaimana cara kerja dari web server dan proxy server itu? Sedikitnya harus terdapat dua buah komputer yang terlibat untuk dapat menunjukkan cara kerja web server dan proxy server.
       Cara kerja web server adalah sebagai berikut. Pada web server, satu komputer berfungsi sebagai client dan komputer lainnya sebagai server atau web server. Suatu client minimal memiliki browser dan terhubung ke web server melalui jaringan (intranet atau internet). Komputer yang berfungsi sebagai server, di mana di dalamnya terdapat perangkat lunak web server. Dalam jaringan internet, komputer ini bisa saja memiliki nama domain atau alamat situs seperti www.google.com, www.its.ac.id, atau memiliki kode komputer (disebut alamat IP) seperti 202.10.20.10 dan 200.100.50.25.
  1. Pertama-tama, client (user) akan meminta suatu halaman ke (web) server untuk ditampilkan di komputer client. Misalnya client mengetikkan suatu alamat (biasa disebut URL) di browser http://www.google.com. Client menekan tombol Enter atau klik tombol Go pada browser. Lalu melalui media jaringan (bisa internet, bisa intranet) dan melalui protokol http, akan dicarilah komputer bernama www.google.com. Jika ditemukan, maka seolah-olah terjadi permintaan untuk mengakses/membuka halaman dari situs web tersebut. Inilah yang disebut request.
  2. Setelah itu, server (web server) mendapat permintaan halaman web tersebut dari client, si server akan mencari-cari di komputernya halaman web yang sesuai permintaan client. Jika ditemukan, maka halaman yang diminta akan dikirimkan ke client (si peminta), namun jika tidak ditemukan, maka server akan memberi pesan “404 Page Not Found”, yang artinya halaman tidak ditemukan.
http://faris91.blog.ugm.ac.id/files/2010/09/Diagram-Kerja-Web-Server1.jpg

Diagram Kerja Web Server

       Sedangkan cara kerja proxy server adalah sebagai berikut. Sebagai perantara antara pengguna/client & server-server di internet, proxy server bekerja dengan cara menerima permintaan layanan dari user, dan kemudian sebagai gantinya proxy server akan mewakili permintaan pengguna ke server-server di internet yang dimaksud. Dengan demikian, sebenarnya proxy server hanya meneruskan permintaan pengguna ke server yang dimaksud, akan tetapi di sini identitas peminta sudah berganti, bukan lagi pengguna asal, tetapi proxy server tersebut. Server-server di internet hanya akan mengetahui identitas proxy server tersebut, sebagai yang meminta, tetapi tidak akan tahu peminta sebenarnya (yaitu pengguna asalnya). Bagi pengguna sendiri, proses yang terjadi pada proxy server di atas juga tidak kelihatan (transparan). Pengguna melakukan permintaan atas layanan-layanan di internet langsung kepada server-server layanan di internet. Pengguna hanya mengetahui keberadaan atau alamat dari proxy server, yang diperlukan untuk melakukan konfigurasi pada sisi pengguna agar dapat menggunakan layanan dari proxy server tersebut.
http://dc127.4shared.com/doc/FnmQ3U0S/preview_html_m8301581.gif

Diagram Kerja Proxy Server

        Ada macam-macam proxy server yang digunakan. Apa sajakah itu?
  1. Forward proxy adalah http proxy yang menjadi perantara user-user pada local area network dengan web-web server yang terdapat pada internet, penerapan forward proxy umumnya disertai mekanisme web cache untuk mengefisienkan bandwidth dan meningkatkan akselerasi akses web, pada praktiknya jenis http proxy inilah yang umum digunakan atau diterapkan. Software yang umumnya digunakan untuk keperluan forward proxy yaitu squid http proxy server.
  2. Reverse proxy memiliki maksud yang berkebalikan dengan forward proxy yaitu menjadi perantara user-user di internet terhadap akses ke web-web server yang berada pada local area network, sehingga seolah-olah user di internet mengakses langsung web server yang dimaksud, padahal sesungguhnya user di internet mengakses web-web server yang terdapat di local area network melalui reverse proxy tersebut. Tentunya komputer yang bertindak sebagai reverse proxy tersebut memiliki IP public yang static sehingga dapat diakses dari internet. Software yang umumnya digunakan untuk keperluan reverse proxy yaitu apache http server dengan mod_proxy-nya.
  3. Open Proxy adalah Transparent Proxy Server yang Misconfigured (Salah Konfigurasi). Dikarenakan oleh hal tersebut, Open Proxy dapat digunakan oleh semua orang/user/host lain di Internet selain host internal kita untuk berbagai keperluan. Termasuk menyusup ke dalam suatu System Host/Server lain Via Proxy Server "terbuka" kita! Terbuka di sini dalam arti port-port atau service-service tertentu yang bersifat vital yang dibiarkan terbuka tanpa penyaringan (Filtered - Firewall).
  4. Transparent  proxy  adalah  server  proxy  normal  yang  sebenarnya  tidak  meningkatkan  privasi online Anda. Transparan proxy dapat memberikan satu manfaat dengan caching halaman yang sering  diakses  dan  proses  ini  mengurangi  waktu  download  dan  mempercepat  akses  bagi perusahaan client. Banyak juga menggunakan sistem ini untuk keperluan penyaringan. Transparent proxy dapat  berguna  untuk  “memaksa  pengguna”  menggunakan  proxy/cache Transparent  proxy server,  karena  pengguna  benar-benar  tidak  mengetahui  tentang  keberadaan  proxy  ini, dan apapun konfigurasi pada sisi pengguna, selama proxy server ini berada pada jalur jaringan yang pasti  dilalui  oleh  pengguna  untuk  menuju  ke  internet,  maka  pengguna  pasti  dengan sendirinya akan “menggunakan” proxy cache ini.
  5. Normal proxy adalah proxy yang digunakan hanya untuk sekedar menyediakan cache secara local network biasanya digunakan untuk level end user jaringan internet. Kuota bandwith dibatasi sesuai kebijakan ISP sehingga cache mengurangi besaran ukuran page site yang diambil orisinil dari web server.
Pembahasan berikutnya tentang konfigurasi web server dan proxy server dan UML (User-Mode Linux) terdapat pada postingan berikutnya.