Ahhh ACL, Access Control List

ACL atau Access Control List adalah sekumpulan aturan . Tujuannya untuk meningkatkan keamanan jaringan 
Pada keluarga *NIX/Linux dikenal dengan nama packet filtering / netfilter dengan software-nya yang populer, iptables.

Cara kerja ACL pada Cisco IOS
  1. Paket data yang masuk atau keluar akan dibandingkan dengan statement pertama dari access-list
  2. Jika paket data cocok, aksi akan dilakukan (permit atau deny). Proses berakhir untuk paket data.
  3. Jika tidak cocok, ulangi langkah 1 dan 2 dengan statement berikutnya (top - down processing)
  4. Jika paket data tidak cocok dibandingkan dengan seluruh baris accessl-list, paket akan di deny.

ACL dapat di kelompokkan menjadi 2 tipe
  • Standard ACL
  • Extended ACL
Pada gambar dibawah ini kita dapat melihat jenis ACL yang didukung oleh Cisco IOS versi 12.4. 
Cisco's Access Control List

Standard Access Control List 

Standar ACL akan menyaring paket data hanya berdasarkan Source IP Address atau subnet, pada dasarnya hanya membolehkan permit atau deny untuk seluruh paket data. Untuk ACL yang lebih fleksibel dapat menggunakan Extended ACL yang menyaring paket data berdasarkan source dan destination IP Address, source dan destination port, dan protokol TCP/IP seperti ICMP, UDP dan TCP, lebih jelasnya lihat disini.


Pada Cisco IOS, untuk membuat ACL yang kita lakukan adalah:
  1. Definisikan rule menggunakan perintah access-list.
  2. Langkah berikutnya, menerapkan rule -yang telah didefinisikan sebelumnya- pada interface menggunakan perintah access-group, dengan arah inbound atau outbound.

Sintaks ACL

access-list accesss-list number [permit | deny] [ip address | any] [wildcard mask(opt)]

access-list number 
Standard ACL nomor 1 sampai 99 dan 1300 - 1999
Extended ACL nomor 100 - 199  dan 2000-2099                             
wildcard mask  lihat disini

contoh:
access-list 1 permit 192.168.1.1 0.0.0.0
router(config)#interface fa0/0
router(config-int)#ip access-group 1 in

tergantung interface dan direction, jika acl diatas diterapkan pada interface fa0/0 dengan perintah "ip access-group 1 in " maka hanya traffic dari 192.168.1.1 yang diteruskan ke interface fa0/0 , jika menggunakan "ip access-group 1 out" maka hanya traffic dari 192.168.1.1 yang boleh keluar dari interface fa0/0.


Pedoman untuk membuat Access List

Design dan implementasi jaringan yang baik dapat menambah keamanan. Berikut beberapa hal yang perlu diperhatikan dalam mengkonfigurasi ACL
  • Pilih jenis ACL apakah standar atau extended berdasarkan kondisi 
  • ACL akan di eksekusi dari baris pertama sampai baris terakhir (top-down), sehingga jika baris pertama cocok, baris berikutnya tidak akan diproses. Buatlah sedemikian rupa sehingga aturannya dari spesifik ke general.
  • Hanya boleh satu ACL per interface, per protocol, per direction yang diijinkan.
  • Tempatkan Standard ACL sedekat mungkin dengan destination traffic , dan Extended ACL source sedekat mungkin dengan source traffic.
  • Ada statement deny all pada setiap acl yang kita buat, sehingga setiap acl setidaknya harus mempunyai satu statement permit, jika tidak semua traffic akan di deny / drop.

Monitoring Access Control List pada Cisco IOS

Perintah berikut ini berguna untuk memeriksa konfigurasi ACL
  • show access-list
  • show access-list access-list number
  • show ip access-list
  • show ip interface
  • show running-config 

Konfigurasi RIP dengan otentikasi

