Archive for the ‘Linux-Guide’ Category

Tutorial Debian - Free download here

Saturday, January 24th, 2009

01. Bab 1 Pendahuluan.pdf
02. Bab 2 Instalasi Debian Etch.pdf
03. Bab 3 Instalasi Paket Software.pdf
04. Bab 4 Sistem File GNULinux.pdf
05. Bab 5 Linux Shell.pdf
06. Bab 6 Sistem Boot.pdf
07. Bab 7 GNULinuX Server.pdf
08. Bab 8 Manajemen User.pdf
09. Bab 9 Stream dan Sed.pdf
10. Bab 10 Konfigurasi Sistem Debian.pdf
11. Bab 11 Pengolahan Grafik dengan Command Line.pdf
12. Bab 12 Kompilasi Kernel.pdf
13. Bab 13 Linux di Floppy Drive.pdf
14. Bab 14 Sekuriti Dasar Debian GNULinux.pdf
15. Bab 15 Repository Lokal Debian.pdf
16. Bab 16 Koneksi Internet.pdf
17. Bab 17 Partisi dengan GParted.pdf

Instalasi Squid Proxy + Slackware

Wednesday, January 21st, 2009

Download source dari squid
#wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE16.tar.gz

Extract squid tersebut
#tar -zxvf squid-2.6.STABLE16.tar.gz -C /usr/local/src (sembarang mau ditaruh di mana hasil ekstraknya squid).

Masuk ke direktori ekstrak squid tersebut
#cd /usr/local/src/squid-2.6.STABLE16
Buat group dan user yang akan di gunakan untuk menjalankan squid
#groupadd _squid
#useradd -c “SQUID PROXY CACHE” -d /dev/null -s /bin/false -g _squid _squid
saya memberi tanda _ di depan squid biar keren seperti style BSD hehehe meski ada alasan tertentu sih demi security aja.

Configure dan install squid
#./configure \
–prefix=/squid/ –sysconfdir=/etc/ –enable-gnuregex –enable-async-io=16 \
–with-aufs-threads=16 –with-pthreads –with-aio –with-dl \
–enable-storeio=aufs –enable-removal-policies=heap –enable-delay-pools \
–disable-wccp –enable-cache-digests –enable-default-err-languages=English \
–enable-err-languages=English –enable-linux-netfilter –disable-ident-lookups \
–disable-hostname-checks –enable-underscores –enable-snmp –enable-useragent-log \
–disable-wccpv2 –enable-epoll –disable-internal-dns –enable-htcp
Keterangan opsi :
–enable-async-io=16 dan –with-aufs-threads=16 di sesuaikan dengan kemampuan mesin server
Untuk pentium III dengan ram 128 kebawah dapat menggunakan 8
Untuk pentium III ram 128 s/d PIV 1,8 Ghz ram 256 dapat menggunakan 16
Untuk pentium IV ram 256 1,8 s/d PIV 2,4 ram 256 dapat menggunakan 24
Untuk pentium di atasnya atau sekelasnya dapat menggunakan 32
Pilihan diatas hanya sebuah perkiraan penulis karena penulis hanya menggunakan P4 ram 256 saja.

Kompile source
#make && make install

Keterangan tambahan :
–enable-auth=basic \
–enable-basic-auth-helpers=NCSA
Digunakan jika proxy squid akan digunakan dengan menggunakan authentikasi user.

Tanda # didepan perintah maksudnya adalah root di dalam bash bukan comment.
Setelah instalasi selesai dan tidak terdapat kesalahan, langkah berikutnya adalah mengatur konfigurasi squid, bukalah file /etc/squid.conf dengan editor teks favorit anda (vi, pico, dll), file ini adalah file konfigurasi squid.

#pico -w /etc/squid.conf (Silahkan edit dengan editor kesukaan anda)
Rubahlah konfigurasi default squid.conf di sesuaikan dengan kebutuhan.
Jangan lupa untuk membuang yang kira kira tidak perlu dan membebani server.

agar squid dapat berjalan transparan maka untuk squid versi 2.6 keatas dapat memberikan opsi :
–> http_port 3128 transparent
di dalam confignya.

Sebelum squid dapat berjalan, anda harus menciptakan direktori swap dan membuat file log maupun direktori yang di butuhkan. Lakukanlah dengan menjalankan perintah :

#mkdir /var/log/squid
#touch /var/log/squid/access.log <= ini berfungsi membuat file bernama access.log
#touch /var/run/squid.pid
#chown -R _squid._squid /squid/cache/ <= mengubah kepemilikan direktori ke user _squid dan grup _squid
#chown -R _squid._squid /var/run/pid
#chown -R _squid._squid /var/log/squid/access.log

Perintah ini hanya perlu dijalankan satu kali saja ketika squid pertama kali akan dijalankan pada komputer anda.
#/squid/sbin/squid -z

