Hvem må logge ind på dine routere og switche, hvad må de gøre, og hvad har de gjort? Det er de tre spørgsmål, AAA svarer på. I CCNA 200-301 v2.0 skal du kunne konfigurere netværksenheder med lokale brugere og som AAA-klient med TACACS+ og RADIUS til management (emne 4.1).
AAA: Authentication, Authorization, Accounting
- Authentication (autentificering): Hvem er du? Brugernavn og adgangskode, certifikat eller token.
- Authorization (autorisation): Hvad må du? Fx privilege-niveau eller hvilke kommandoer brugeren må køre.
- Accounting (logning): Hvad gjorde du? Registrering af logins, kommandoer og sessionernes varighed.
Med lokale brugere ligger brugerdatabasen på hver enkelt enhed. Har du 300 switche og en medarbejder stopper, skal brugeren fjernes 300 steder. Med en central AAA-server (fx Cisco ISE eller en anden RADIUS/TACACS+-server) styres alt ét sted, ofte koblet til Active Directory.
TACACS+ og RADIUS
| TACACS+ | RADIUS | |
|---|---|---|
| Oprindelse | Cisco (senere beskrevet i RFC 8907) | Åben standard (RFC 2865/2866) |
| Transport | TCP port 49 | UDP 1812 (auth) og 1813 (accounting). Ældre: 1645/1646 |
| Kryptering | Hele pakkens payload | Kun adgangskoden |
| Adskillelse af AAA | Autentificering, autorisation og accounting er adskilt | Autentificering og autorisation er samlet |
| Kommandoautorisation | Ja, pr. kommando | Begrænset |
| Typisk brug | Administratoradgang til netværksenheder | Netværksadgang for brugere (802.1X, VPN, Wi-Fi), men også device admin |
Huskeregel: TACACS+ til enhedsadministration, RADIUS til brugeres netværksadgang. Begge kan dog bruges til begge dele.
Trin 1: Lokal bruger som nødadgang
Konfigurer altid en lokal bruger, før du slår AAA til. Ellers kan du låse dig selv ude, hvis serveren ikke svarer.
R1(config)# username admin privilege 15 algorithm-type scrypt secret StaerktKodeord!
R1(config)# enable algorithm-type scrypt secret EtAndetKodeord!
(Ældre IOS uden algorithm-type bruger username admin privilege 15 secret ....)
Trin 2: Slå AAA til
R1(config)# aaa new-model
Bemærk: Så snart aaa new-model er slået til, bruger VTY- og konsollinjer AAA-standardmetoden. Uden en metodeliste er det den lokale database. Vær forsigtig, hvis du arbejder via SSH.
Trin 3: Definer serveren
TACACS+
R1(config)# tacacs server ISE1
R1(config-server-tacacs)# address ipv4 192.168.50.10
R1(config-server-tacacs)# key DelteNoegleTacacs
R1(config-server-tacacs)# exit
R1(config)# aaa group server tacacs+ ADMIN-SERVERE
R1(config-sg-tacacs+)# server name ISE1
R1(config-sg-tacacs+)# exit
RADIUS
R1(config)# radius server ISE1-RAD
R1(config-radius-server)# address ipv4 192.168.50.10 auth-port 1812 acct-port 1813
R1(config-radius-server)# key DelteNoegleRadius
R1(config-radius-server)# exit
R1(config)# aaa group server radius RAD-SERVERE
R1(config-sg-radius)# server name ISE1-RAD
R1(config-sg-radius)# exit
Nøglen (shared secret) skal være den samme på enheden og på serveren, hvor enheden også skal være oprettet som klient (network device).
Trin 4: Metodelister
Metodelisten bestemmer, hvilke metoder der prøves, og i hvilken rækkefølge:
R1(config)# aaa authentication login default group ADMIN-SERVERE local
R1(config)# aaa authorization exec default group ADMIN-SERVERE local
R1(config)# aaa accounting exec default start-stop group ADMIN-SERVERE
R1(config)# aaa accounting commands 15 default start-stop group ADMIN-SERVERE
group ADMIN-SERVERE localbetyder: Spørg først TACACS+-serveren. Kun hvis serveren ikke svarer, bruges den lokale database. Afviser serveren brugeren, prøves den lokale database ikke.authorization execlader serveren bestemme brugerens privilege-niveau ved login.accounting commands 15logger alle kommandoer på niveau 15 på serveren.
Vil du bruge RADIUS i stedet, skifter du gruppenavnet ud med RAD-SERVERE.
Trin 5: Bind til VTY-linjerne
Bruger du default-listen, gælder den automatisk. Ellers kan du lave en navngivet liste:
R1(config)# aaa authentication login VTY-LOGIN group ADMIN-SERVERE local
R1(config)# line vty 0 4
R1(config-line)# login authentication VTY-LOGIN
R1(config-line)# transport input ssh
Brug SSH, aldrig Telnet. Se Opsætning af SSH.
Kontrol og fejlsøgning
R1# show aaa servers
R1# show tacacs
R1# show run | section aaa
R1# debug aaa authentication
R1# test aaa group ADMIN-SERVERE bruger1 Kodeord1 new-code
Typiske fejl:
- Forkert shared secret: Serveren afviser eller ignorerer forespørgslen.
- Enheden er ikke oprettet som klient på serveren.
- Forkert kildeinterface: Serveren forventer en bestemt IP. Fastlås kilden med
ip tacacs source-interfaceellerip radius source-interface. - Ingen lokal fallback: Serveren er nede, og ingen kan logge ind.
- Firewall eller ACL blokerer TCP 49 eller UDP 1812/1813.
Privilege-niveauer og kommandoautorisation
Cisco IOS har 16 privilege-niveauer fra 0 til 15. Niveau 1 er user EXEC (prompten R1>), og niveau 15 er privileged EXEC (prompten R1#) med fuld adgang. Med en central AAA-server kan du give forskellige grupper forskellige niveauer. Servicedesken kan fx få et niveau, hvor de kun må køre show-kommandoer, mens netværksteamet får niveau 15.
Med TACACS+ kan du gå et skridt videre og lade serveren godkende hver enkelt kommando:
R1(config)# aaa authorization commands 15 default group ADMIN-SERVERE local
Hver gang en bruger skriver en kommando på niveau 15, spørger routeren TACACS+-serveren, om den er tilladt. Det giver finmasket kontrol, og sammen med accounting får du et fuldt revisionsspor over, hvem der ændrede hvad og hvornår. Netop derfor foretrækkes TACACS+ til administration af netværksudstyr.
RADIUS og 802.1X
RADIUS er standarden bag 802.1X, hvor brugere og enheder skal autentificere sig, før switchporten eller Wi-Fi-netværket giver adgang. Switchen eller access pointet er authenticator, klienten er supplicant, og RADIUS-serveren er authentication server. 802.1X er ikke et selvstændigt emne i v2.0, men det forklarer, hvorfor RADIUS er så udbredt.
Gode vaner
- Brug mindst to AAA-servere i gruppen, så du har redundans.
- Hold den lokale nødbruger hemmelig og med et stærkt kodeord, og skift den jævnligt.
- Brug SSH og SFTP/SCP, så adgangskoder og konfiguration ikke sendes i klartekst.
- Send accounting-data og syslog til et centralt sted, så de kan bruges ved fejlsøgning og sikkerhedshændelser.
Det skal du kunne til eksamen
- Forklare de tre A’er.
- Sammenligne TACACS+ og RADIUS: transport, porte, kryptering og typisk brug.
- Konfigurere en lokal bruger,
aaa new-model, en server og en metodeliste med lokal fallback. - Forklare, hvornår fallback til
localbruges.
Relateret: Opsætning af SSH, SSH standard konfiguration og IOS standard kommandoer.