Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Firewall & Bandwidth Management
by Henry Saptono Jan 2007
2
Network Diagram
3
Network Diagram (with PC gateway)
4
Network Diagram (with PC gateway)
5
Kata Kunci
6
Router Device dedicated yang berfungsi mengatur proses 'routing' antar jaringan komputer
7
Firewall Mekanisme untuk melakukan Paket Filtering, Paket Investigasi, dan Paket manipulasi. Diimplementasikan pada level “Kernel Space” yang berupa modul atau built in Secara logik sebagai node khusus dalam jaringan komputer
8
Gateway Mengatur “proses static routing” antar jaringan.
Dalam wujud PC. Diimplementasikan pada level “kernel space”, umumnya sebagai fungsi built in.
9
Linux sebagai Sistem Operasi yang mendukung Jaringan
Sistem operasi linux memiliki ragam bentuk fungsi-fungsi “ dukungan jaringan (Networking Support)”, diantaranya sbb: Routing (IP Forwarding) Firewall (Netfilter) QoS (Quality Of Service) Tunneling IPsec(vpn) LVS, dan lain -lain
10
Implementasi Linux Gateway
Fungsi linux sebagai gateway (IP Forwarding) adalah fungsi built-in pada kernel Perlu diaktifkan pada saat 'boot' echo 1 > /proc/sys/net/ipv4/ip_forward Atau edit file /etc/sysctl.conf, dan set parameter net.ipv4.ip_forward=1 Jika diperlukan mengatur tabel routing (gunakan perintah 'route' )
11
Ilustrasi IP Forwarding
12
Internet Sharing Internet sharing : berbagi akses koneksi internet pada sebuah koneksi internet. Implementasinya pada level 'kernel space' melibatkan fungsi-fungsi kernel yaitu : IP forwarding(routing/gateway) dan IP Masquerading (Netfilter/IPtables)
13
Internet sharing Di Linux Langkah-langkah menerapkannya, sbb:
IP Forwarding (gateway) echo 1 > /proc/sys/net/ipv4/ip_forward Atau, vi /etc/sysctl.conf net.ipv4.ip_forward=1 IP Masquerading iptables -t nat -A POSTROUTING -s /24 - o eth0 -j MASQUERADE
14
Ilustrasi IP Masquerade
15
Klasifikasi Firewall Firewall dapat diklasifikasikan secara umum terdiri dari 2 class: Proxy (Dual homed host) Packet Filter (screening router)
16
Firewall(packet filter)
Diimplementasikan pada level 'kernel space', dengan nama fungsi “netfilter” , dalam bentuk modul. Cek dukungan kernel terhadap netfilter sbb: grep -i netfilter /boot/config
17
Konfigurasi kernel
18
Tool Administrasi Firewall
Tool administrasi firewall (netfilter) di linux disediakan secara default dalam bentuk perintah (command) 'iptables'
19
Iptables netfilter/iptables terdiri dari 3 tabel: filter, nat, mangle
Perintah 'iptables' digunakan untuk mengelola, memaintain, menginspeksi rule- rule IP packet filter dalam kernel linux.
20
Tabel Filter filter: This is the default table (if no -t option is passed). It contains the built-in chains INPUT (for packets destined to local sockets), FORWARD (for packets being routed through the box), and OUTPUT (for locally-generated packets).
21
Tabel nat nat: This table is consulted when a packet that creates a new connection is encountered. It consists of three built-ins: PREROUTING (for altering packets as soon as they come in), OUTPUT (for alteringlocally-generated packets before routing), and POSTROUTING (for altering packets as they are about to go out).
22
Tabel mangle mangle: This table is used for specialized packet alteration. Until kernel it had two built-in chains: PREROUTING (for altering incoming packets before routing) and OUTPUT (for altering locally-generated packets before routing). Since kernel , three other built-in chains are also supported: INPUT (for packets coming into the box itself), FORWARD (for altering packets being routed through the box),and POSTROUTING (for altering packets as they are about to go out).
23
iptables - administration tool for IPv4 packet filtering and NAT
SYNOPSIS iptables [-t table] -[AD] chain rule-specification [options] iptables [-t table] -I chain [rulenum] rule-specification [options] iptables [-t table] -R chain rulenum rule-specification [options] iptables [-t table] -D chain rulenum [options] iptables [-t table] -[LFZ] [chain] [options] iptables [-t table] -N chain iptables [-t table] -X [chain] iptables [-t table] -P chain target [options] iptables [-t table] -E old-chain-name new-chain-name
24
Diagram netfilter/iptables
25
Contoh perintah iptables
Sebuah rule iptables dapat menspesifiksikan sumber paket (-s), tujuan paket (-d) , protokol (-p), dan port. Sebagai contoh , untuk memblok (deny) seuatu paket yang datang dari IP address , sebgai berikut: iptables -t filter -A INPUT -s j DROP filter adalah default table jika option -t tidak disertakan.
26
Contoh perintah iptables
Jika tanda "!" disertakan didepan ip address sumber atau tujuan , ini menyatakan negasi dari ip address tersebut. iptables -t filter -A OUTPUT -d ! j DROP Rule diatas memblok semua paket dari local komputer firewall yang ditujukan ke semua ip address kecuali ke ip address Incoming atau Outgoing interface dapat di spesifikasikan sebagai berikut: iptables -t filter -A INPUT -s i eth1 -j DROP
27
iptables dan NAT Network Address Translation dapat ditampilkan oleh kernel 2.4 dalam bentuk satu dari dua buah cara , yaitu: source NAT (SNAT) dan destination NAT (DNAT). DNAT sering digunakan untuk membelokkan (redirect) paket yang datang ke suatu interface dan diarahkan menjadi ke lokasi lain, seperti ke mesin proxy(squid proxy server). SNAT digunakan untuk menyembunyikan source address dari paket dengan cara memetakan ulang source address paket yang keluar ke IP address komputer yang lain atau rentang address yang lain. Kernel 2.4 secara otomatis melakukan reverse-translate semua paket-paket NAT yang dimaksud.
28
Ilustrasi DNAT
29
Ilustrasi SNAT
30
Contoh NAT Untuk mengimplementasikan ip masquerading lakukan hal-hal sebagai berikut, : iptables -t nat -A POSTROUTING -s /24 -o eth0 -j MASQUERADE Untuk menerapkan REDIRECT untuk keperluan membelokkan paket web secara transparan yang datang pada interface eth0 ke proxy server pada firewall itu sendiri, jalankan perintah berikut: iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth0 -j REDIRECT –to-port 3128
31
Contoh NAT Untuk menerapkan destination NAT untuk keperluan membelokkan paket web secara transparan yang datang pada interface eth0 ke , jalankan perintah berikut: iptables -t nat -A PREROUTING -p tcp -m multiport --dport 80,443 -i eth0 -j DNAT --to-destination Untuk merubah source address melalui SNAT menjadi ip address dengan port 1024 sampai 65535, gunkan perintah berikut: iptables -t nat -A POSTROUTING -p tcp -o eth1 -j SNAT --to :
32
Shorewall Shoreline Firewall atau lebih dikenalnya dengan istilah shorewall adalah tool tingkat tinggi yang digunakan untuk konfigurasi netfilter/iptables (firewall di linux). Untuk implementasi firewall dengan shorewall Anda harus mengkonfigurasi beberapa file konfigurasi shorewall seperti file zones, interfaces, policy, masq, dan rules. Semua file konfigurasi shorewall terletak dalam folder /etc/shorewall.
33
Konfigurasi Shorewall
Langkah pertama, edit file /etc/shorewall/shorewall.conf untuk mengenable atau mengaktifkan shorewall, carilah parameter “STARTUP_ENABLED”, kemudian set parameter tersebut sebagai berikut: STARTUP_ENABLED=Yes Langkah kedua, editlah file /etc/shorewall/zones untuk mendefinisikan zone (segment) jaringan yang ada. Dalam contoh ini kita anggap firewall memiliki 2 buah interface network masing-masing terhubung dengan zone net (internet) dan zone loc (LAN). Lihat contoh berikut ini: #ZONE TYPE OPTIONS IN OUT # OPTIONS OPTIONS fw firewall net ipv4 loc ipv4 #LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE
34
Konfigurasi Shorewall
Langkah ketiga, editlah file /etc/shorewall/interfaces untuk mendefinisikan interface network mana sajakah yang ada pada komputer firewall dan terhubung dengan zone mana sajakah.Lihat contoh berikut ini: #ZONE INTERFACE BROADCAST OPTIONS net eth0 detect loc eth1 detect #LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE
35
Konfigurasi Shorewall
Langkah keempat, editlah file /etc/shorewall/policy untuk mendefinisikan default kebijakan firewall pada masing-masing zone yang telah didefinisikan. Lihat contoh berikut ini: #SOURCE DEST POLICY LOG LIMIT:BURST # LEVEL fw all ACCEPT loc fw DROP info loc net DROP info net fw DROP info net loc DROP info all all DROP #LAST LINE -- DO NOT REMOVE
36
Konfigurasi Shorewall
Langkah kelima, editlah file /etc/shorewall/masq untuk memungkinkan masquerade paket dari LAN yang akan keluar dari firewall menuju internet. Lihat contoh berikut ini: #INTERFACE SUBNET ADDRESS PROTO PORT(S)IPSEC eth0 eth1 #LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
37
Konfigurasi Shorewall
Langkah keenam, editlah file /etc/shorewall/rules untuk mendefinisikan rule-rule firewall selain rule default yang telah didefinisikan dalam file /etc/shorewall/policy. Lihat contoh berikut ini: SECTION NEW ACCEPT net: fw ACCEPT loc: fw REDIRECT loc:! tcp www ACCEPT net: fw tcp ,21,22,25,53,80 ACCEPT net: fw udp ,21,22,25,53,80 ACCEPT loc net tcp ,21,22,25,53,80,443 ACCEPT loc net udp ,21,22,25,53,80,443 #LAST LINE -- ADD YOUR ENTRIES ABOVE THIS LINE -- DO NOT REMOVE
38
Bandwidth Management Bandwidth Management (Traffic Control/Shaping) adalah suatu istilah yang ditujukan pada suatu subsistem antrian packet dalam/pada suatu jaringan atau network devices. Secara singkat traffic control/shaping adalah suatu usaha mengontrol traffic jaringan sehingga bandwidth lebih optimal dan performa network lebih terjamin. Fungsi dan operasi traffic control pada kernel linux terdiri dari komponen-komponen berikut ini: queueing disciplines (qdisc) classes filters policer
39
Bandwidth Management Queueing discipline (Qdisc) bertanggungjawab untuk mentransmisikan data. Classes dipasang pada qdisc dan mengandung/berisi traffic. Setiap class yang tidak memiliki child class selalu memiliki 1 qdisc yang berasosiasi dengannya untuk mentransmisikan paket-paket data, dan qdisc tersebut menampung seluruh traffic yang masuk/mengalir ke dalam class tersebut. Filters dipasang pada qdisc dan class dan men-split traffic menjadi beberapa child-class yang berbeda. Policers digunakan untuk meyakinkan filters sesuai/match hanya dengan satu rate paket tertentu. Policers dapat dishare oleh beberapa filter berbeda dan pada interface-interface berbeda.
40
Bandwidth Management Bandwidth Management (Trfaffic Control/Shaping) adalah mekanisme mengelola dan memaintain traffic yang dibangkitkan oleh suatu Interface Network. Bandwidth Management diimplementasikan pada level 'kernel space' Merupakan bagian dari fungsi QoS. Cek dukungan kernel sbb: # grep -i qos /boot/config
41
Konfigurasi kernel
42
Tool administrasi traffic shaping
Untuk mengelola dan memaintain trraffic digunakn tool administrasi yang disediakan dalam bentuk perintah 'tc'. tc merupakan tool yang berasal dari paket software 'iproute' atau 'iproute2'
43
tc - show / manipulate traffic control settings
SYNOPSIS tc qdisc [ add | change | replace | link ] dev DEV [ parent qdisc-id |root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ] tc class [ add | change | replace ] dev DEV parent qdisc-id [ classid class-id ] qdisc [ qdisc specific parameters ] tc filter [ add | change | replace ] dev DEV [ parent qdisc-id | root ] protocol protocol prio priority filtertype [ filtertype specific parameters ] flowid flow-id tc [-s | -d ] qdisc show [ dev DEV ] tc [-s | -d ] class show dev DEV tc filter show dev DEV
44
Diagram hubungan netfilter dan TC
45
Skenario Traffic Shaping
Traffic shaping hanya akan efektif diimplementasikan pada Outgoing traffic/bandwith Outgoing traffic diterapkan sebagai TC EGRESS
46
Spesifikasi Bandwidths / rates
kbps :Kilobytes per second mbps :Megabytes per second kbit :Kilobits per second mbit :Megabits per second
47
Konfigurasi Shorewall sbg Traffic controll
Langkah pertama dalam implementasi traffic controll menggunakan shorewall adalah mengenable Traffic Controll (TC) pada file konfigurasi utama shorewall (/etc/shorewall/shorewall.conf). Sebelumnya diasumsikan konfigurasi shorewall sebagai firewall dan gateway telah dilakukan dengan baik dan benar. Dalam file tersebut carilah parameter “TC_ENABLED”, dan pastikan atau set nilai parameter tersebut menjadi ssb: TC_ENABLED=Internal Langkah kedua editlah file /etc/shorewall/tcdevices, untuk menentukan pada device manakah akan Anda terapkan pengontrolan bandwidth, serta berapakan maksimum incoming dan outgoing bandwidth. Sebagai contoh kita akan mengatur agar bandwidth maksimum yang datang ke devices eth1 sebesar 512kbit dan bandwidth outgoing (traffic download dari client/ LAN) maksimum sebesar 384kbit. Lihat contoh berikut ini: #INTERFACE IN-BANDWITH OUT-BANDWIDTH eth kbit 384kbit #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
48
Konfigurasi Shorewall sbg Traffic controll
Langkah ketiga editlah file /etc/shorewall/tcclasses, untuk menentukan atau mendefinisikan class-class pada qdisc. Sebagai contoh kita akan mendefinisikan 3 buah class , class pertama dengan prioritas utama memiliki rate 50% dari bandwidth (outgoing bandwidth) yang ada. Dan class yang kedua 30%, class yang ketiga 20% sebagai default class. Lihat contoh berikut ini: #INTERFACE MARK RATE CEIL PRIORITY OPTIONS eth full*5/10 full 0 eth full*3/10 full*5/10 1 eth full*2/10 full*5/10 2 default #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
49
Konfigurasi Shorewall sbg Traffic controll
Langkah keempat editlah file /etc/shorewall/tcrules, untuk menentukan atau mendefinisikan rule klasifikasi traffic. Dalam file ini menentukan traffic manakah yang masuk dalam class -class yang telah kita definisikan dalam file tcclasses. Lihat contoh sebagai berikut: #MARK SOURCE DEST PROTO PORT(S) CLIENT USER TEST # PORT(S) 1:F / / icmp 1:F / all 2:F / tcp - 80,443 3:F / all #LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
50
Konfigurasi Shorewall sbg Traffic controll
Langkah kelima, restartlah shorewall dengan perintah sbb: #shorewall restart Kemudian checklah qdisc dan class sbb: #shorewall show tc Dan terakhir cobalah Anda uji dan amati dengan mengakses server di internet (http,https,ssh dll) dari LAN atau dari IP - IP yang dicontohkan dalam tcrules (misal ip , , )
51
Referensi www.google.com www.iptables.org www.shorewall.net
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.