Monday, April 30, 2012

Implementasi iptables dari Jaringan Lokal ke Internet

IP Address terbagi menjadi 2 yaitu IP Public dan IP Private. Seperti yang kita tau bahwa IP Private tidak dapat mengakses ataupun diakses dari IP Public sehingga harus ditranslasikan. Tutorial ini saya akan menjelaskan bagaimana konfigurasi NAT dan pembatasan akses pada protokol icmp dari IP Private ke IP Public.

Persiapan :

- 3 PC atau virtual machine
    Firewall menggunakan OS Ubuntu Server
    Web Server menggunakan OS Backtrack. Kita asumsikan web server berada di jaringan internet.
    Client menggunakan OS Ubuntu Desktop. Client berada di jaringan lokal.

Topologi :




Skenario :

IP LAN ditranslasikan ke IP interface eth0 pada Firewall sehingga LAN bisa mengakses internet. LAN tidak dapat melakukan ping ke internet.

Langkah-langkah implementasi :



Atur IP Address dan default gateway terlebih dahulu
IP Firewall : 200.10.20.1/24 , 192.168.0.1/24
IP Web Server (Internet) : 200.10.20.2/24
IP Client (LAN) : 192.168.0.2/24


Firewall

Web Server (Internet)

Client (LAN)
Uji koneksi dari LAN ke Internet dengan menggunakan ping sebelum diberlakukan rule iptables.

ping dari LAN ke Internet

Akses Web Server (Internet) dari LAN sebelum diberlakukan rule iptables.




Untuk melihat log akses pada web server gunakan perintah tail /var/log/apache2/access.log
Pada line terakhir terlihat bahwa yang mengakses web server adalah dari IP 192.168.0.2




Kemudian masukan rule NAT dan blok ICMP pada firewall.

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -A FORWARD -s 192.168.0.0/24 -p icmp -j DROP






Akses Web Server dari Client dan lihat log nya.


Terlihat bahwa yang mengakses Web Server adalah dari IP 200.10.20.1

Lakukan uji koneksi kembali dengan menggunakan ping dari LAN ke Internet


Ping dari LAN ke Internet gagal karena paket ICMP telah di DROP oleh Firewall.

Perhatian ! Boleh Copy paste, tapi kalau anda tidak keberatan mohon cantumkan sumber dengan linkback ke blog ini.

Implementasi Dynamic NAT Menggunakan iptables

Jika pada Static NAT telah ditentukan akan ditrnslasi dengan IP yang mana, pada Dynamic NAT, IP untuk penyamaran (Masquerading) tidak ditentukan, kita hanya perlu menentukan akan menggunakan IP yang ada di interface mana. Biasanya Dynamik NAT digunakan pada modem ADSL atau menggunakan Dial-up yang IPnya selalu berubah-ubah.

Tutorial yang akan saya jelaskan adalah bagaimana memasang Dynamic NAT untuk mengakses web server dengan menggunakan iptables.

Persiapan :



- 3 buah PC ataupun virtual machine.
    Firewall menggunakan OS Ubuntu Server
    Web Server menggunakan OS Backtrack
    Client menggunakan OS Ubuntu Desktop

Topologi :





Skenarion :


IP Client tidak bisa mengakses Web Server sehingga ditranslasikan ke IP interface eth0 pada Firewall.

Langkah-langkah implementasi :



Atur IP Address dan default gateway terlebih dahulu
IP Firewall : 1.1.1.1/24 , 1.1.2.1/24
IP Web Server : 1.1.1.2/24
IP Client : 1.1.2.2/24


Firewall

Web Server

Client
Akses web server dari client sebelum diberlakukan rule iptables.



Untuk melihat log akses pada web server gunakan perintah tail /var/log/apache2/access.log
Pada line terakhir terlihat bahwa yang mengakses web server adalah dari IP 1.1.2.2


Kemudian masukan rule Dynamic NAT pada firewall.

iptables -t nat -A POSTROUTING -s 1.1.2.2 -o eth0 -p tcp --dport 80 -j MASQUERADE



