IntermediatePublished 2026-06-30
Extended ACL: Application Filtering at a Hardened Edge
Bundle lab
Build a 5-node edge/DMZ topology. Implement a named extended ACL on the EDGE router to allow only TCP/80, TCP/443, and ICMP echo from the Inside LAN to a DMZ web server, deny all other traffic to that server with logging, and still permit general traffic elsewhere. Apply the ACL inbound on the EDGE inside LAN interface. Harden router SSH management with a standard ACL. Verify with wget, ping, and an intentionally denied SSH attempt that increments the deny log counter.
Learning objectives
- Design and place an extended ACL near the traffic source; match exact subnets and specific L4 ports.
- Apply an extended ACL inbound on the correct interface and verify ordering, direction, and default deny behavior.
- Harden router VTY access with a standard ACL and SSH-only remote access.
- Use Linux tools (ping, wget, ssh) to validate allowed and denied flows and interpret ACL hit counters.
- Troubleshoot reachability, ACL placement, and static routing on an edge/DMZ topology.
Troubleshooting focus
- CLIENT01 cannot ping 10.10.10.1, or RTR-EDGE1 cannot ping 10.20.20.10: sweep interface status for down/down links and wrong addresses or masks. Fix the plumbing before blaming the ACL.
- The deny entry in
show access-lists EDGE-IN-LAN-FILTERstill reads zero hits after the failed SSH: the ACL is on the wrong interface or the wrong direction. It belongs inbound on RTR-EDGE1 Ethernet0/0. - Check the masks —
host 10.20.20.10and10.10.10.0 0.0.0.255. A255.255.255.0mask inverts the logic and blocks valid traffic. ping 10.0.0.2from CLIENT01 fails: this is routing, not filtering. RTR-EDGE1 needs its default route to 10.0.0.2, and RTR-ISP1 needs routes back to the Inside and DMZ subnets via 10.0.0.1.
Topology
Subscribe to preview this lab's topology.
See plansGrade your work
How this lab is graded
- Build it your way. Where a lab lets you choose a value — a VLAN name, an interface description — grading checks that you configured it, not which name you picked. Names that another line has to reference, like an ACL applied with
access-class, are stated in the guide and do have to match. - Addresses, modes and protocol keywords are exact. An IP address, a subnet mask,
switchport mode trunk, an encapsulation — these carry the meaning of the lab, so they are graded as written in the guide. - Grading reads your saved configuration. Export the lab from CML after you have configured it, and make sure anything you set is in the running-config — a change that only exists in a terminal session never reaches the grader.
- You can submit as many times as you like. Your best score stands, and each attempt tells you which checks passed so you can work the gaps.
- Scored something you believe is correct? Use Report an issue on this page — that is exactly how the grading fixes in the changelog got found.
Create a free account to submit your lab for grading.
Create a free accountFound a problem with this lab?
Please sign in to report a problem — tying it to your attempts lets us reproduce and fix it faster.