Apapun Akan Saya Bagi

mengecek kondisi server berdasarkan log file

1. Proxy Server
Proxy server sudah menjadi hal yang popular di kalangan para pengguna
internet saat ini, berkaitan dengan kemampuannya untuk menghemat
bandwith, meningkatkan keamanan, dan menambah kecepatan web-surfing.
Dalam jaringan yang menerapkan sistem proxy, hubungan komunikasi ke
internet dilakukan melalui sistem pendelegasian. Komputer-komputer yang
dapat dikenali oleh internet bertindak sebagai wakil.
2. Proxy Server Squid
Proxy server yang cukup popular saat ini adalah squid, karena selain gratis
juga mendukung ICP. ICP digunakan untuk pertukaran data tentang suatu URL
dengan cache-cache lainnya. Secara sederhana, squid dapat dikatakan sebagai
software yang diaplikasikan untuk membuat http atau ftp cache. Cara kerja
squid dapat dianalogikan seperti browser (IE/Opera/Netscape) yang
menyimpan data suatu site di hardisk sehingga untuk menampilkan site yang
sama tinggal mengambil data di cachenya.
Squid dapat dikonfigurasikan sebagai :
Mode httpd-accelerator untuk meningkatkan performansi web server kita.
Proxy caching-server agar seluruh user dalam jaringan kita dapat
menggunakan squid untuk mengakses internet.
Pada konfigurasi pertama, squid server berlaku seperti reverse proxy-cache,
squid akan menerima permintaan client, memberikan data di cachenya, jika
tidak ada akan mengambil langsung dari server aslinya (reverse proxy).
Sebagai proxy cache server, kita dapat mengontrol secara keseluruhan kinerja
jaringan kita dan memberlakukan beberapa aturan dalam memberkian data
yang dapat dilihat, diakses atau didownload. Kita juga dapat mengontrol
penggunaan bandwith, waktu koneksi dan sebagainya. Sebuah proxy cache
dapat dikonfigurasikan sebagai Squid dapat menghemat bandwith dapat
diterangkan sebagai berikut :
Misal suatu host memin ta www.detik.com, maka squid akan mengambil dan
meletakkannya di hardisk server untuk selanjutnya diambil oleh host yang
bersangkutan. Bila ada host lain yang meminta data yang sama, server tidak
perlu lagi mendownloadnya dari www.detik.com, tapi cukup memberikan data
yang ada di cachenya sehingga akan lebih cepat dan menghemat bandwith.
Selain itu, squid dapat melakukan filtering, yaitu squid dapat memblok
permintaan cliet terhadap URL-URL tertentu, sehingga pengelola jaringan
dapatlebih santai tanpa khawatir adanya penyalahgunaan yang tidak
dikehendaki. Dalam squid dikenal istilah parent dan sibling. Parent akan
mengambil langsung ke web site yang diminta, sedangkan sibling akan
mencarinya dulu ke parent. Bila tidak ada, maka sibling mencarinya langsung
ke web site yang bersangkutan.
Sebuah proxy cache dapat dikonfigurasikan untuk berjalan standalone server
atau sebagai hierarki cache dengan dengan proxy-proxy lainnya, yang akan
kita bahas lebih lanjut berikut ini.
Standalone server, tanpa parent dan sibling
Ini merupakan konfigurasi yang paling sederhana yang biasa dipakai oleh ISP
(Internet Service Provider) dan warung internet dimana squid server local akan
langsung mencari ke web server www.detik.com untuk memenuhi permintaan
client bila data tidak terdapat di cache.
Sibling tanpa parent
Biasanya konfigurasi ini dipakai untuk jaringan yang tidak terlalu besar.
Permintaan oleh klien pada suatu URL akan diterima lokal yang akan
mencarinya ke sibling , bila tidak ada, lokal akan langsung mencarinya
langsung ke webserver yang bersangkutan.
Parent dan sibling
Biasanya konfigurasi ini diterapkan untuk jaringan yang besar. Efisiensi
jaringan ini cukup baik, karena yang bekerja untuk mendapatkan halaman web
keluar jaringan hanyalah parent sisanya sibling dan para client tidak dapat
memperolehnya secara langsung (dengan firewall). Klien yang meminta
halaman web www.detik.com akan diterima squid server lokal yang kemudian
akan memeriksa cachenya, bila tidak ada dia akan mencari ke sibling, bila ada
sibling akan memberikannya ke lokal, namun bila tidak ada lokal akan meminta
ke parent. Sebagai parent ia harus melayani permintaan ini. Walaupun ia tidak
memiliki halaman yang diminta, ia harus memenuhinya dengan mengambil
langsungke www.detik.com. Setelah itu permintaan dikembalikan ke lokal dan
akhirnya ke klien.
3. Hierarki Squid
Server proxy dapat dihubungkan dengan server-server proxy lain dan
membentuk hierarki seperti pada sebuah organisasi. Jika server proxy
bergabung dalam sebuah hierarki, sebuah server proxy bisa memilih untuk
mengambil dokumen yang diinginkan dari server proxy lain dalam hierarki atau
mengambil dari server asal. Hierarki ini terdiri dari cache pada tingkat nasional,
regional, dan organisasi. Dalam prototipe ini cache pada tingkat nasional
melayani permintaan akses untuk domain negara tersebut. Misalnya terdapat
permintaan dokumen dari URL http:/ /www.republika.co.id yang berada di
bawah domain id (Indonesia), maka dokumen tersebut diminta dari cache
tingkat nasional di Indonesia.
4. Instalasi Squid
Untuk mendapatkan source squid terbaru dapat download di
ftp://squid.nalr.fr/squid/ atau homepage squid http://www.squid-cache.org/.
Dalam modul ini kita akan melakukan instalasi secara manual yaitu squid-
2.3.STABLE2-src.tar.gz. Sebelum instalasi pastikan source ini sudah ada (misal di
direktori /usr/local).
1. Masuklah ke direktori /usr/local/ dan ekstark source dengan perintah:
# cd /usr/local
# tar zxvf squid-2.3.STABLE2-src.tar.gz
2. Squid proxy-server tidak dapat berjalan sebagai sebagai super user root, oleh
karena itu kita harus membuat account khusus tanpa shell untuk menjalankan
Squid Proxy Server :
# useradd d /cache/ -r s /dev/null 2>&1
# mkdir /cache/
# chown R squid.squid /cache/
Perintah pertama akan menambahkan user squid ke file /etc/passwd, lalu
membuat direktori /cache (jika belum ada) kemudian mengubah kepemilikan
direktori /cache ke user squid .
3. Setelah proses ekstarksi akan terbentuk direktori squid-2.3.STABLE2-src,
masuk ke direktori tersebut dan lakukan konfigure otomatis yang akan
memberikan output berupa file Makefile.
# ./configure --prefix=/usr/local/squid
4. Selanjutnya lakukan kompilasi dan install sbb:
# make
# make install
Hasil instalasi bisa dilihat di direktori /usr/ local/squid. Di dalamnya terdapat
direktori /bin, /logs dan /etc.
5. Konfigurasi Squid
Setelah proses instalasi selesai, langkah selanjutnya adalah mengkonfigurasi
squid. File konfigurasi ini biasanya terletak pada direktori /usr/ local/squid/etc.
Squid biasanya sudah menyediakan file konfigurasi default yaitu
squid.conf.default, yang berisi parameter-parameter squid secara lengkap, berikut
deskripsi serta contoh penggunaannya.
5.1. Konfigurasi file Squid.conf
Dalam direktori /usr/local/squid/bin akan terdapat file-file sbb:
squid program utama
dnsserver server untuk melayani request pemetaan
ip <-> nama tiap child proses squid
cachemgr program tambahan untuk memantau server secara
otomatis
runchace script untuk memulai squid
Sedangkan dalam direktori /usr/local/squid/etc akan terdapat file-file konfigurasi
sbb :
squid.conf.default file konfigurasi squid default
mime.conf.default file konfigurasi mime default
Sedangkan file-file log akan terdapat pada direktori /usr/local/squid/logs, yaitu :
access.log mencatat log aktivitas-aktivitas yang dilakukan oleh klien.
cache.log mencatat log yang dicatat oleh cache server.
store.log mencatat setiap log yang berhubungan dengan database.
5.2. Konfigurasi Mode Httpd-Accelerator
Berikut kita akan membahas bagian-bagian yang perlu diedit pada file squid.conf :
http_port 80
Option ini menyatakan nomor port yang akan digunakan Squid untuk permintaan
HTTP client. Jika diset 80, client akan seolah-olah terkoneksi dengan Webserver
Apache.
icp_port 0
Option ini menentukan nomor port tempat Squid mengirim dan menerima
permintaan ICP dari cache lainnya. Untuk mendisable kita set 0, karena kita
mengkonfigurasi Squid sebagai mode accelerator Web Server. ICP diperlukan
hanya pada multilevel cache dengan multilevel siblings dan parent.
acl QUERY urlpath_regex cgi-bin \? and no_cache deny QUERY
Option ini menyatakan objek yang tidak pernah dicached.
cache_mem 16 MB
Option ini menyatakan jumlah memori (RAM) yang digunakan untuk caching.
Squid menggunakan memori lebih besar dari nilai yang tertera. Sebaiknya jumlah
ini sepertiga dari memori total.
cache_dir ufs /cache 200 16 256
Option cache_dir menyatakan jenis sistem storage yang digunakan (ufs).
Space disk sebesar 200 MB, jumlah subdirektori tingkat pertama dalam direktori
cache adalah 16 dan jumlah subdirektori tingkat kedua yang dibuat dalam
direktori cache tingkat pertama adalah 256. Dalam mode accelerator hal ini
berkaitan dengan besar dan jumlah file yang ingin di tampilkan pada webserver
Apache.
emulate_httpd_log on
Jika option ini dibuat ON , Squid akan membuat format file log yang sama
dengan Webserver Apache. Hal ini berguna terutama jika kita ingin menggunakan
program seperti Webalizer.
redirect_rewrites_host_header off
Jika diset OFF , Squid tidak akan menulis ulang suatu host.
replacement_policy GDSF
Option replacement_policy menyatakan objek dalam cache yang akan dihapus
Squid saat proxy membutuhkan ruang disk yang lebih banyak.
acl all src 0.0.0.0/0.0.0.0 and http_access allow all
Options acl and http_access mengatur batasan akses terhadap Proxy server
Squid. Pada contoh di atas, kita berarti mengijinkan setiap orang terkoneksi lewat
proxy.
cache_mgr admin
Option cache_mgr menyatakan alamat e-mail administrator yang bertanggungjawab
pada server.
cache_effective_user squid and cache_effective_group squid
Options ini menyatakan UID/GID dimana cache berjalan.
httpd_accel_host 167.205.206.100 and httpd_accel_port 80
Dari option ini, Squid akan mengetahui nomor port HTTP server yang sebenarnya
dan IP address yang digunakan. Pada contoh di atas IP address webserver adalah
167.205.206.100 pada port 80.
log_icp_queries off
Jika kita tidak menggunakan ICP sebaiknya option ini diset OFF .
cachemgr_passwd my-secret-pass all
Option cachemgr_passwd menyatakan password yang diperlukan untuk
mengakses utilitas program cachemgr.cgi . Isilah dengan
password yang diinginkan. Keyword < all> akan membuat password yang sama
untuk semua
buffered_logs on
Option buffered_logs yang diset ON dapat menambah kecepatan penulisan
beberapa file log.
5.3. Konfigurasi Mode Proxy-Caching Mode
Pada proxy-caching server, semua user dalam network kita menggunakan Squid
untuk mengakses Internet. Tentu saja kita dapat menerapkan beberapa aturan
dan menghemat bandwith. Konfigurasi Squid sebagai proxy-caching mode tidak
jauh berbeda dengan mode sebelumnya, hanya mungkin ada beberapa option
yang diubah atau ditambahkan. Perbedaan utama dengan mode sebelumnya
adalah adanya access control list (ACL). ACL berguna untuk merestriksi akses
berdasarkan IP address asal (src), IP address tujuan (dst), domain asal, domain
tujuan, berdasarkan waktu akses, dsb. Konfigurasi ACL yang umum digunakan
adalah sebagai berikut :
Akses berdasarkan IP address asal
acl [alamat] src a.b.c.d/e.f.g.h
Akses berdasarkan IP address tujuan
acl [alamat] dst a.b.c.d/e.f.g.h
Akses berdasarkan domain asal
acl [alamat] srcdomain [nama.domain]
Akses berdasarkan domain tujuan
acl [alamat] dstdomain [nama.domain]
Untuk lebih jelasnya perhatikan contoh isi file konfigurasi proxy-cache server
berikut ini :
# pico squid.conf
icp_port 0
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 16 MB
cache_dir ufs /cache 200 16 256
redirect_rewrites_host_header off
replacement_policy GDSF
Misalkan kita ingin agar proxy server Squid hanya membolehkan akses untuk
client dalam jaringan kita dan proxy server itu sendiri dengan menggunakan portport
tertentu yaitu 80 (http), 21 (ftp), 23 (telnet) 25 (smtp), dan 443 (https).
Selain itu, proxy Squid akan meolak setiap IP address asal dan semua port yang
mencoba terkoneksi.Bila jaringan kita menggunakan IP Private kelas C
192.168.1.0 kita dapat membuat konfigurasi sbb :
acl localnet src 192.168.1.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl Safe_ports port 80 443 210 119 70 21 1025-65535
acl CONNECT method CONNECT
acl all src 0.0.0.0/0.0.0.0
http_access allow localnet
http_access allow localhost
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all
cache_mgr admin@nama.domain
cache_effective_user squid
cache_effective_group squid
log_icp_queries off
cachemgr_passwd my-secret-pass all
buffered_logs on
Sedangkan option-option yang lain sama seperti yang sudah dijelaskan untuk
mode sebelumnya.
6. Menjalankan Squid
Setelah membuat konfigurasi Squid lewat file squid.conf, selanjutnya kita harus
menstart squid agar server itu dapat berjalan dengan baik. Proses squid
sebaiknya dijalankan oleh user squid dan bukan oleh root demi keamanan.
To run Squid server in httpd-accelerator mode, the following files are
required and must
be created or copied to the appropriate directories on your server.
Copy the squid.conf file in the /etc/squid/ directory.
Copy the squid script file in the /etc/ rc.d/ init.d/ directory.
Copy the squid file in the /etc/ logrotate.d/ directory.
To run Squid server in proxy-caching mode, the following files are required
and must be
created or copied to the appropriate directories on your server.
Copy the squid.conf file in the /etc/squid/ directory.
Copy the squid script file in the /etc/ rc.d/ init.d/ directory.
Copy the squid file in the /etc/ logrotate.d/ directory.
Create the squid script file (touch /etc/rc.d/init.d/squid) and add:
#!/bin/bash
# squid This shell script takes care of starting and stopping
# Squid Internet Object Cache
#
# chkconfig: - 90 25
# description: Squid - Internet Object Cache. Internet object caching is \
# a way to store requested Internet objects (i.e., data available \
# via the HTTP, FTP, and gopher protocols) on a system closer to the \
# requesting site than to the source. Web browsers can then use the \
# local Squid cache as a proxy HTTP server, reducing access time as \
# well as bandwidth consumption.
# pidfile: /var/run/squid.pid
# config: /etc/squid/squid.conf
Untuk menjalankan squid Pertama-tama kita harus membuat user squid yang
akan menjalankan proses Squid proxy server. Loginlah sebagai user squid dan
lakukan perintah berikut ini :
# squid z
Perintah ini akan membuat direktori cache sebanyak dan sedalam yang telah
dideklarasikan pada file squid.conf. Lalu jalankan program squid :
# /usr/loacl/squid/bin/squid sY &
Perhatikan pesan yang muncul pada console, dan perhatikan juga file
/usr/local/squid/ log/cache.log barangkali terjadi suatu kegagalan atau error.
Agar saat sistem direboot program Squid akan langsung berjalan secara
otomatis, tambahkan baris berikut ini pada file /etc/rc.d/rc.local/ :
# pico /etc/rc.d/rc.local
Tambahlah baris-baris berikut ini :
/usr/local/squid/bin/squid sY &

1 komentar:

Habib mengatakan...

nice info,,,