IGOS Nusantara dan proxy server squid kompilasi: Perbedaan revisi

Dari IGNwiki
Langsung ke: navigasi, cari

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /var/www/html/igos-nusantara-web/wiki/includes/diff/DairikiDiff.php on line 438
Baris 65: Baris 65:
 
... buat ...
 
... buat ...
  
== Partisi reiserfs ==
+
== cache memakai reiserfs ==
... format ....
+
Pada bagian atas tulisan ini ada informasi tentan harddisk yang dipakai. Harddisk kedua masih kosong dan akan di format memakai reiserfs. Harddisk kedua ada di /dev/sdb1
 +
 
 +
=== Pasang reiserfs-utils ===
 +
# yum -y install reiserfs-utils
 +
 
 +
=== Format harddisk kedua ===
 +
#
 +
 
 +
== Mengatur Log ==
 +
mkdir /var/log/squid
 +
touch /var/log/squid/access.log
 +
touch /var/run/squid.pid
 +
chown -R _squid:_squid /squid/cache/
 +
chown -R _squid:_squid /var/run/pid
 +
chown -R _squid:_squid /var/log/squid/access.log
  
 
== Modifikasi /etc/sysctl.conf ==
 
== Modifikasi /etc/sysctl.conf ==

Revisi per 26 Januari 2011 08.32

Optimasi squid dapat lebih ditingkatkan dengan melakukan kompilasi dari source squid. Berikut ini kompilasi untuk spesifikasi:

  1. Sistem Operasi memakai IGOS Nusantara 2010
  2. Intel(R) Xeon(TM) CPU 3.00GHz
  3. RAM 1 GB (yup memori masih kecil, harusnya update ke 4 GB)
  4. Harddisk 2 x 80 GB SCSI

Instal IGOS Nusantara 2010 untuk Server

Sistem Operasi yang akan dipasang di server sebaiknya TIDAK dipasang dari IGN2010 LiveCD. Versi IGN2010 LiveCD ditujukan untuk penggunaan Desktop. Server sebaiknya dipasang program/aplikasi minimal. Instalasi minimal dapat dilakukan dengan:

  1. Gunakan IGN2010 versi DVD Installer
  2. Booting memakai IGN2010 DVD
  3. Saat awal muncul menu instalasi pilih "Instal IGOS Nusantara Minimal (konsol)" [[1]]

Tahap kompilasi

Pasang GCC

# yum -y install gcc

Unduh squid-3.1.10.tar.bz2

# mkdir /root/sumber
# cd /root/sumber
# wget http://www.squid-cache.org/Versions/v3/3.1/squid-3.1.10.tar.bz2

Buat group dan user

Group dan user yang akan dipakai untuk menjalankan squid dibuat dengan cara:

# groupadd _squid
# useradd _squid -c "Squid Proxy" -d /dev/null -s /bin/false -g _squid

Catatan: tanda "_" di depan squid ditambahkan demi alasan keamanan[1].

Opsi Kompilasi

./configure \
--enable-gnuregex \
--enable-async-io=32 \
--with-aufs-threads=32 \
--with-pthreads \
--with-aio \
--with-dl \
--enable-storeio=aufs \
--enable-removal-policies=heap \
--enable-icmp \
--enable-delay-pools \
--disable-wccp \
--enable-snmp \
--enable-cache-digests \
--enable-default-err-languages=English \
--enable-err-languages=English \
--enable-linux-netfilter \
--disable-ident-lookups \
--disable-hostname-checks \
--enable-underscores

Keterangan parameter

  • --enable-async-io untuk mengaktifkan asynchronous I/O dalam proses baca/tulis ke harddisk. Memakai 16 bila memakai satu harddisk jenis lama (buffer hanya 2 MB). Bila memakai harddisk model baru dengan buffer 8 MB, 16 MB atau 32 MB dapat memakai 32.
  • --enable-useragent-log berguna agar squid mencatat useragent di entri log
  • --enable-snmp aktifkan snmp, misal mencatat statistik squid lalu ditampilkan dalam bentuk grafik.
  • --enable-cache-digests harus diaktifkan jika memakai cache peer.
  • --enable-storeio="aufs" adalah metoda penyimpanan metode I/O. AUFS adalah Asynchronous, memiliki performa yang optimal di Linux.
  • --enable-removal-policies="heap,lru" adalah pilihan opsi untuk removal policies
  • --with-maxfd=16384
  • --enable-poll
  • --disable-ident-lookups menghentikan squid dari melihat ident di setiap koneksi, bisa juga untuk mencegah serangan DDOS (membuka ribuan koneksi) yang dapat mematikan squid server
  • --enable-truncate memerintahkan squid untuk selalu menggunakan truncate() ketimbang unlink() ketika menghapus file cache.
  • --enable-delay-pools

Konfigurasi squid

... buat ...

cache memakai reiserfs

Pada bagian atas tulisan ini ada informasi tentan harddisk yang dipakai. Harddisk kedua masih kosong dan akan di format memakai reiserfs. Harddisk kedua ada di /dev/sdb1

Pasang reiserfs-utils

# yum -y install reiserfs-utils

Format harddisk kedua

# 

Mengatur Log

mkdir /var/log/squid
touch /var/log/squid/access.log
touch /var/run/squid.pid
chown -R _squid:_squid /squid/cache/ 
chown -R _squid:_squid /var/run/pid
chown -R _squid:_squid /var/log/squid/access.log

Modifikasi /etc/sysctl.conf

Tambahkan baris berikut pada akhir file /etc/sysctl.conf

fs.file-max = 65535
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 65536 8388608
net.ipv4.tcp_mem = 4096 4096 4096
net.ipv4.tcp_low_latency = 1
net.core.netdev_max_backlog = 4000
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_max_syn_backlog = 16384  

Penambahkan entri /etc/security/limits.conf

  • - nofile 65535

Boot ulang server

Lakukan reboot, kemudian jalankan squid.

[1] http://forum.linux.or.id/viewtopic.php?f=40&t=20030#p117128 [x] http://www.scribd.com/doc/47172020/Cara-Instal-dan-Optimasi-Squid-Proxy-Server