Halo teman-teman pada article kali ini saya akan membahas tentang Access Control List pada Cisco, sedikit mengulas Access Control List atau bisa kita singkat dengan ACL pada dasarnya ACL ini berfungsi untuk Filtering nah Jika teman-teman ingat di Mikrotik juga sama ada fitur seperti ini yang bernama Firewall untuk filtering, dan setiap list akan dibaca oleh router dari urutan yang paling atas lalu sampai ke bawah. Beberapa parameter yang harus didefinisikan pada access list adalah protokol (tcp, udp, ip address, icmp), source traffic, destination traffic dan serta port. Terdapat dua jenis access list pada Cisco yang dapat kita gunakan yaitu:
- Standard Access-List
- Extended Access-List
Standard Access-List
Mengulas sedikit tentang Standard Access List dia ini akan memfilter semua jenis trafik dari suatu IP ataupun suatu network, Pada ACL ini kita tidak dapat menentukan protokol mana yang akan di ijinkan (permit) ataupun ditolak (deny). ACL standard menggunakan penomoran mulai dari 1-99. jika saya simpulkan point-point pentingnya seperti ini teman-teman.
- Standard ACL Fitur untuk Packet Filtering
- Standard ACL hanya bisa filter berdasarkan Source IP/Network
- Standard ACL menggunakan penomoran 1-99
- Implementasi/Diterapkan sedekat mungkin dengan Destination
- Menggunakan konsep IF – THEN
- Hanya ada 2 Action “Permit” & “Deny”
- Penerapan Direction IN & OUT ditentukan berdasarkan arah paket dari Source menuju Destinasi
Jadi seperti itu teman-teman Point yang pentingnya, sekarang dalam Standard ACL sendiri ada yang namanya “Legacy Syntax” dan “Modern Syntax” keduanya merupakan jenis penulisan saja seperti penamaan agar teman-teman lebih paham saya berikan contoh dibawah ini.
=============================Standard ACL "Legacy Syntax"=============================
Router-1(config)#access-list 1 deny host 192.168.10.2
Router-1(config)#access-list 1 permit any
Router-1(config)#interface fastEthernet 0/0
Router-1(config-if)#ip access-group 1 out
Router-1(config-if)#exit
=============================Standard ACL "Modern Syntax"=============================
R1-NSACL(config)#ip access-list standard BLOCK_PC2
R1-NSACL(config-std-nacl)#deny host 192.168.211.3
R1-NSACL(config-std-nacl)#permit any
R1-NSACL(config-std-nacl)#exit
R1-NSACL(config)#interface fastEthernet 0/1
R1-NSACL(config-if)#ip access-group BLOCK_PC2 out
R1-NSACL(config-if)#exit
Bisa teman-teman lihat script diatas itu sudah saya berikan contohnya jadi jika diambil kesimpulannya seperti penamaan aja sekarang lanjut untuk bahas Extended-ACL.
Extended Access-List
Sebelumnya saya sudah sempat membahas Standard Access-List sekarang kita lanjut bahas Extended Access-List, Extended Access-List sendiri ini lebih istimewa karena kita dapat menentukan trafik untuk protocol yang dijinkan atau ditolak berdasarkan source address, destination address, protocol, port number dan juga kita dapat menetukan tujuan traffic nya. ACL extended menggunakan penomoran mulai dari 100-199. seperti biasa saya akan berikan point-point yang pentingnya.
- Extended Access-List dapat melakukan Filtering berdasarkan source address, destination address, protocol, & port number
- Extended Access-List menggunakan number 100-199
- Extended Access-List digunakan untuk keperluan yang lebih spesifik kedalam aplikasi misalnya seperti memblokir service telnet
- Implementasi/Diterapkan sedekat mungkin dengan Source
- Penerapan Direction IN & OUT ditentukan berdasarkan arah paket dari Source menuju Destinasi
Sama halnya dengan Standard ACL yang mana dalam penulisannya dia terdapat 2 Syntax yaitu “legacy Sysntax” & “Modern Syntax” untuk contohnya akan saya berikan dibawah ini.
============================Extended ACL "Legacy Syntax"==============================
Router-1(config)#access-list 100 deny host 192.168.10.2
Router-1(config)#access-list 100 permit any
Router-1(config)#interface fastEthernet 0/0
Router-1(config-if)#ip access-group 1 out
Router-1(config-if)#exit
=============================Extended ACL "Modern Syntax"=============================
R-EACL(config)#ip access-list extended ACL1
R-EACL(config-ext-nacl)#deny tcp host 192.168.111.2 host 10.10.11.2 eq www
R-EACL(config-ext-nacl)#deny tcp host 192.168.111.3 host 10.10.11.2 eq 443
R-EACL(config-ext-nacl)#permit ip any any
R-EACL(config-ext-nacl)#exit
R-EACL(config)#interface fastEthernet 0/1
R-EACL(config-if)#ip access-group ACL1 out
R-EACL(config-if)#exit
Jadi untuk overview seperti itu teman-teman oiya dalam metode Modern Sysntax biasanya lebih populer dengan sebutan Named Access-List, teman-teman pembahasan kali ini sudah selesai selanjutnya kita akan melakukan konfigurasi/implementasi dari kedua jenis Access-List ini yaitu
- Standard Access-List
- Extended Access-List
Configure Standard Access-List
Bisa diperhatikan gambar topologi diatas kita akan menerapkan konfigurasi Standard ACL tapi tidak hanya Standard ACL saja yang kita terapkan karena kita menggunakan 2 Router sudah pasti menerapkan juga routing jenis static sedikit agak rumit tetapi teman-teman biasa perhatikan setiap konfigurasinya, Lanjut pembahasannya. Pertama kita Basic Configuration seputar ip address pada router, pc dan server ip gateway nya mengarah ke router untuk networknya bebas namun saya menggunakan network yang ada di dalam topologinya.
Router-1
Router(config)#hostname Router-1
Router-1(config)#interface fastEthernet 0/0
Router-1(config-if)#no shutdown
Router-1(config-if)#ip address 12.12.12.1 255.255.255.252
Router-1(config-if)#exit
Router-1(config)#interface fastEthernet 0/1
Router-1(config-if)#no shutdown
Router-1(config-if)#ip address 192.168.10.1 255.255.255.0
Router-1(config-if)#exit
Router-2
Router(config)#hostname Router-2
Router-2(config)#interface fastEthernet 0/0
Router-2(config-if)#no shutdown
Router-2(config-if)#ip address 12.12.12.2 255.255.255.252
Router-2(config-if)#exit
Router-2(config)#interface fastEthernet 0/1
Router-2(config-if)#no shutdown
Router-2(config-if)#ip address 192.168.21.1 255.255.255.0
Router-2(config-if)#exit
Selanjutnya setelah semua devices sudah di konfigurasikan IP Address sebelum konfigurasi ACL nya karena pc dan server belum saling terhubung kita mesti routing terlebih dahulu di masing-masing routernya karena pc dan server ini berbeda router mau ngga mau kita routing.
Router-1
Router-1(config)#ip route 192.168.21.0 255.255.255.0 12.12.12.2
Router-2
Router-2(config)#ip route 192.168.10.0 255.255.255.0 12.12.12.1
Lakukan verifikasi routingnya dengan cara melihat table routingnya apakah sudah lengkap atau belum.
Router-1
Router-1#show ip route
Gateway of last resort is not set
12.0.0.0/30 is subnetted, 1 subnets
C 12.12.12.0 is directly connected, FastEthernet0/0
C 192.168.10.0/24 is directly connected, FastEthernet0/1
S 192.168.21.0/24 [1/0] via 12.12.12.2
Router-2
Router-2#show ip route
Gateway of last resort is not set
12.0.0.0/30 is subnetted, 1 subnets
C 12.12.12.0 is directly connected, FastEthernet0/0
S 192.168.10.0/24 [1/0] via 12.12.12.1
C 192.168.21.0/24 is directly connected, FastEthernet0/1
Setelah Routingnya aman dan pc dengan server sudah bisa saling komunikasi atau saling ping selanjutnya kita konfigurasikan ACL, untuk goal/targetnya PC2 tidak bisa komunikasi dengan server tetapi untuk PC1 bisa komunikasi dengan server, untuk menerapkan access list diterapkan pada router dan interface yang paling dekat dengan destination (server), karena kita memiliki 2 router sudah jelas kita akan meletakkan ACL nya pada router 2 karena dia yang paling dekat dengan server, lanjut konfigurasinya.
Router-2
Router-2(config)#access-list 5 deny 192.168.10.3
Router-2(config)#access-list 5 permit any
Router-2(config)#interface fastEthernet 0/1
Router-2(config-if)#ip access-group 5 out
Router-2(config-if)#exit
Sekarang kita bisa verifikasi apakah ACL nya sudah terbuat atau belum untuk verifikasinya bisa menggunakan perintah #show access-lists.
Router-2
Router-2#show access-lists
Standard IP access list 5
deny host 192.168.10.3
permit any
Teman-teman bisa kita lihat dari hasi verifikasi ACL yang mana jika di baca syntax-nya jadi kita memblokir host dengan IP 192.168.10.3 kemudian memberikan izin ke semua host, Selanjutnya kita check dengan cara ping dari masing-masing pc apakah berjalan sesuai goal/target atau tidak.
PC-192.168.10.2
Cisco Packet Tracer PC Command Line 1.0/PC1
C:\\>ping 192.168.21.2
Pinging 192.168.21.2 with 32 bytes of data:
Reply from 192.168.21.2: bytes=32 time<1ms TTL=126
Reply from 192.168.21.2: bytes=32 time<1ms TTL=126
Reply from 192.168.21.2: bytes=32 time<1ms TTL=126
Reply from 192.168.21.2: bytes=32 time<1ms TTL=126
C:\\>
PC-192.168.10.3
Cisco Packet Tracer PC Command Line 1.0
C:\\>ping 192.168.21.2
Pinging 192.168.21.2 with 32 bytes of data:
Reply from 12.12.12.2: Destination host unreachable.
Reply from 12.12.12.2: Destination host unreachable.
Reply from 12.12.12.2: Destination host unreachable.
Reply from 12.12.12.2: Destination host unreachable.
C:\\>
Pada pembahasan konfigurasi Standard ACL kali ini sudah selesai dan semua fungsi sudah berjalan dan goal/targetnya sudah terpenuhi.
Configure Named Access-List (Standard Access-List Modern Sysntax)
Pada topologi diatas kita akan menerapkan konfigurasi Named Standard ACL konfigurasinya hampir sama seperti Standard ACL namun konfigurasi ini saya bahas karena lebih enak dilihat ketika kita lihat list-access list pada router. Scenario: “ PC2 tidak bisa berkomunikasi dengan server tetapi PC1 tetap bisa berkomunikasi dengan server.” Lanjut pembahasannya. seperti biasa langsung basic configuration dan menambahkan ip address pada router, pc dan server ip gateway nya mengarah ke router untuk networknya bebas namun saya menggunakan network yang ada di dalam topologinya.
R1-NSACL
Router(config)#hostname R1-NSACL
R1-NSACL(config)#interface fastEthernet 0/0
R1-NSACL(config-if)#no shutdown
R1-NSACL(config-if)#ip address 192.168.211.1 255.255.255.0
R1-NSACL(config-if)#exit
R1-NSACL(config)#interface fastEthernet 0/1
R1-NSACL(config-if)#no shutdown
R1-NSACL(config-if)#ip address 192.168.11.1 255.255.255.252
R1-NSACL(config-if)#exit
Lanjut kedua kita akan langsung konfigurasi ACL nya, sama seperti ACL step by step nya dan jangan lupa diakhir konfigurasinya kita masukkan ACL nya kedalam interface yang mendekati server.
R1-NSACL(config)#ip access-list standard BLOCK_PC2
R1-NSACL(config-std-nacl)#deny host 192.168.211.3
R1-NSACL(config-std-nacl)#permit any
R1-NSACL(config-std-nacl)#exit
R1-NSACL(config)#interface fastEthernet 0/1
R1-NSACL(config-if)#ip access-group BLOCK_PC2 out
R1-NSACL(config-if)#exit
Selanjutnya kita verifikasi apakah di router sudah ada daftar ACL yang kita buat tadi atau belum dengan perintah.
R1-NSACL#show access-lists
Standard IP access list BLOCK_PC2
10 deny host 192.168.211.3
20 permit any
ACL yang kita buat tadi sudah terdaftar selnjutnya kita lakukan tes ping dari masing-masig pc ke server dan hasil ping tersebut harusnya sesuai dengan scenario diatas tadi.
PC-192.168.211.2
Cisco Packet Tracer PC Command Line 1.0/PC1
C:\\>ping 192.168.11.2
Pinging 192.168.11.2 with 32 bytes of data:
Reply from 192.168.11.2: bytes=32 time<1ms TTL=127
Reply from 192.168.11.2: bytes=32 time<1ms TTL=127
Reply from 192.168.11.2: bytes=32 time<1ms TTL=127
Reply from 192.168.11.2: bytes=32 time<1ms TTL=127
C:\\>
PC-192.168.211.3
C:\\>ping 192.168.11.2/PC2
Pinging 192.168.11.2 with 32 bytes of data:
Reply from 192.168.211.1: Destination host unreachable.
Reply from 192.168.211.1: Destination host unreachable.
Reply from 192.168.211.1: Destination host unreachable.
Reply from 192.168.211.1: Destination host unreachable.
C:\\>
pada pembahasan konfigurasi Named Standard ACL kali ini sudah selesai dan semua fungsi sudah berjalan dan goal/targetnya sudah terpenuhi next kita bahas Extended Access-List.
Configure Extended Access-List
Pada topologi di atas untuk konfigurasi extended access list menggunakan 2 router, 1 server dan 2 pc sebagai clientnya, membuat extended access list pada router 1 karena dia paling dekat dengan penyedia servicenya yaitu server dan di server mengaktifkan dan sedikit modifikasi service HTTP, HTTPS dan FTP. Lanjut konfigurasi. basic configuration dan IP Address pada router, pc dan server IP Gateway nya mengarah ke router, networknya bebas namun saya menggunakan network yang ada di dalam topologinya.
R1
Router(config)#hostname R1
R1(config)#interface fastEthernet 0/1
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.10.1 255.255.255.248
R1(config-if)#exit
R1(config)#iinterface fastEthernet 0/0
R1(config-if)#no shutdown
R1(config-if)#ip address 12.12.12.1 255.255.255.252
R1(config-if)#exit
R2
Router(config)#hostname R2
R2(config)#interface fastEthernet 0/0
R2(config-if)#no shutdown
R2(config-if)#ip address 12.12.12.2 255.255.255.252
R2(config-if)#exit
R2(config)#interface fastEthernet 0/1
R2(config-if)#no shutdown
R2(config-if)#ip address 10.10.10.1 255.255.255.252
R2(config-if)#exit
Selanjutnya karena semua nya belum bisa saling berkomunikasi atau saling terhubung selanjutnya kita akan lakukan konfigurasi routing static.
R1
R1(config)#ip route 10.10.10.0 255.255.255.252 12.12.12.2
R2
R2(config)#ip route 192.168.10.0 255.255.255.248 12.12.12.1
Setelah itu mengaktifkan dan sedikit memodifikasi untuk service HTTP dan HTTPS di server1, pertama mengaktifkan service HTTP dan HTTPS terlebih dahulu dan mengedit file index.html, untuk tampilan web servernya “Welcome to Web Server From Server 1”.
Setelah mengaktifkan service HTTP dan HTTPS lalu mengedit tampilan web servernya, selanjutnya mengaktifkan service FTP nya untuk langkah-langkahnya bisa mengikuti dibawah ini.
Kemudian setelah semua Servicenya jalan dan pc bisa komunikasi dengan server selanjutnya konfigurasi extended access list kali ini menggunakan extended access list yang named atau Modern Syntax bukan yang number lalu ada 3 rule yaitu:
- PC1 tidak boleh akses web di server 1 menggunakan HTTP
- PC2 tidak boleh akses web di server 1 menggunakan HTTPS
- PC2 tidak boleh akses FTP di server 1
R2
R2(config)#ip access-list extended ACCESS-LIST
R2(config-ext-nacl)#deny tcp host 192.168.10.2 host 10.10.10.2 eq 80
R2(config-ext-nacl)#deny tcp host 192.168.10.3 host 10.10.10.2 eq 443
R2(config-ext-nacl)#deny tcp host 192.168.10.3 host 10.10.10.2 eq 21
R2(config-ext-nacl)#permit ip any any
R2(config-ext-nacl)#exit
R2(config)#int fa0/1
R2(config-if)#ip access-group ACCESS-LIST out
R2(config-if)#exit
R2(config)#int fa0/0
R2(config-if)#ip access-group ACCESS-LIST in
R2(config-if)#exit
Selanjutnya melakukan pengetesan/pengujian hasil dari pengujian harus sesuai dengan skenario.
- PC1 tidak bisa mengakses web server menggunakan HTTP namun masih bisa mengakses menggunakan HTTPS.
- PC2 tidak bisa mengakses web server menggunakan HTTPS namun masih bisa mengakses menggunakan HTTP dan PC2 tidak boleh akses FTP di server 1.
Pada Extended ACL kali ini sudah selesai dan semua fungsi sudah berjalan dan goal/targetnya sudah terpenuhi, semoga pembahasan kali teman-teman dapat dipahami, jika ada yang ingin ditanyakan atau kurang paham silahkam bertanya dikolom komentar kurang lebihnya mohon maaf dan terimakasih.
Tertarik mengikuti training di ID-Networkers? Kami menyediakan berbagai pilihan training yang bisa kamu ikuti, klik disini untuk info lengkapnya.
Penulis : Muhammad Sabiq Al Hadi