Jika keluar message seperti :
2007/09/20 14:10:22| Creating Swap Directories
#
Dan langsung masuk ke konsole lagi tanpa keterangan error berarti pembuatan swap anda berhasil, bisa dilihat di dalam direktori /squid/cache akan terbentuk beberapa direktori random yang terdiri dari angka angka ajaib :D
Cek dulu konfigurasi squid sudah benar atau belum
#/squid/sbin/squid -k parse

Kalo masih terdapat kesalahan atau error silahkan di edit kembali konfigurasinya.

Untuk menjalankan squid gunakan perintah :
#/squid/sbin/squid -sYD

Jika perintah sudah dijalankan bisa diihat log di /var/log/messages :
#tail -f /var/log/messages

Jika muncul message :

Sep 20 15:16:27 proxy squid[3152]: 0 Objects expired.
Sep 20 15:16:27 proxy squid[3152]: 0 Objects cancelled.
Sep 20 15:16:27 proxy squid[3152]: 0 Duplicate URLs purged.
Sep 20 15:16:27 proxy squid[3152]: 0 Swapfile clashes avoided.
Sep 20 15:16:27 proxy squid[3152]: Took 1.6 seconds ( 0.0 objects/sec).
Sep 20 15:16:27 proxy squid[3152]: Beginning Validation Procedure
Sep 20 15:16:27 proxy squid[3152]: Completed Validation Procedure
Sep 20 15:16:27 proxy squid[3152]: Validated 0 Entries
Sep 20 15:16:27 proxy squid[3152]: store_swap_size = 0k
Sep 20 15:16:27 proxy squid[3152]: storeLateRelease: released 0 objects

dan ketika di liat proses nya berjalan seperti :

#ps aux|grep squid

muncul :

squid 3152 0.9 0.8 10836 4500 ? Sl 15:16 0:00 (squid) -sDY
squid 3153 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3154 0.0 0.1 1904 592 ? Ss 15:16 0:00 (dnsserver)
squid 3155 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3156 0.0 0.1 1900 596 ? Ss 15:16 0:00 (dnsserver)
squid 3157 0.0 0.1 1904 596 ? Ss 15:16 0:00 (dnsserver)
squid 3158 0.0 0.0 1508 300 ? Ss 15:16 0:00 (unlinkd)
root 3177 0.0 0.1 2000 636 pts/0 R+ 15:17 0:00 grep squid

seperti tersebut maka saya ucapkan selamat anda telah berhasil menginstall sebuah proxy server. Jika ada keterangan error berarti belum nasib anda. Edit kembali konfigurasi sesuai kesalahan error didalam log.

setting transparan iptables nya :
Buat file transparannya biar mudah memanggilnya :
#pico /etc/rc.d/rc.nat
isi dengan :
# Redirect proxy
for SQUID in 80 3128 444 3127 3129
do
iptables -t nat -A PREROUTING -p tcp –dport $SQUID -j REDIRECT –to-ports 3128
done

–> Hal diatas memiliki maksud semua port yang menuju ke 80,3128,444,3127,3129 di larikan ke port 3128 dimana port 3128 adalah port yang kita setting di dalam file squid.conf tsb. BIsa saja kita membuat port lain seperti 444, 1984, 2007 atau lain lain.

Buatlah file agar dapat di eksekusi
#chmod +x /etc/rc.d/rc.nat

Jalankan transparan :
#/etc/rc.d/rc.nat

Untuk membuat squid jalan sendiri setiap kali booting maka tambah kan perintah di atas di /etc/rc.d/rc.local
#pico /etc/rc.d/rc.local
tambahkan baris :
# Squid Proxy Cache
/squid/sbin/squid -sYD
# Transparan Proxy
/etc/rc.d/rc.nat

Sampai disini anda sudah melakukan instalasi, setting dan mengaktifkan squid. Mudah bukan?
Semua diatas telah di di test dan berjalan dengan baik dengan asumsi :
- Partisi Cache berada di /squid/cache dengan partisi ext3 dan kapasitas 10 GB
- Dengan menggunakan komputer Intel(R) Pentium(R) 4 CPU 1.70GHz Ram 256 MB
- Linux Slackware 12 ( Dikompile dengan kernel 2.6.22.6 ) - Tutorial Kompile / upgrade kernel sudah saya jelaskan sebelumnya.
- Dengan menggunakan format partisi ext3

by : Ibanez yusuf

Membuat Router Load Balancing Menggunakan Linux Ubuntu

Wednesday, January 21st, 2009

Dengan semakin kompleks-nya jaringan, terkadang kita memiliki beberapa sambungan ke Internet sekaligus. Saya sendiri di rumah memiliki dua (2) sambungan ke Internet sekaligus, yaitu, ADSL Speedy dan RT/RW-net. Agar kedua sambungan ke Internet tersebut dapat dimanfaatkan secara maksimal, kita perlu melakukan load balancing dengan 2 sambungan tersebut agar secara paralel akses Internet dapat dilakukan.

