Implementasikan ACL di Cisco untuk mengontrol lalu lintas jaringan: Standard ACL, Extended ACL, Named ACL, wildcard mask, dan cara menerapkannya pada interface.
Daftar Isi
- ⚡ Ringkasan Eksekutif (TL;DR)
- Panduan Belajar Cisco: Konfigurasi Access Control List (ACL)
- 1. Konfigurasi Standard ACL Cisco (Numbered 1-99)
- 2. Konfigurasi Extended ACL Cisco (Numbered 100-199)
- 3. Konfigurasi Named ACL (Standar Modern Industri)
- 4. Konfigurasi Advanced ACL: Time-Based ACL & Dynamic (Lock-and-Key) ACL
- Implementasi Praktis Time-Based ACL (Jadwal Jam Kerja Kantor)
- 5. Tabel Referensi Wildcard Mask dalam Cisco Networking
- 6. Skenario Troubleshooting Umum: Urutan Sequence Number & Edit ACL
- A. Analisis Kasus 'Shadowed Rule' (Aturan Tertutup)
- B. Cara Menyisipkan Baris di Antara Statement Tanpa Menghapus ACL (Sequence Numbering)
- C. Perintah Verifikasi & Monitoring ACL
- FAQ: Pertanyaan Umum Seputar Access Control List (ACL) Cisco
⚡ Ringkasan Eksekutif (TL;DR)
- Standard ACL (1-99 & 1300-1999): Memfilter lalu lintas hanya berdasarkan IP sumber. Tempatkan sedekat mungkin dengan tujuan (destination).
- Extended ACL (100-199 & 2000-2699): Memfilter berdasarkan IP sumber, IP tujuan, protokol (TCP/UDP/ICMP), dan nomor port. Tempatkan sedekat mungkin dengan sumber (source).
- Time-Based ACL: Menerapkan filter keamanan berdasarkan jadwal waktu dan hari tertentu (wajib sinkronisasi jam dengan NTP).
- Wildcard Mask (Inverted Mask): Kebalikan dari subnet mask (contoh:
/24 = 0.0.0.255,/28 = 0.0.0.15, host spesifik =hostatau0.0.0.0). - Aturan Evaluasi Top-Down & Implicit Deny: ACL dievaluasi baris demi baris dari atas ke bawah (*First Match Wins*). Setiap ACL memiliki aturan tak terlihat
deny anydi baris terakhir. - Manajemen Sequence Number: Gunakan penomoran baris pada Named ACL untuk menyisipkan atau menghapus statement tanpa perlu membongkar konfigurasi.
Panduan Belajar Cisco: Konfigurasi Access Control List (ACL)
Dalam arsitektur keamanan jaringan komputer, Access Control List (ACL) berfungsi sebagai filter paket (*packet filtering firewall*) Layer 3 dan Layer 4 pada perangkat router dan switch Cisco. ACL bertindak sebagai penjaga gerbang yang memeriksa setiap header paket data dan menentukan apakah paket tersebut diizinkan lewat (permit) atau dibuang (deny).
Pada modul belajar Cisco Networking ini, kita akan membahas secara komprehensif mulai dari perbedaan Standard vs Extended ACL, formulasi Wildcard Mask, Named ACL modern, implementasi Time-Based ACL, hingga teknik manajemen Sequence Number dan troubleshooting di Cisco Packet Tracer.
1. Konfigurasi Standard ACL Cisco (Numbered 1-99)
Standard ACL hanya memeriksa IP address sumber (Source IP) dari sebuah paket. Karena tidak dapat membedakan port maupun IP tujuan, aturan penempatan Standard ACL adalah sedekat mungkin dengan tujuan (closest to destination) agar tidak memblokir akses ke segmen jaringan lain secara tidak sengaja.
Range Angka: 1–99 & 1300–1999 | Filter: Hanya Source IP | Penempatan Ideal: Interface router terdekat dengan tujuan (Destination) | Kelemahan: Memblokir semua protokol tanpa seleksi port.
! Skenario: Blokir seluruh akses dari subnet HRD (192.168.10.0/24) ke Server Keuangan
R1> enable
R1# configure terminal
! Langkah 1: Buat aturan blokir subnet 192.168.10.0/24 (Wildcard 0.0.0.255)
R1(config)# access-list 10 deny 192.168.10.0 0.0.0.255
! Langkah 2: WAJIB tambahkan permit any agar trafik subnet lain tidak terkena implicit deny!
R1(config)# access-list 10 permit any
! Langkah 3: Terapkan ACL pada interface yang menghadap ke Server (Outbound)
R1(config)# interface fastethernet 0/1
R1(config-if)# ip access-group 10 out
R1(config-if)# exit
Di akhir setiap Access Control List di Cisco IOS, selalu terdapat aturan tak terlihat (Implicit Deny Any). Jika Anda membuat 1 baris access-list 10 deny ... tanpa menambahkan access-list 10 permit any, router akan memblokir 100% seluruh trafik yang melewati interface tersebut!
2. Konfigurasi Extended ACL Cisco (Numbered 100-199)
Extended ACL menyediakan kontrol granular karena dapat memfilter berdasarkan Source IP, Destination IP, Protokol (TCP/UDP/ICMP), dan Nomor Port (Port Number). Aturan penempatannya adalah sedekat mungkin dengan sumber (closest to source) untuk menghemat bandwidth jaringan sejak awal.
Range Angka: 100–199 & 2000–2699 | Filter: Source IP + Destination IP + Protokol (IP/TCP/UDP/ICMP) + Port Number | Penempatan Ideal: Interface router terdekat dengan sumber (Source) | Keunggulan: Kontrol keamanan presisi dan efisien bandwidth.
! Skenario: Izinkan hanya web traffic (HTTP 80 & HTTPS 443) dari VLAN IT (192.168.30.0/24)
! ke Web Server (192.168.100.50), dan blokir akses protokol lainnya.
R1(config)# access-list 110 permit tcp 192.168.30.0 0.0.0.255 host 192.168.100.50 eq 80
R1(config)# access-list 110 permit tcp 192.168.30.0 0.0.0.255 host 192.168.100.50 eq 443
R1(config)# access-list 110 deny ip 192.168.30.0 0.0.0.255 host 192.168.100.50
R1(config)# access-list 110 permit ip any any
! Terapkan sedekat mungkin dengan sumber (Inbound di subinterface VLAN 30)
R1(config)# interface fastethernet 0/0.30
R1(config-subif)# ip access-group 110 in
R1(config-subif)# exit
3. Konfigurasi Named ACL (Standar Modern Industri)
Numbered ACL (angka 1-199) memiliki kelemahan besar: sulit diingat fungsinya dan tidak fleksibel saat diedit. Standar industri modern merekomendasikan penggunaan Named ACL yang memungkinkan penamaan deskriptif:
Sintaks: ip access-list [standard|extended] [NAMA] | Keunggulan: Penamaan string mudah dipahami tim NOC/Security, mendukung penambahan & penghapusan baris statement spesifik via Sequence Number tanpa membongkar konfigurasi.
! Membuat Extended Named ACL bernama FILTER-AKSES-MANAGEMENT
R1(config)# ip access-list extended FILTER-AKSES-MANAGEMENT
! Blokir protokol Telnet (Port 23) dari divisi HRD
R1(config-ext-nacl)# deny tcp 192.168.10.0 0.0.0.255 any eq 23
! Izinkan SSH (Port 22) hanya dari IP administrator IT tertentu
R1(config-ext-nacl)# permit tcp host 192.168.30.50 host 192.168.100.1 eq 22
! Izinkan sisa lalu lintas lainnya
R1(config-ext-nacl)# permit ip any any
R1(config-ext-nacl)# exit
! Terapkan Named ACL pada interface
R1(config)# interface fastethernet 0/0.10
R1(config-subif)# ip access-group FILTER-AKSES-MANAGEMENT in
R1(config-subif)# exit
4. Konfigurasi Advanced ACL: Time-Based ACL & Dynamic (Lock-and-Key) ACL
Pada kurikulum lanjutan CCNA dan arsitektur keamanan korporat, kita sering kali perlu membatasi hak akses berdasarkan jadwal waktu operasional kantor atau memberikan akses sementara setelah pengguna terautentikasi.
Time-Based ACL: Mengaktifkan/menonaktifkan filter sesuai objek time-range (wajib NTP) | Dynamic (Lock-and-Key) ACL: Membuka akses jaringan sementara secara dinamis hanya setelah user login via Telnet | Reflexive ACL: Stateful filtering otomatis untuk paket balasan.
Implementasi Praktis Time-Based ACL (Jadwal Jam Kerja Kantor)
Skenario: Karyawan hanya diizinkan mengakses internet (HTTP/HTTPS) pada hari kerja (Senin–Jumat) pukul 08:00 hingga 17:00 WIB. Di luar jam kerja, akses internet diblokir.
! Langkah 1: Sinkronkan jam router dengan NTP Server & atur Timezone lokal
R1(config)# clock timezone WIB 7 0
R1(config)# ntp server 192.168.100.1
! Langkah 2: Buat objek rentang waktu (time-range)
R1(config)# time-range JAM-KANTOR
R1(config-time-range)# periodic weekdays 08:00 to 17:00
R1(config-time-range)# exit
! Langkah 3: Kaitkan time-range ke Extended Named ACL
R1(config)# ip access-list extended FILTER-INTERNET-KARYAWAN
R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 80 time-range JAM-KANTOR
R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 443 time-range JAM-KANTOR
R1(config-ext-nacl)# deny ip 192.168.10.0 0.0.0.255 any
R1(config-ext-nacl)# exit
! Langkah 4: Terapkan ke interface router
R1(config)# interface fastethernet 0/0.10
R1(config-subif)# ip access-group FILTER-INTERNET-KARYAWAN in
R1(config-subif)# exit
! Verifikasi status time-range aktif atau inaktif
R1# show time-range
time-range entry: JAM-KANTOR (active)
periodic weekdays 8:00 to 17:00
used in: IP ACL entry
5. Tabel Referensi Wildcard Mask dalam Cisco Networking
Wildcard mask dihitung dengan rumus inversi: 255.255.255.255 - Subnet Mask. Tabel semantik di bawah merinci konversi matematis wildcard mask dari setiap prefix subnet CIDR:
Bit 0: Nilai bit pada IP harus cocok persis (Match) | Bit 1 (255): Nilai bit pada IP diabaikan (Don't Care/Wildcard) | Aturan Cepat: host = 0.0.0.0, /24 = 0.0.0.255, /16 = 0.0.255.255, any = 255.255.255.255.
| Wildcard Mask | Prefix Subnet | Subnet Mask Asli | Formula Kalkulasi Inversi | Arti / Cakupan Host |
|---|---|---|---|---|
| 0.0.0.0 | /32 (host) | 255.255.255.255 | 255.255.255.255 - 255.255.255.255 | Tepat 1 host spesifik (misal: host 192.168.1.5) |
| 0.0.0.15 | /28 | 255.255.255.240 | 255.255.255.255 - 255.255.255.240 | Blok 16 alamat IP (14 usable host) |
| 0.0.0.255 | /24 | 255.255.255.0 | 255.255.255.255 - 255.255.255.0 | Seluruh host dalam satu subnet kelas C (/24) |
| 0.0.255.255 | /16 | 255.255.0.0 | 255.255.255.255 - 255.255.0.0 | Seluruh host dalam subnet kelas B (/16) |
| 255.255.255.255 | /0 (any) | 0.0.0.0 | 255.255.255.255 - 0.0.0.0 | Seluruh alamat IP apapun di dunia (any) |
6. Skenario Troubleshooting Umum: Urutan Sequence Number & Edit ACL
Salah satu kesalahan paling sering yang ditemui pada ujian CCNA dan jaringan produksi adalah kesalahan urutan statement (*Shadowing Rule*). Karena router mengevaluasi ACL dari atas ke bawah (*Top-Down*), aturan yang berada di bawah statement yang cocok (*Match*) tidak akan pernah dieksekusi.
Top-Down First-Match: Tempatkan aturan spesifik (host/port khusus) di baris atas dan aturan umum (subnet/any) di baris bawah | Resequence: Gunakan ip access-list resequence [NAMA] 10 10 untuk merapikan urutan | Diagnostik: Pantau hit matches dengan show access-lists.
A. Analisis Kasus 'Shadowed Rule' (Aturan Tertutup)
! CONTOH KESALAHAN FATAL:
R1(config)# access-list 100 permit ip any any
R1(config)# access-list 100 deny tcp host 192.168.1.100 any eq 80
! PENJELASAN ERROR:
! Baris 'permit ip any any' di atas akan mencocokkan SEMUA paket.
! Akibatnya, baris kedua 'deny tcp ...' TIDAK AKAN PERNAH DIJALANKAN! Paket tetap lolos.
B. Cara Menyisipkan Baris di Antara Statement Tanpa Menghapus ACL (Sequence Numbering)
Pada Cisco IOS, setiap baris statement Named ACL memiliki nomor urut (*Sequence Number*) dengan kelipatan 10 (10, 20, 30...). Anda dapat menyisipkan baris di tengah-tengah:
! 1. Periksa nomor urut ACL yang aktif saat ini
R1# show access-lists FILTER-SERVER
Extended IP access list FILTER-SERVER
10 permit tcp 192.168.10.0 0.0.0.255 host 192.168.100.10 eq 80
20 deny ip any any
! 2. Ingin mengizinkan HTTPS (port 443) SEBELUM baris deny any (nomor 20):
R1(config)# ip access-list extended FILTER-SERVER
R1(config-ext-nacl)# 15 permit tcp 192.168.10.0 0.0.0.255 host 192.168.100.10 eq 443
R1(config-ext-nacl)# exit
! 3. Hapus baris spesifik tanpa menghapus seluruh ACL:
R1(config)# ip access-list extended FILTER-SERVER
R1(config-ext-nacl)# no 10
R1(config-ext-nacl)# exit
! 4. Rapikan kembali penomoran sequence number (Resequencing)
! Mengatur ulang nomor mulai dari 10 dengan jarak interval 10:
R1(config)# ip access-list resequence FILTER-SERVER 10 10
C. Perintah Verifikasi & Monitoring ACL
! Melihat hit count (jumlah paket yang cocok pada setiap baris)
R1# show access-lists
Extended IP access list FILTER-SERVER
10 permit tcp 192.168.10.0 0.0.0.255 host 192.168.100.10 eq 80 (45 matches)
20 permit tcp 192.168.10.0 0.0.0.255 host 192.168.100.10 eq 443 (120 matches)
30 deny ip any any (12 matches)
! Memeriksa interface mana yang mengikat ACL dan arah filternya
R1# show ip interface fastethernet 0/1
Inbound access list is not set
Outgoing access list is FILTER-SERVER
! Mereset counter statistik matches ACL
R1# clear access-list counters
FAQ: Pertanyaan Umum Seputar Access Control List (ACL) Cisco
1. Apa perbedaan mendasar antara Inbound ACL ('in') dan Outbound ACL ('out') pada interface router?
Inbound ACL ('in'): Paket diperiksa begitu tiba di interface router SEBELUM router memproses routing table. Sangat hemat CPU jika paket dibuang sejak awal.
Outbound ACL ('out'): Paket telah diproses routing table terlebih dahulu, lalu diperiksa sesaat SEBELUM paket dikirim keluar dari interface fisik router.
2. Apa perbedaan utama Standard ACL dan Extended ACL di Cisco?
Standard ACL (range 1–99) hanya dapat memfilter berdasarkan IP sumber (Source IP) dan harus diletakkan sedekat mungkin dengan tujuan. Extended ACL (range 100–199) dapat memfilter Source IP, Destination IP, Protokol (TCP/UDP/ICMP), dan Nomor Port, serta diletakkan sedekat mungkin dengan sumber.
3. Bagaimana cara kerja Time-Based ACL dan apa syarat mutlak implementasinya?
Time-Based ACL bekerja dengan menerapkan batasan waktu (parameter time-range) pada statement Extended ACL, misalnya hanya mengizinkan browsing web selama jam kantor (Senin–Jumat 08:00–17:00). Syarat mutlaknya adalah jam sistem router harus selalu akurat dan tersinkronisasi via NTP (Network Time Protocol).
4. Apa yang dimaksud dengan Implicit Deny pada Cisco ACL dan bagaimana cara mengatasinya?
Setiap ACL pada Cisco IOS secara otomatis memiliki aturan tak terlihat deny ip any any di baris paling akhir. Jika tidak ada aturan yang cocok di atasnya, paket akan otomatis dibuang. Cara mengatasinya adalah selalu menambahkan permit ip any any (atau permit any pada Standard ACL) di baris terakhir jika Anda hanya ingin memblokir sebagian trafik tertentu.
5. Bagaimana cara menyisipkan aturan baru di tengah-tengah Named ACL?
Masuk ke sub-mode named ACL (ip access-list extended [NAMA]), kemudian ketik nomor urut di antara dua baris yang ada (contoh: ketik 15 permit tcp ... untuk menyisipkan di antara baris 10 dan 20), lalu jalankan ip access-list resequence [NAMA] 10 10 untuk merapikan kembali penomorannya.
Rusmawan Abdullah Sani
CCNA Certified Enterprise Engineer
Memiliki pengalaman praktis di bidang jaringan komputer dan konfigurasi perangkat Cisco. Jangan ragu untuk terhubung dengan saya di LinkedIn.
Dengan memahami struktur penempatan Standard vs Extended ACL, perhitungan Wildcard Mask, implementasi Time-Based ACL, serta manajemen Sequence Number, Anda kini dapat mengontrol keamanan lalu lintas jaringan enterprise secara presisi. Pada bab berikutnya, kita akan mempelajari mekanisme penerjemahan alamat jaringan menggunakan Network Address Translation (NAT) Cisco Router!