Ada beberapa cara untuk mengamankan jaringan komputer, menggunakan Access Control List, menggunakan password untuk otentikasi, tunnelling dll. Salah satu cara adalah mengamankan pertukaran informasi antara router, sehingga kita dapat memastikan bahwa informasi yang dimasukkan ke tabel routing valid. RIP versi 2 telah mendukung otentikasi.   Ada dua pilihan otentikasi plain-text atau md5. Pada cisco defaultnya adalah plain-text.
topologi jaringan
Router R1 dan R2 terkoneksi langsung melalui interface serial-nya. Menggunakan routing protocol RIP, kita ingin agar paket update yang dikirim dan diterima oleh router tersebut terotentikasi.
Konfigurasi interfase serial, agar kedua router terkoneksi

 Konfigurasi dasar Router R1

Konfigurasi dasar Router R2
Tes koneksi antar router

Konfigurasi RIP versi 2

Ok... sebelum melanjutkan pada konfigurasi otentikasi, kita kembali ke basic. Kita aktifkan RIP pada kedua router.
konfiurasi RIPv2 pada Router R1

konfiurasi RIPv2 pada Router R2

Verifikasi RIP

Pastikan bahwa kedua router telah saling bertukar informasi,
verify RIPv2 pada R1
verify RIPv2 pada R2


Setelah kita memastikan bahwa kedua router dapat mengirim dan menerima paket update, kita akan membuat key chain, key dan key string, yang akan digunakan untuk otentikasi.

Konfigurasi parameter otentikasi
konfigurasi key chain, key dan key string pada R1
konfigurasi key chain, key dan key string pada R2


catatan :
  • key chain "kunci" tidak perlu sama pada kedua router
  • nomor identifikasi "key 1" tidak perlu sama KECUALI menggunakan otentikasi md5
  • "key string p4ssw0rd " adalah password sebenarnya, harus sama pada kedua router

 

Konfigurasi plain-text otentikasi

konfigurasi plain-text pada R1
konfigurasi plain-text pada R2

 

Verifikasi plain-text otentikasi

debug ip rip
seperti kita lihat diatas, hasil dari perintah debug ip rip, passwordnya terlihat jelas. Pilihan labih baik adalah menggunakan otentikasi md5.

 

Konfigurasi dan verifikasi otentikasi md5

Mari kita setting otentikasi md5 pada Router R1, mengaktifkan debug pada Router R2 untuk melihat apa yang terjadi,

konfigurasi md5 pada R1

Pada Router R2, 
konfigurasi md5 pada R2

Pada hasil perintah "debug ip rip " , kita dapat melihat R2 mengabaikan paket update yang diterima dari Router R1 dengan informasi "(invalid authentication)". Kemudian kita setting otentikasi md5 pada Router R2, informasi paket update dapat saling diterima oleh kedua router seperti yang terlihat pada hasil "debug ip rip" di Router R1

Otentikasi md5 pada cisco router sangat mudah untuk dikonfigurasikan, seperti yang terlihat dari tutorial diatas.

Konfigurasi Dasar Routing Information Protocol (RIP)

Routing Information Protocol atau RIP adalah salah satu routing protokol yang tertua, yang menggunakan hop count sebagai routing metric-nya 

Karakter RIP  

  • Merupakan Distance Vector routing protocol murni
  • Hop Count sebagai metric untuk memilih rute terbaik 
  • Maksimum hop count adalah 15, hop ke 16 dianggap unreachable 
  • Mengirimkan update lengkap tabel routingnya pada semua interface yang aktif setiap 30 detik

Versi RIP


Terdapat tiga versi dari routing protocol RIP:
1. RIP Version 1
  • Clasfull routing protocol
2. RIP Version 2
    Sama sperti RIP v1 tetapi dengan tambahan fitur
  • Autentikasi MD5 
  • Support Classless IP Address
  • Menggunakan ip multicast 224.0.0.9 untuk update tabel routing-nya
3. RIPng  
  • Autentikasi menggunakan IPSec
  • Support IPv6
  • compatible RIPv2 tetapi tidak dengan RIPv1
  • menggunakan ip multicast FF02::9 untuk update


Konfigurasi Dasar

Konfigurasi RIP pada router Cisco sangat mudah dilakukan, hanya membutuhkan dua atau tiga perintah saja. Kita akan mencobanya menggunakan gns3. Gambar topologinya, topologi RIP
 ios: c2600-ipbase.bin