Spesifikasi / topologi jaringan yang saya gunakan di rumah adalah sebagai berikut

Sambungan ADSL melalui eth2 IP address 192.168.1.222 dengan gateway router ADSL pada IP 192.168.1.1.

Sambungan RT/RW-net melalui eth0 IP address 10.0.148.48 melalui WiFi / Wireless dengan gateway 10.0.148.254.

Sambungan LAN melalui eth1 IP address 192.168.0.222.

Langkah instalasi router adalah sebagai berikut.

Masukan CD / DVD Ubuntu installer, pilih “install a command line system”

Set password root supaya kita dapat menjalankan perintah “su” melalui perintah

$ sudo passwd root

Pindah mode menjadi Super User

# su -

Edit informasi interface pada file /etc/network/interfaces, dapat dilakukan menggunakan vi

# vi /etc/network/interfaces

Informasi penting yang perlu di-edit pada file interfaces adalah

auto eth0
iface eth0 inet static
address 10.0.148.48
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 192.168.0.222
netmask 255.255.255.0

auto eth2
iface eth2 inet static
address 192.168.1.222
netmask 255.255.255.0

Install beberapa aplikasi pendukung agar memudahkan hidup anda seperti

# apt-get install openssh-server
# /etc/init.d/ssh restart

Selanjutnya kita perlu menset routing dan load balancing yang secara sederhana adalah sebagai berikut

/sbin/ip link set lo up
/sbin/ip link set eth0 up
/sbin/ip link set eth1 up
/sbin/ip link set eth2 up

/sbin/ip route flush table adsl
/sbin/ip route flush table rtrwnet
/sbin/ip route flush table internet

/sbin/ip addr add 127.0.0.1/8 brd 127.0.0.255 dev lo

/sbin/ip addr add 192.168.1.222/24 brd 192.168.1.255 dev eth2
# /sbin/ip addr add 10.0.148.48/24 brd 10.0.148.255 dev eth0
/sbin/ip addr add 192.168.0.222/24 brd 192.168.0.255 dev eth1

/sbin/ip rule add prio 10 table main
/sbin/ip rule add prio 20 table adsl
/sbin/ip rule add prio 30 table rtrwnet
/sbin/ip rule add prio 40 table internet

/sbin/ip route del default table main
/sbin/ip route del default table adsl
/sbin/ip route del default table rtrwnet
/sbin/ip route del default table internet

/sbin/ip rule add prio 20 from 192.168.1.0/24 table adsl
/sbin/ip route add default via 192.168.1.1 dev eth2 src 192.168.1.222 proto static table adsl
/sbin/ip route append prohibit default table adsl metric 1 proto static

/sbin/ip rule add prio 30 from 10.0.148.0/24 table rtrwnet
/sbin/ip route add default via 10.0.148.254 dev eth0 src 10.0.148.48 proto static table rtrwnet
/sbin/ip route append prohibit default table rtrwnet metric 5 proto static

# Set up load balancing gateways
/sbin/ip rule add prio 40 table internet
/sbin/ip route add default proto static table internet \
nexthop via 192.168.1.1 dev eth2 weight 1 \
nexthop via 10.0.148.254 dev eth0 weight 1

Konfigurasi di atas membutuhkan tiga (3) tabel routing tambahan, yaitu, adsl, rtrwnet dan internet yang kita masukan dalam file /etc/iproute2/rt_tables, isinya kira-kira sbb,

120 adsl
121 rtrwnet
123 internet

Selanjutnya kita perlu menset NAT / proxy agar dapat sekaligus melakukan NAT ke dua (2) interface yang berbeda, yaitu, 192.168.1.222 dan 10.0.148.48. Adapun perintahnya adalah sebagai berikut,

/bin/echo 1 > /proc/sys/net/ipv4/ip_forward

/sbin/iptables -F
/sbin/iptables -P INPUT DROP
/
/sbin/iptables -A INPUT -i eth1 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 0/0 –dport 25 -j ACCEPT
/sbin/iptables -A INPUT -i eth2 -p tcp -s 0/0 –dport 25 -j ACCEPT
/sbin/iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -p tcp -i eth0 -j REJECT –reject-with tcp-reset
/sbin/iptables -A INPUT -p tcp -i eth2 -j REJECT –reject-with tcp-reset
/sbin/iptables -A INPUT -p udp -i eth0 -j REJECT –reject-with icmp-port-unreachable
/sbin/iptables -A INPUT -p udp -i eth2 -j REJECT –reject-with icmp-port-unreachable

/sbin/iptables -t nat -A POSTROUTING -o eth2 -j SNAT –to 192.168.1.222
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j SNAT –to 10.0.148.48

penulis : Onno W. Purbo


deleted for security reason