external/anthropic-cybersecurity-skills/skills/implementing-network-access-control-with-cisco-ise/SKILL.md
Deploys Cisco Identity Services Engine (ISE) as a RADIUS policy server for 802.1X wired and wireless authentication, MAC Authentication Bypass, posture assessment, dynamic VLAN assignment, downloadable ACLs, and TrustSec Security Group Tags. Use when deploying enterprise NAC with ISE and Active Directory integration, enforcing endpoint posture compliance, or segmenting access with TrustSec instead of a generic 802.1X/PacketFence setup.
npx skillsauth add seikaikyo/dash-skills implementing-network-access-control-with-cisco-iseInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Cisco Identity Services Engine (ISE) provides centralized network access control through 802.1X authentication, MAC Authentication Bypass (MAB), posture assessment, and guest access management. ISE acts as a RADIUS policy server that evaluates authentication requests from network devices (switches, wireless controllers) and returns authorization policies including VLAN assignments, downloadable ACLs (dACLs), and Security Group Tags (SGTs). This skill covers deploying ISE for enterprise wired 802.1X authentication with Active Directory integration, MAB fallback, posture compliance enforcement, and TrustSec segmentation.
The 802.1X framework involves three components:
| Component | Role | Example | |-----------|------|---------| | Supplicant | Client requesting network access | Windows 802.1X client, AnyConnect NAM | | Authenticator | Network device controlling port access | Cisco Catalyst switch | | Authentication Server | Policy decision engine | Cisco ISE (RADIUS) |
1. Endpoint connects to switch port
2. Switch sends EAP-Request/Identity to endpoint
3. Endpoint responds with EAP-Response/Identity
4. Switch forwards credentials to ISE via RADIUS Access-Request
5. ISE authenticates against AD/LDAP/internal store
6. ISE evaluates authorization policy
7. ISE returns RADIUS Access-Accept with attributes (VLAN, dACL, SGT)
8. Switch enforces authorization on the port
| Method | Use Case | Security Level | |--------|----------|---------------| | EAP-TLS | Certificate-based, highest security | High | | PEAP-MSCHAPv2 | Username/password via AD | Medium | | EAP-FAST | Cisco proprietary, fast reauthentication | Medium | | MAB | Non-802.1X devices (printers, IP phones) | Low |
Navigate to Administration > Identity Management > External Identity Sources > Active Directory:
corp.example.com)Domain Users - Standard employee accessDomain Computers - Machine authenticationIT-Admins - Privileged accessBYOD-Users - Personal device accessNavigate to Administration > Network Resources > Network Devices:
Name: SW-ACCESS-01
IP Address: 10.0.1.1/32
RADIUS Shared Secret: C0mpl3x$3cretKey!
SNMP Settings: v2c, community string
Device Type: Cisco Switches
Location: Building-A-Floor-1
Create a Network Device Group hierarchy:
Device Type:
├── Cisco Switches
│ ├── Access Layer
│ └── Distribution Layer
└── Wireless Controllers
Location:
├── Building-A
└── Building-B
Apply this configuration to the access switch:
! Enable AAA
aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius
aaa accounting dot1x default start-stop group radius
aaa accounting update newinfo periodic 2880
! Configure RADIUS server
radius server ISE-PRIMARY
address ipv4 10.0.5.10 auth-port 1812 acct-port 1813
key 0 C0mpl3x$3cretKey!
automate-tester username radius-test probe-on
radius server ISE-SECONDARY
address ipv4 10.0.5.11 auth-port 1812 acct-port 1813
key 0 C0mpl3x$3cretKey!
automate-tester username radius-test probe-on
aaa group server radius ISE-GROUP
server name ISE-PRIMARY
server name ISE-SECONDARY
deadtime 15
ip radius source-interface Loopback0
! Enable 802.1X globally
dot1x system-auth-control
! Enable RADIUS CoA (Change of Authorization)
aaa server radius dynamic-author
client 10.0.5.10 server-key C0mpl3x$3cretKey!
client 10.0.5.11 server-key C0mpl3x$3cretKey!
! Enable device tracking for IP-to-MAC mapping
device-tracking tracking auto-source
! Configure access port template
interface range GigabitEthernet1/0/1-48
description 802.1X Access Port
switchport mode access
switchport access vlan 100
! Authentication settings
authentication host-mode multi-auth
authentication order dot1x mab
authentication priority dot1x mab
authentication port-control auto
authentication periodic
authentication timer reauthenticate server
authentication timer inactivity server dynamic
authentication violation restrict
! 802.1X settings
dot1x pae authenticator
dot1x timeout tx-period 10
dot1x max-reauth-req 2
! MAB fallback
mab
! Enable spanning-tree portfast (required for timely auth)
spanning-tree portfast
! Apply pre-auth ACL
ip access-group PRE-AUTH-ACL in
! Pre-authentication ACL (allow DHCP, DNS, ISE portal)
ip access-list extended PRE-AUTH-ACL
permit udp any any eq 67
permit udp any any eq 68
permit udp any any eq 53
permit tcp any host 10.0.5.10 eq 8443
permit tcp any host 10.0.5.11 eq 8443
deny ip any any
Navigate to Policy > Policy Sets:
Authentication Policy:
| Rule Name | Condition | Allowed Protocols | Identity Source | |-----------|-----------|-------------------|-----------------| | Dot1X-EAP-TLS | Radius:EAP-Type EQUALS EAP-TLS | EAP-TLS | AD with Certificate | | Dot1X-PEAP | Radius:EAP-Type EQUALS PEAP | PEAP-MSCHAPv2 | Active Directory | | MAB | Radius:Service-Type EQUALS Call-Check | MAB Lookup | Internal Endpoints | | Default | Default | Default | Deny Access |
Authorization Policy:
| Rule Name | Condition | Authorization Profile | |-----------|-----------|----------------------| | IT-Admin-Wired | AD:Group EQUALS IT-Admins AND Dot1X | VLAN10-FullAccess | | Employee-Compliant | AD:Group EQUALS Domain Users AND Posture:Compliant | VLAN100-Corporate | | Employee-NonCompliant | AD:Group EQUALS Domain Users AND Posture:NonCompliant | VLAN200-Remediation | | Printer-MAB | EndpointIdentityGroup EQUALS Printers | VLAN150-Printers | | IP-Phone-MAB | EndpointIdentityGroup EQUALS IP-Phones | VLAN50-Voice | | BYOD-Onboarding | AD:Group EQUALS BYOD-Users AND !Registered | BYOD-Portal-Redirect | | Guest-Access | GuestEndpointGroup EQUALS GuestEndpoints | VLAN300-Guest | | Default | Default | DenyAccess |
Authorization Profiles:
Profile: VLAN100-Corporate
VLAN: 100
dACL: PERMIT_ALL
SGT: Employees (0x0005)
Reauthentication Timer: 28800
Profile: VLAN200-Remediation
VLAN: 200
dACL: REMEDIATION-ACL (allow only remediation server access)
Web Redirection: Posture Discovery
Reauthentication Timer: 300
Profile: DenyAccess
Access Type: ACCESS_REJECT
Navigate to Work Centers > Posture:
Posture Conditions:
- Windows Firewall Enabled (Registry check)
- Antivirus Running and Updated (AV compound condition)
- OS Patch Level Current (Windows Update check)
- Disk Encryption Enabled (BitLocker check)
Posture Requirements:
Requirement: Corporate-Windows-Compliance
OS: Windows All
Conditions: Windows Firewall AND Antivirus AND OS Patches
Remediation: Auto-remediate with AnyConnect ISE Posture Module
Posture Policy:
Rule: Windows-Endpoints
Identity Group: Any
OS: Windows All
Requirement: Corporate-Windows-Compliance
Enable SGT-based segmentation:
! On switch - enable CTS
cts credentials id SW-ACCESS-01 password CtsP@ss
cts role-based enforcement
cts role-based sgt-map 10.0.100.0/24 sgt 5
! Download SGT policy from ISE
cts role-based permissions
ISE TrustSec Matrix (SGACL):
| Source SGT | Destination SGT | Policy | |------------|----------------|--------| | Employees (5) | Servers (10) | Permit_HTTP_HTTPS | | Employees (5) | PCI_Zone (15) | Deny_All | | IT-Admins (3) | Servers (10) | Permit_All | | Guest (7) | Internet (99) | Permit_HTTP_HTTPS | | Guest (7) | Servers (10) | Deny_All |
# On switch - verify authentication status
show authentication sessions
show authentication sessions interface Gi1/0/1 details
show dot1x all
# Check RADIUS connectivity
test aaa server radius ISE-PRIMARY username testuser password testpass
# On ISE - check live logs
# Navigate to Operations > RADIUS > Live Logs
# Filter by MAC address or username
# Review Authentication Details for failure reason
# Common failure reasons:
# 12514 - EAP-TLS handshake failed (certificate issue)
# 22056 - Subject not found in identity store
# 24408 - User not found in Active Directory
# 24454 - User password expired
authentication open with pre-auth dACLs for gradual rollouttools
Conduct comprehensive GDPR compliance assessments by evaluating data processing activities against EU Regulation 2016/679, including Article 30 records of processing, lawful basis validation, data subject rights implementation, Data Protection Impact Assessments (DPIAs) under Article 35, breach notification procedures, international transfer safeguards (SCCs, adequacy decisions), and technical/organizational measures under Article 32. Use when processing personal data of EU residents, preparing for supervisory authority audits, implementing privacy-by-design for new systems, scoping compliance gaps for M&A due diligence, assessing third-party processors, or responding to data subject access requests at scale. Incorporates 2026 guidance from ICO, EDPB, and post-Data (Use and Access) Act 2025 UK-GDPR considerations. Do not use for implementing specific Article 32 controls — use implementing-gdpr-data-protection-controls; or for DSAR automation — use implementing-gdpr-data-subject-access-request.
tools
Parse Windows forensic artifacts—$MFT/$J (MFTECmd), Prefetch (PECmd), registry hives (RECmd), shellbags, and Amcache—into normalized CSV/JSON with Eric Zimmerman's EZ Tools, then load results into Timeline Explorer for analysis. Use during DFIR/incident-response investigations, after triage collection (e.g. with KAPE), to establish program execution, file/folder access, and persistence evidence from acquired forensic images.
development
Build automated multi-turn adversarial attacks against conversational LLM targets using Microsoft PyRIT's RedTeamingOrchestrator, CrescendoOrchestrator (gradual escalation), and TreeOfAttacksWithPruningOrchestrator (adaptive branching), with scorer feedback loops and persisted conversation memory. Use when single-shot LLM scanning is insufficient and you need multi-turn, scorer-driven AI red-team campaigns against a chatbot or agent.
testing
Stand up MISP, enable and cache curated threat feeds (CIRCL, abuse.ch, Feodo Tracker), apply warninglists to suppress false positives, query indicators with PyMISP, and export attributes as auto-generated Suricata/Sigma/Wazuh detection rules. Use when maturing a MISP instance to actively drive detection, curating threat feeds with quality controls, or automating IOC-to-detection pipelines for the SIEM/IDS.