Router R1
R1(config)# router rip
R1(config-router)# ver 2
R1(config-router)# network 192.168.0.0
R1(config-router)# network 192.168.1.0
R1(config-router)# network 192.168.2.0
R1(config-router)#  passive-interface fa0/1
R1(config-router)# ^Z

Router R2  
R2(config)# router rip
R2(config-router)# ver 2
R2(config-router)# network 192.168.0.0
R2(config-router)# network 192.168.1.0
R2(config-router)# network 192.168.2.0
R2(config-router)# ^Z

Router R3
R3(config)# router rip
R3(config-router)# ver 2
R3(config-router)# network 192.168.0.0
R3(config-router)# network 192.168.1.0
R3(config-router)# network 192.168.2.0
R3(config-router)#  passive-interface fa0/1
R3(config-router)# ^Z  

passive-interface


Pada topologi diatas, R1 dan R3 dapat di kategorikan sebagai stub network, network yang hanya mempunyai satu jalur masuk / keluar. Apakah perlu untuk update paket RIP pada interface fa0/1 di R1 dan R3 ? Tentu tidak, karena percuma.
Untuk mencegah RIP mengirim paket update,  kita dapat menggunakan beberapa cara, salah satunya dengan menggunakan perintah passive-interface. Perintah ini akan membuat RIP menerima paket update, tapi tidak akan mengirim paket update. 

Konfigurasi telah selesai, kita akan mencoba ping dari host C1 ke host C2,
hasil ping

ping berhasil, yang menunjukkan ada koneksi antara C1 dan C2. Perintah - perintah berikut berguna jika terjadi error dalam RIP
  • show ip route
  • show ip protocol
  • debug ip rip

Routing Dinamis

Pada artikel tentang statis routing, hanya terdapat sedikit router yang perlu dikonfigurasi. Bagaimana jika kita mempunyai banyak router dan menggunakan routing statis ?
Sudah tentu, kita akan mempunyai banyak rute yang menunjuk pada setiap network dan kita tidak mempunyai backup. Bagaimana jika salah satu link gagal ?
Routing dinamis adalah jawabannya. Routing dinamis akan mengirim informasi tentang network kepada tiap router yang berpartisipasi.

Ada 2 (dua) istilah yang mirip tetapi sangat berbeda artinya.
1. Routing Protocol
2. Routed Protocol

Routing protocol digunakan antar router untuk saling bertukar informasi tentang routing dan membangun tabel routing.
Routed protocol adalah protocol yang kita routing-kan contoh IPv4, Appletalk dll.

Ada 2 tipe routing protocol :
1. Interior Gateway Protocol, pertukaran informasi routing dalam satu Autonomous System (AS), contoh RIP, EIGRP, OSPF
2. Exterior Gateway Protocol, pertukaran informasi routing diantara beberapa Autonomous System (AS).

Berdasarkan cara kerjanya, routing protocol dibedakan menjadi 3:
1. Distance Vector, menggunakan algoritma yang sederhana, cocok digunakan untuk network skala kecil. Untuk penjelasan detail disini. Contoh routing protocol-nya adalah RIP
2. Link State,  menggunakan algoritma routing yang kompleks, sering digunakan untuk network skala menengah sampai besar. Penjelasan detail disini. Contoh OSPF,IS-IS.
3. Balanced Hybrid/Hybrid, mempunyai fitur yang mirip Distance Vector dan Link State, contoh EIGRP.

Administrative Distance (AD)

Administrative Distance (AD) adalah ukuran kepercayaan suatu informasi routing yang diterima dari router tetangga. AD akan bernilai antara 0 - 255, dimana nilai 0 adalah rute paling terpercaya sedangkan nilai 255 paling tidak terpercaya.
Jika informasi rute mempunyai nilai AD yang sama, maka routing protocol akan menggunakan metric sebagai pembedanya. Tapi jika Ad dan Metric bernilai sama routing protocol akan me-load balance trafiknya.

Tabel Administrative Distance Cisco


Metric