Cek apakah rule sudah masuk dalam tabel.


Kemudian akses kembali web server dari client. Lihat log terakhir apache2 dari web server


Dalam log tersebut, alamat client berubah menjadi 1.1.1.1


Perhatian ! Boleh Copy paste, tapi kalau anda tidak keberatan mohon cantumkan sumber dengan linkback ke blog ini.

Implementasi Static NAT Menggunakan iptables

Static NAT berfungsi untuk mentranslasikan IP Address, biasanya digunakan untuk mentranslasikan satu buah IP private terhadap sebuah IP publik dan sebaliknya. Hal ini sangat berguna, dimana perangkat dengan IP private dapat di manage dari jaringan lokal dan dapat diakses dari jaringan publik.

Tutorial kali ini saya akan menjelaskan bagaimana mentranslasikan suatu IP Address ke IP Address lainnya menggunakan Static NAT.


Persiapan :


 - 3 buah PC ataupun virtual machine.
    Firewall menggunakan OS Ubuntu Server
    Web Server menggunakan OS Backtrack
    Client menggunakan OS Ubuntu Desktop

Topologi :





Skenario :


IP Client tidak bisa mengakses Web Server sehingga ditranslasikan ke IP Firewall yaitu 1.1.1.1

Langkah-langkah implementasi :


Atur IP Address dan default gateway terlebih dahulu
IP Firewall : 1.1.1.1/24 , 1.1.2.1/24
IP Web Server : 1.1.1.2/24
IP Client : 1.1.2.2/24




Command pengaturan IP adalah ifcofig [interface] [ip address]
Command untuk menambah default gateway adalah route add default gw [ip gateway]


Akses web server dari client sebelum diberlakukan rule iptables.


Untuk melihat log akses pada web server gunakan perintah tail /var/log/apache2/access.log


Kemudian masukan rule static NAT di firewall
iptables -t nat -A POSTROUTING -s 1.1.2.2 -j SNAT --to-source 1.1.1.1


Cek apakah rule sudah masuk pada tabel


Kemudian akses kembali web server dari client


Lihat log terakhir dari Apache2 di web server




Perhatian ! Boleh Copy paste, tapi kalau anda tidak keberatan mohon cantumkan sumber dengan linkback ke blog ini.

Sunday, April 29, 2012

Implementasi Network Firewall

Network Firewall atau biasa disebut packet filters adalah firewall yang berfungsi untuk menyaring paket yang melawati firewall tersebut. Network Firewall didesain untuk melindungi jaringan secara keseluruhan dari berbagai serangan. Umumnya dijumpai dalam dua bentuk, yakni sebuah perangkat terdedikasi atau sebagai sebuah perangkat lunak yang diinstalasikan dalam sebuah server. Network Firewall umumnya bersifat transparan (tidak terlihat) dari pengguna dan menggunakan teknologi routing untuk menentukan paket mana yang diizinkan, dan mana paket yang akan ditolak.

Tutorial kali ini saya akan menjelaskan salah satu contoh bagaimana mengimplementasikan Network Firewall untuk menyaring paket HTTP.

Persiapan :

- 4 PC atau virtual machine.
  Firewall menggunakan OS Ubuntu Server.
  Web Server menggunakan OS Backtrack.
  Client 1 menggunakan OS Ubuntu Desktop.
  Client 2 menggunakan OS Windows 7

Topologi :




Skenario :


Hanya Client 1 yang bisa mengakses HTTP di web server sehingga Client 2 tidak diijinkan mengakses HTTP.

Langkah-langkah implementasi :


Atur IP Address dan default gateway terlebih dahulu pada semua komputer.


IP Firewall : 1.1.1.1/24 , 1.1.2.1/24 , 1.1.3.1/24
IP Web server : 1.1.1.2/24
IP Client 1 : 1.1.2.2/24
IP Client 2 : 1.1.3.2/24

Untuk setting IP perintahnya adalah "ifconfig [nama_interface] [IP_address]"
Untuk setting default gateway perintahnya adalah "route add default gw [alamat_gateway]"

