English · Ελληνικά
Το port security ρωτάει «είναι αυτό το σωστό MAC;» — που ένα laptop μπορεί να πλαστογραφήσει σε δευτερόλεπτα. Το 802.1X ρωτάει «ποιος είσαι, και μπορείς να το αποδείξεις;» πριν η θύρα προωθήσει έστω ένα frame. Πραγματικός έλεγχος πρόσβασης βασισμένος σε ταυτότητα στην πρίζα, με RADIUS, MAB fallback για εκτυπωτές, και ανάπτυξη που δεν θα κλειδώσει έξω το γραφείο.
Το post Ασφάλεια Switch θωράκισε το access layer με port security — αλλά οι διευθύνσεις MAC πλαστογραφούνται τετριμμένα, οπότε αυτό είναι εμπόδιο ταχύτητας, όχι κλειδαριά. Το 802.1X είναι η κλειδαριά: πριν μια θύρα προωθήσει οτιδήποτε εκτός από κίνηση authentication, η συνδεδεμένη συσκευή πρέπει να αποδείξει ταυτότητα — ένα πιστοποιητικό ή username/password ελεγμένο έναντι κεντρικού server. Αποτυγχάνει, και η θύρα μένει κλειστή (ή σε ρίχνει σε VLAN καραντίνας). Είναι η διαφορά ανάμεσα στο «το δίκτυο εμπιστεύεται όποιον συνδεθεί» και «το δίκτυο εμπιστεύεται όποιον μπορεί να επικυρώσει».
Τρεις ρόλοι το κάνουν να δουλεύει: ο supplicant (ο client 802.1X της συσκευής), ο authenticator (το switch, που αναμεταδίδει αλλά ποτέ δεν αποφασίζει), και ο authentication server (RADIUS — Cisco ISE σε επιχειρήσεις, FreeRADIUS για τα budget SMB με τα οποία συνήθως δουλεύουμε). Θα καλωδιώσουμε και τα τρία, θα προσθέσουμε MAB ώστε εκτυπωτές και κάμερες που δεν μπορούν να κάνουν 802.1X να μπαίνουν ακόμα, θα χρησιμοποιήσουμε δυναμική ανάθεση VLAN ώστε η ταυτότητα να αποφασίζει σε ποιο VLAN προσγειώνεσαι, και — το πιο σημαντικό — θα το αναπτύξουμε πρώτα σε monitor mode ώστε να μην κλειδώσεις έξω όλο το γραφείο την πρώτη μέρα.
01
Πρώτα, global AAA: πες στο switch να χρησιμοποιεί RADIUS για 802.1X, όρισε τον server, και ενεργοποίησε το dot1x σε όλο το σύστημα. Τίποτα δεν κάνει authenticate μέχρι να υπάρχει αυτή η σκαλωσιά.
SW1(config)# aaa new-model # Ο server RADIUS (σύγχρονο block "radius server") SW1(config)# radius server RAD-1 SW1(config-radius-server)# address ipv4 192.168.1.60 auth-port 1812 acct-port 1813 SW1(config-radius-server)# key R@dius-Shared-Secret SW1(config-radius-server)# exit # Χρησιμοποίησε RADIUS για auth και accounting του 802.1X SW1(config)# aaa authentication dot1x default group radius SW1(config)# aaa authorization network default group radius # για δυναμικό VLAN SW1(config)# aaa accounting dot1x default start-stop group radius # Άναψε το 802.1X global, και άφησε το RADIUS να στέλνει attributes VLAN/ACL SW1(config)# dot1x system-auth-control SW1(config)# end SW1# show radius server-group all # επιβεβαίωσε ότι ο server είναι προσβάσιμος
Τη στιγμή που γράφεις aaa new-model, το IOS αλλάζει στη μέθοδο AAA για όλα τα logins — μαζί με το δικό σου console και VTY. Αν δεν έχεις ορίσει fallback, μπορείς να κλειδωθείς έξω. Πριν το ενεργοποιήσεις, βεβαιώσου ότι επιβιώνει μια τοπική διαδρομή login: aaa authentication login default group radius local (RADIUS, μετά local χρήστης ως fallback) συν ένα username admin privilege 15 secret … που υπάρχει στη συσκευή. Δοκίμασε το login SSH/console σε δεύτερο session πριν αποσυνδέσεις το πρώτο. Αυτή είναι η ίδια πειθαρχία «μην κολλήσεις τον εαυτό σου» με τα posts ZBF και ανάκτησης κωδικού.
02
Ο βασικός κανόνας ανάπτυξης NAC: ποτέ μην πηγαίνεις κατευθείαν σε επιβολή. Το open (monitor) mode κάνει authenticate και καταγράφει, αλλά αφήνει όλους να μπουν ούτως ή άλλως — ώστε να βρεις τις συσκευές που αποτυγχάνουν πριν παράγουν tickets στο help-desk.
SW1(config)# interface range GigabitEthernet0/2 - 24 SW1(config-if-range)# switchport mode access SW1(config-if-range)# authentication port-control auto SW1(config-if-range)# authentication open # MONITOR: auth, αλλά επίτρεψε όλα SW1(config-if-range)# dot1x pae authenticator SW1(config-if-range)# end # Παρακολούθησε ποιος κάνει authenticate και ποιος αποτυγχάνει — ΧΩΡΙΣ να μπλοκάρεις κανέναν ακόμα SW1# show authentication sessions interface Gi0/4 details Interface: GigabitEthernet0/4 MAC Address: 001a.2b3c.4d5e Status: Authorized ← επιτυχία 802.1X Method: dot1x # Όταν τα logs δείχνουν όλους να κάνουν authenticate καθαρά, αφαίρεσε το # "authentication open" για να περάσεις σε ΕΠΙΒΟΛΗ (closed mode).
03
Εκτυπωτές, κάμερες, αναγνώστες κάρτας, και παλιός εξοπλισμός δεν έχουν supplicant 802.1X. Το MAC Authentication Bypass αφήνει το switch να πέσει πίσω στο να ελέγξει το MAC τους έναντι RADIUS αφού λήξει το 802.1X — μια διαχειριζόμενη λίστα-επιτρεπτών, όχι ανοιχτή πρόσβαση.
SW1(config)# interface GigabitEthernet0/10 SW1(config-if)# switchport mode access SW1(config-if)# authentication port-control auto # Δοκίμασε πρώτα 802.1X· αν η συσκευή είναι σιωπηλή, πέσε πίσω σε MAB SW1(config-if)# authentication order dot1x mab SW1(config-if)# authentication priority dot1x mab SW1(config-if)# mab SW1(config-if)# dot1x pae authenticator SW1(config-if)# dot1x timeout tx-period 7 # πόσο να περιμένεις έναν supplicant SW1(config-if)# end # Το MAC του εκτυπωτή πρέπει να υπάρχει ως χρήστης στο RADIUS. Είναι μια λίστα-επιτρεπτών που # διαχειρίζεσαι κεντρικά — πολύ καλύτερο από στατικά MAC port-security σε 200 θύρες.
Το MAB κάνει authenticate με διεύθυνση MAC, που είναι πλαστογραφήσιμη — οπότε είναι ευκολία για χαζές συσκευές, όχι πραγματική ασφάλεια. Περιόρισε τον κίνδυνο: βάλε τις συσκευές MAB σε ένα περιορισμένο VLAN με ένα ACL που επιτρέπει μόνο ό,τι χρειάζονται (ένας εκτυπωτής φτάνει τον print server και τίποτα άλλο), και χρησιμοποίησε profiling συσκευών του RADIUS όπου είναι διαθέσιμο ώστε ένα MAC «εκτυπωτή» που ξαφνικά φέρεται σαν laptop να σημαίνεται. Ο στόχος είναι ότι ακόμα κι αν κάποιος κλωνοποιήσει το MAC ενός εκτυπωτή, το δίκτυο που κληρονομεί να είναι αδιέξοδο. Αυτό είναι defense-in-depth πάνω στη δουλειά DHCP-snooping/DAI από το post Ασφάλεια Switch.
04
Η ταυτότητα μπορεί να αποφασίσει τοποθέτηση: το RADIUS επιστρέφει ένα VLAN στο Access-Accept του, οπότε το προσωπικό προσγειώνεται σε VLAN προσωπικού και οι εργολάβοι σε περιορισμένο — από την ίδια θύρα. Και κάθε τρόπος αποτυχίας χρειάζεται ορισμένο προορισμό, ποτέ «ολάνοιχτο».
# Το RADIUS στέλνει αυτόματα το VLAN επιτυχίας μέσω των attributes Tunnel-* # (aaa authorization network, ορισμένο στην ενότητα 01). Για τις διαδρομές αποτυχίας: SW1(config)# interface GigabitEthernet0/4 # Επικυρωμένο αλλά ΑΠΟΡΡΙΦΘΗΚΕ → VLAN περιορισμού/καραντίνας 900 SW1(config-if)# authentication event fail action authorize vlan 900 # Κανένας supplicant ΚΑΙ απέτυχε το MAB → VLAN guest 800 SW1(config-if)# dot1x auth-fail vlan 900 SW1(config-if)# authentication event no-response action authorize vlan 800 # Ο server RADIUS απρόσιτος → critical VLAN (fail-OPEN για να συνεχίσει να δουλεύει) SW1(config-if)# authentication event server dead action authorize vlan 10 SW1(config-if)# authentication event server alive action reinitialize SW1(config-if)# end
Τι συμβαίνει όταν πεθαίνει ο server RADIUS; Χωρίς critical VLAN (ενέργεια server dead), κάθε θύρα σε κάθε switch που δεν φτάνει το RADIUS γίνεται closed — μια διακοπή RADIUS γίνεται ολική διακοπή δικτύου, που είναι καταστροφικό μοναδικό σημείο αστοχίας. Η συνηθισμένη επιλογή είναι fail-open: αν ο server auth είναι απρόσιτος, ρίξε τους clients σε λειτουργικό VLAN ώστε η επιχείρηση να συνεχίσει να τρέχει, και ξανα-επικύρωσε όταν επιστρέψει το RADIUS (server alive … reinitialize). Οι security purists προτιμούν fail-closed· για ένα SMB, ένα χασομέρι του server auth που ρίχνει όλο το γραφείο σχεδόν ποτέ δεν είναι η σωστή ανταλλαγή. Κάνε την επιλογή συνειδητά και τεκμηρίωσέ την — οι auditors ρωτάνε.
05
Μία εντολή δείχνει το auth state κάθε θύρας, τη μέθοδο, και το ανατεθειμένο VLAN. Όταν μια συσκευή δεν κάνει authenticate, η αστοχία είναι στον supplicant, στην αναμετάδοση του switch, ή στο RADIUS — αυτά απομονώνουν ποια.
| Εντολη | Δειχνει |
|---|---|
| show authentication sessions | Κάθε θύρα που κάνει authenticate: MAC, μέθοδος (dot1x/mab), status, VLAN. |
| show authentication sessions interface Gi0/4 details | Η πλήρης ιστορία για μία θύρα — γιατί είναι ή όχι authorized. |
| show dot1x interface Gi0/4 details | Λεπτομέρεια state machine 802.1X και ανταλλαγής EAP. |
| show radius statistics | Φτάνουν τα requests στο RADIUS και παίρνουν απάντηση; |
| test aaa group radius user pass new-code | Απόδειξε ότι δουλεύει η διαδρομή switch↔RADIUS και το κοινό μυστικό. |
| debug dot1x all / debug radius | Ζωντανό trace EAP/RADIUS για μια πεισματάρα θύρα (κλείσ' το μετά). |
Εντόπισε πριν σκάψεις: αν το show radius statistics δείχνει requests αλλά καμία απάντηση, είναι το κοινό μυστικό ή το config του server (το switch και το RADIUS διαφωνούν στο key, ή το IP του switch δεν είναι ορισμένο client στην πλευρά RADIUS). Αν τα requests παίρνουν Access-Reject, είναι διαπιστευτήρια/πολιτική στο RADIUS. Αν τίποτα δεν φτάνει καν στο RADIUS, είναι προσβασιμότητα (routing/ACL προς τον server). Και αν ο supplicant δεν ξεκινάει ποτέ, είναι ο client — 802.1X κλειστό στη NIC, ή λάθος μέθοδος EAP. Το test aaa είναι ο πιο γρήγορος τρόπος να κόψεις το πρόβλημα στη μέση: αποδεικνύει το σκέλος switch↔RADIUS ανεξάρτητα από οποιαδήποτε πραγματική συσκευή.
06
Το 802.1X είναι ισχυρό και λειτουργικά βαρύ. Γνώρισε πότε αξίζει και πότε αρκούν οι πιο ελαφριοί έλεγχοι access-layer.
| Ελεγχος | Δυναμη / κοστος |
|---|---|
| Port security (sticky MAC) | Φθηνό, πλαστογραφήσιμο MAC. Καλή βάση παντού. |
| MAB | Κεντρική λίστα-επιτρεπτών MAC, ακόμα πλαστογραφήσιμο. Για χαζές συσκευές. |
| 802.1X (πιστοποιητικό χρήστη/μηχανής) | Πραγματική ταυτότητα, ισχυρό. Χρειάζεται RADIUS + supplicants + λειτουργική φροντίδα. |
Το πλήρες 802.1X λάμπει όπου μια λάθος συσκευή στο LAN είναι πραγματικός κίνδυνος — κλινικές, οικονομικά, οπουδήποτε με compliance — και όπου υπάρχει κάποιος να τρέχει την πλευρά RADIUS. Για ένα μικρό ξενοδοχείο ή μαγαζί, ο συνδυασμός VLAN segmentation + DHCP snooping + DAI + port security + ένα κλειδωμένο δίκτυο guest (το post Ασφάλεια Switch) δίνει το περισσότερο όφελος σε κλάσμα του λειτουργικού βάρους. Αναπτύσσουμε 802.1X όταν το μοντέλο απειλών και το προσωπικό το δικαιολογούν και τα δύο, και είμαστε ειλικρινείς όταν δεν το δικαιολογούν — ένα NAC που κανείς δεν συντηρεί αποτυγχάνει ανοιχτά και δίνει ψεύτικη σιγουριά, που είναι χειρότερο από το να μην το έχεις καθόλου.
Συμπερασματα
authentication open για επιβολή. Ποτέ μη γυρίζεις κατευθείαν σε closed.aaa new-model αλλάζει το login για όλους — κράτα ένα local fallback και πραγματικό username, και δοκίμασέ το σε δεύτερο session.Το 802.1X κερδίζει την πολυπλοκότητά του σε κάποια δίκτυα και είναι υπερβολή σε άλλα. Όπου το μοντέλο απειλών το δικαιολογεί, το στήνω πρώτα σε monitor mode, προσθέτω MAB για τις παλιές συσκευές που δεν μπορούν να κάνουν 802.1X, και χτίζω διαδρομές αποτυχίας που δεν κλειδώνουν έξω έναν ολόκληρο όροφο. Όπου δεν το δικαιολογεί, θα το πω και θα προτείνω αντ' αυτού πιο ελαφρύ segmentation.
Κλεισε μια Discovery Call →