Jumat, 19 Februari 2010

TUTORIAL FIREWALL / GATEWAY DENGAN SHOREWALL

Pada artikel kali ini, saya mencoba memberikan langkah-langkah singkat untuk membuat
sebuah Firewall / Gateway dengan menggunakan komputer apa adanya. Apa yang saya
lakukan ini sudah saya coba dan Alhamdulillah tanpa masalah dan system Firewall /
Gatewaynya dapat bekerja dengan baik dan benar. Untuk Firewall / Gateway saya
menggunakan aplikasi Shorewall yang saya rasa cukup mudah untuk melakukan
konfigurasinya dibanding melakukan konfigurasi melalui iptables secara langsung.
Ok kita akan mulai tutorial singkat ini, ada beberapa langkah yang akan kita lakukan, antara
lain :
1. Lakukan fresh install Ubuntu Linux, pada tutorial kali ini, saya menggunakan Ubuntu
Linux Server 8.10 dengan spesifikasi komputer P IV dengan memory 512 MB, disini
saya menggunakan mode text untuk melakukan konfigurasi, sekalian membiasakan
diri melakukan konfigurasi tanpa harus menggunakan XWindows nya.
2. Saya membuat kebijakan firewall untuk untuk koneksi dari Internet ke Firewall adalah
DROP begitu juga dari jaringan LAN Local ke Internet adalah DROP, kecuali koneksi
dari Firewall ke Internet dan dari Firewall ke LAN Local adalah ACCEPT.
3. Di komputer yang akan saya jadikan Firewall / Gateway saya mempunyai 2 Lan
Card, yakni eth0 untuk koneksi ke modem (Internet) dan eth1 untuk koneksi ke LAN
Local.
4. Setelah proses instalasi Server Ubuntu selesai, saya melakukan modifikasi :
/etc/network/interfaces dengan melakukan : sudo nano /etc/network/interfaces dan
kemudian melakukan konfigurasi kartu jaringan untuk eth0 dan eth1, berikut
konfigurasi yang saya lakukan untuk Server saya :
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
# The second network interface
auto eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0
Di konfigurasi di atas, anda bisa melihat bahwa eth0 saya terhubung dengan modem
ADSL dengan konfigurasi mendapatkan IP secara otomatis (DHCP) IP standarnya
adalah 192.168.0.*, sedangkan untuk eth1 saya melakukan setting manual (IP secara
manual) dengan memberikan IP untuk eth1 adalah 192.168.1.1.
5. Langkah berikutnya adalah membuat Server DHCP, sehingga komputer di seluruh
jaringan LAN Local akan mendapatkan IP secara otomatis, langkah-langkahnya
adalah dengan cara menginstall software DHCP Server dengan cara : sudo apt-get
install dhcp3-server, setelah itu melakukan sedikit konfigurasi di : /etc/default/dhcp3-
server dengan memberi nilai pada variabel INTERFACES=”eth1”. Langkah
selanjutnya adalah melakukan modifikasi konfigurasi pada : /etc/dhcp3/dhcpd.conf biar
aman, sebelumnya buat backup file asli dari /etc/dhcp3/dhcpd.conf itu dengan cara :
sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original, setelah itu baru kita
membuat file konfigurasi baru dengan cara : sudo nano /etc/dhcp3/dhcpd.conf dengan
isi dari file konfigurasi seperti berikut :
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.1;
option domain-name "IBM-UBUNTU";
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.130;
}
Di konfigurasi di atas saya memberi range untuk komputer LAN Local (30 Komputer)
dari IP 192.168.1.100 – 192.168.1.130.
6. Langkah selanjutnya adalah menginstall Shorewall dengan cara : sudo apt-get install
shorewall dnsmasq, kemudian copy kan settingan standar dari Shorewall dari direktori
/usr/share/doc/shorewall-common/examples/two-interfaces ke /etc/shorewall. Setelah
itu lakukan konfigurasi pada file : /etc/shorewall/shorewall.conf dengan cara : sudo
nano /etc/shorewall/shorewall.conf untuk kemudian melakukan modifikasi “IPFORWARDING=
Keep” menjadi “IP-FORWARDING=On” langkah selanjutnya adalah
melakukan konfigurasi terhadap file : /etc/default/shorewall dengan cara : sudo nano
/etc/default/shorewall untuk kemudian mengubah nilai status startup menjadi 1.
7. Pada langkah berikut kita akan membuat rule untuk firewall kita. Kita akan melakukan
konfigurasi file : /etc/shorewall/policy dengan cara : sudo nano /etc/shorewall/policy.
Nah contoh konfigurasi yang saya lakukan adalah seperti ini :
loc net DROP info
loc $FW DROP info
loc all DROP info
$FW net ACCEPT
$FW loc ACCEPT
net $FW DROP info
net loc DROP info
all all DROP info
8. Langkah berikut kita akan melakukan konfigurasi pada file : /etc/shorewall/rules, pada
konfigurasi kali ini saya hanya akan membolehkan akses SSH (22), HTTP (80),
HTTPS (443), FTP (21 dan 20), DNS (53), SMTP (25), POP3 (110) dan Yahoo
Messengger (5050) dari Lan Local ke Internet dan Firewall, berikut konfigurasi Firewall
yang saya lakukan :
### Settingan Port Yang Boleh
ACCEPT loc $FW tcp 20,21,22,25,53,80,110,443,5050
ACCEPT loc $FW udp 20,21,22,25,53,80,110,443,5050
ACCEPT loc net tcp 20,21,22,25,53,80,110,443,5050
ACCEPT loc net udp 20,21,22,25,53,80,110,443,5050
9. Selesai lah konfigurasi Firewall yang telah kita lakukan, langkah selanjutnya adalah
Restart Server Anda dan Setting Komputer di jaringan Lokal untuk mendapatkan IP
Automatic dari Server yang sudah kita buat.
Mudah-mudah langkah-langkah yang saya berikan bisa dengan mudah dimengerti dan
diaplikasikan dengan mudah. Mohon maaf jika bahasa yang saya gunakan agak sulit
dimengerti, maklum saya juga pemula dalam hal ini, saya membuat tutorial ini untuk
mempermudah mengingat langkah-langkah yang saya lakukan dalam membuat Firewall /
Gateway. Semoga bermanfaat...

5 komentar:

  1. apakah ini sudah benar ????????????

    BalasHapus
  2. mantap gan... thanks ya... atas pencerahannya :D

    BalasHapus
  3. mantap, btw tambahin dong versi pake webminnya :)

    cari baju cewek, buka ini aja
    http://wijaya-online.web.id/

    BalasHapus
  4. Min mau tanya misal yang di blok itu cuma misal http://example.lan dan port 443 itu bagaimana??

    Saya mnggunakan
    $FW
    Loc ipv4
    Net ipv4

    BalasHapus
    Balasan
    1. dicoba pake action drop
      REJECT loc net:example.lan tcp 443
      REJECT loc net:example.lan utp 443

      or bikin file blacklist
      tp rekomendasi jangan pake nama domain, pake ip aja

      Hapus