Sabtu, 03 Juli 2010

Internet Sharing : IP Masquerading

Assalamu'alaikum.

Pada bagian ini, ijinkan saya membahas bagaimana cara berbagi internet menggunakan linux, oke langsung saja kita ke sekenarionya, hehehehe <---- sampek males aku denger "sekenario" terus , wkwkwkwkw ...


Kalau gateway anda sudah siap dengan dua interface, tinggal pasang IP Masquerading dan voila … Internet Sharing anda jalan.

IPTABLES
IPTABLES itu pengatur komunikasi TCP/IP di Linux kernel 2.4 ke atas. IPTABLES jalan bersama kernel. Kita mengatur kerja IPTABLES dengan memberi rules (hukum). Nah untuk ini kita bisa pakai a.l:
  1. Script manual.
  2. Konfigurator high level seperti guarddog (KDE), lokkit (Redhat), portsentry (VL) dll.
Perhatikan bahwa semua cara tersebut cuma mengirim hukum ke si IPTABLES. Jadi kalau anda pakai beberapa cara, tentu saja hukum-hukumnya akan campur aduk. Makanya lebih baik hanya pakai salah satu cara. Di sini kita akan coba cara skrip manual yang generik (kapan ya si Kocil mau pakai cara GUI ?). 

PERSIAPAN DI REDHAT
Sistem firewall di Redhat punya lokkit dan service iptables. Buat latihan ini, matikan saja semuanya !
root@gateway # lookkit --disabled
root@gateway # service iptables stop
root@gateway # chkconfig iptables off

Nanti kalau mau menghidupkan lagi ..
root@gateway # lookkit --high
root@gateway # chkconfig iptables on
root@gateway # service iptables start

PERSIAPAN DI VL
Jalankan vasm, pilih menu SRVMENU, lalu matikan portsentry.

IPTABLES GENERIK
Nah, untuk membuat skrip manual sederhana, edit file /etc/rc.d/rc.local. Isinya cukup:
#!/bin/sh
# Setting IPTABLES paling sederhana untuk masquerading
######################################################

# Konstanta
IPT="/sbin/iptables"
LOAD="/sbin/modprobe" 

# Interface
# Kalau pakai modem, ganti RED=ppp0
RED=eth1
GREEN=eth0
RED_IP=10.0.0.15
GREEN_NET=192.168.0.0/24

#--------------------------------
# Inisialisasi IPTABLES
$LOAD ip_tables
$LOAD iptable_filter
$LOAD iptable_nat
$LOAD ip_conntrack
$LOAD ip_conntrack_ftp
$LOAD ip_nat_ftp
$LOAD ip_conntrack_irc
$LOAD ip_nat_irc 

#--------------------------------
# Kosongkan rumus-rumus IPTABLES
$IPT -F
$IPT -F -t nat
$IPT -F -t mangle
$IPT -X 

#--------------------------------
# Rumus default
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT ACCEPT 

#--------------------------------
# Rumus masquerading, IP statik
$IPT -t nat -A POSTROUTING -o $RED -j SNAT --to-source $RED_IP

# Rumus masquerading, lebih komplit
$IPT -t nat -A POSTROUTING -s $GREEN_NET -o $RED -j SNAT --to-source $RED_IP

# Kalau RED anda IP dinamik (ppp0), gunakan
# $IPT -t nat -A POSTROUTING -o $RED -j MASQUERADE

#--------------------------------
# Rumus forward, hanya dari dalam atau luar related
$IPT -A FORWARD -i $GREEN -o $RED -j ACCEPT
$IPT -A FORWARD -i $RED -o $GREEN -m state --state ESTABLISHED,RELATED -j ACCEPT 

#--------------------------------
# Rumus INPUT, hanya terima dari dalam atau luar yang related
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A INPUT -i $GREEN -j ACCEPT
$IPT -A INPUT -i $RED -m state --state ESTABLISHED,RELATED -j ACCEPT

#--------------------------------
# Hidupkan forwarding
echo "1" > /proc/sys/net/ipv4/ip_forward 

###############################################################

Nah, tinggal jalankan skrip tersebut atau reboot komputer anda.
root@gateway # chmod 700 /etc/rc.d/rc.local
root@gateway # /etc/rc.d/rc.local

TEST DARI CLIENT
Pastikan network client anda sudah benar,
IP=192,168.0.x
Netmask=255.255.255.0
Gateway=192.168.0.1
DNS= DNS si ISP

Coba dari client …
# Ping sisi internal gateway.
# Kalau gagal, koneksi client ke gateway tidak beres
# atau network sisi internal gateway belum benar
tux@client$ ping 192.168.0.1

# Ping sisi eksternal gateway.
# Kalau gagal, network sisi eksternal gateway belum benar
tux@client$ ping 10.0.0.15

# Ping gateway si ISP
# Kalau gagal, masquerading belum benar
tux@client$ ping 10.0.0.1

Copyleft : Kocil, 2003
License : GNU FDL
Posted to: www.benpinter.net, 6 Dec 2003.
Testbed : Redhat 9.0, Vector Linux 4.0
Writepad : Bluefish


mudah kan teman, mudah2an maju terus linuxer Indonesia. 


Wassalamu'alaikum.

0 komentar:

Posting Komentar | Feed

Posting Komentar



 

wahyu/~teardrop Copyright © 2010 Designed by Wahyu Adi Prasetyo