Metric adalah cara untuk mengukur atau membandingkan. Routing protocol menggunakan metric untuk memilih rute terbaik ketika terdapat banyak rute yang menuju satu network yang sama. 
Terdapat beberapa parameter yang digunakan untuk mengukur metric diantaranya:
  • Hop Count 
  • Bandwith 
  • Load 
  • Delay 
  • Reliability 
  • Cost
Penggunaan metric untuk routing protocol,
RIP : Hop Count, rute terbaik akan di-install pada tabel routing dengan nilai terendah.
EIGRP : Bandwidth, delay, reliability dan load, rute terbaik dipilih dengan nilai terendah yang dihitung dari 4 parameter ini, secara default hanya bandwidth dan delay yang digunakan
OSPF : Cost, rute terbaik digunakan dengan nilai cost terendah.

Konfigurasi awal Slackware

Oke, pertama kali yang diucapkan adalah SELAMAT ....!!! karena telah berhasil meng-install Slackware dengan sukses, dan kemudian mendapatkan prompt yang berkedip - kedip. 
Tidak seperti distro linux yang lain, secara default Slackware booting pada runlevel 3 atau mode CLI.Jadi, apa yang akan kita lakukan sekarang ? Tentu saja, setting mesin kita agar dapat dipergunakan. Berikut hal yang sering saya lalukan bila untuk menyetting mesin Slackware. Disini saya menggunakan Slackware 13.37, untuk versi lainnya atau distro linux lain seharusnya settingan dasar ini dapat dilakukan.

Menambah User 


Pada umumnya orang tidak akan menggunakan root account untuk pekerjaan sehari - hari. Jadi kita akan menambah user baru untuk pekerjaan sehari - hari, dan jika membutuhkan akses root dapat menggunakan su atau sudo. Pada terminal, kita masukkan perintah adduser ( untuk distro lain mungkin useradd ). Ikuti perintah sampai selesai.
Jika masih bingung, cek man page.

 

Basic Security

Ada 3 file yang perlu diedit yaitu hosts.allow, hosts.deny dan inetd.conf
Masuk ke directory etc
cd /etc

Backup file hosts.allow
cp hosts.allow hosts.allow.BAK

Edit file hosts.allow menggunakan editor favorit kalian, tambahkan baris 
ALL : 127.0.0.1
ALL : 192.168.1. 

Dengan menambahkan baris ALL : 127.0.0.1, kita mengijinkan localhost untuk mengakses service pada mesin ini :) , dan baris ALL : 192.168.1. mengijinkan LAN untuk mengakses mesin ini (disini saya menggunakan jaringan 192.168.1.0 / 24).

Edit file hosts.deny, tambahkan baris ALL : ALL yang berarti menolak akses untuk semua orang. 
Arti dari konfigurasi kedua file diatas adalah akses untuk semua orang ditolak kecuali akses untuk orang yang terdapat di hosts.allow.

Edit file inetd.conf, tambahkan tanda pagar (#) pada seluruh baris yang ada kecuali baris auth, yang digunakan untuk otentikasi.   

Konfigurasi Audio

Pada Slackware 13.37 audio seharusnya sudah terdeteksi secara otomatis. Berikut langkah - langkah standar untuk setting audio
#alsaconf 
#alsamixer
#alsactl store 


Membuat database dari filesystem

Jalankan perintah updatedb, sehingga kita mempunyai index file yang terdapat dalam komputer.

X-Windows

Jalankan saja startx, pada Slakware 13.37 seharusnya sudah otomatis, kecuali jika kita membutuhkan driver dari pihak ketiga (jika video card-nya  ATI atau NVDIA). Untuk mengkonfigurasi video adapter jalankan perintah XOrg -configure  .

Mode GUI

Edit file "/etc/inittab"  ganti default runlevel dari 3 (console) ke 4 (GUI). Jika ingin gonta-ganti dari  console ke GUI gunakan saja perintah init, dan asiknya tidak perlu reboot.

Rerunning Setup

Jika kita butuh untuk menjalankan kembali setup --untuk mengaktifkan script atau mengganti zona waktu, atau apalah terserah -- jalankan saja pkgtool sebagai root.,