Contoh pengaturan IP Firewall :

Firewall
Karena firewall juga sebagai router maka pada firewall harus diaktifkan fungsi ip forwarding. Edit file /etc/sysctl.conf, kemudian hapus tanda # pada #net.ipv4.ip_forward=1 sehingga menjadi seperti ini


Aktifkan hasil perubahan tadi dengan command sysctl -p




Jika IP sudah disetting, cek koneksi ke setiap komputer dengan menggunakan ping


Sebelum diberlakukan rule, semua client dapat mengakses web dari web server.

Client 1

Client 2


Kemudian masukan rule baru ke Firewall.

iptables -A FORWARD -p tcp --dport 80 -s 1.1.2.2 -d 1.1.1.2 -j ACCEPT
iptables -A FORWARD -p tcp --dport 80 -s 1.1.3.2 -d 1.1.1.2 -j DROP






Untuk melihat apakah rule sudah masuk ke tabel gunakan perintah iptables -L




Lakukan pengujian rule. Akses kembali web server dari kedua client.

Client 1

Client 2

Hanya Client 1 yang dapat mengakses web server karena request dari Client 2 di DROP oleh firewall




Perhatian ! Boleh Copy paste, tapi kalau anda tidak keberatan mohon cantumkan sumber dengan linkback ke blog ini.

Implementasi Personal Firewall

Personal Firewall adalah salah satu jenis firewall yang mengontrol lalu lintas data dari dan ke sebuah komputer, mengijinkan atau menolak komunikasi data sesuai dengan pengaturan keamanannya. Biasanya hanya mengontrol input dan output. Firewall jenis ini akhir-akhir ini berevolusi menjadi sebuah kumpulan program yang bertujuan untuk mengamankan komputer secara total, dengan ditambahkannya beberapa fitur pengaman tambahan semacam perangkat proteksi terhadap virus, anti-spyware, anti-spam, dan lainnya. Bahkan beberapa produk firewall lainnya dilengkapi dengan fungsi pendeteksian gangguan keamanan jaringan (Intrusion Detection System). Personal Firewall secara umum hanya memiliki dua fitur utama, yakni Packet Filter Firewall dan Stateful Firewall.

Tutorial yang akan saya jelaskan adalah implementasi personal firewall di Linux untuk memblokir penggunaan SSH menggunakan iptables.

Persiapan :


 - 2 buah PC ataupun virtual machine. Disini saya menggunakan Backtrack sebagai personal firewall dan Ubuntu sebagai Client. Untuk personal firewall harus menggunakan OS Linux.
- Paket openssh-server jika pada koputer firewall belum terinstalkan

Topologi :




Skenario :

Saya sudah menginstalkan paket openssh-server di komputer firewall sehingga skenarionya adalah komputer Client tidak dapat melakukan SSH service ke komputer Firewall.

Langkah-langkah implementasi :


Atur IP Address terlebih dahulu pada kedua komputer dengan perintah ifconfig.
IP Firewall : 1.1.1.1/24
IP Client : 1.1.1.2/24



Cek koneksi kedua komputer dengan melakukan ping.


Jika ping sudah berhasil maka tahap selanjutnya adalah mencoba SSH sebelum dipasang rule iptables.


Masukan passwordnya, jika berhasil maka tampilannya seperti gambar di bawah ini.


Kemudian kita masukan rule iptables nya pada firewall, command nya adalah "iptables -A INPUT -p tcp --dport 22 -s 1.1.1.2 -j DROP"


Untuk melihat apakah rule tersebut sudah masuk ke dalam tabel gunakan command "iptables -L"


Lakukan pengecekan apakah rule tersebut berfungsi atau tidak. Gunakan SSH dari Client ke Server.


Jika koneksi terputus maka rule yang kita masukan sudah berfungsi.


Perhatian ! Boleh Copy paste, tapi kalau anda tidak keberatan mohon cantumkan sumber dengan linkback ke blog ini.