In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
Dieses Dokument beschreibt die Konfiguration von Authentifizierung, Autorisierung und Accounting (AAA) auf einem Cisco-Router mit Radius- oder TACACS+-Protokollen.
Es gibt keine spezifischen Anforderungen für dieses Dokument.
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
Die Informationen in diesem Dokument basieren auf Cisco IOS® Software Version 12 Mainline.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
In diesem Dokument wird erklärt, wie Authentifizierung, Autorisierung und Abrechnung (AAA) auf einem Cisco Router mit Radius- oder TACACS+-Protokollen konfiguriert werden. Ziel dieses Dokuments ist es nicht, alle AAA-Funktionen abzudecken, sondern die wichtigsten Befehle zu erklären und einige Beispiele und Richtlinien bereitzustellen.
Anmerkung: Lesen Sie den Abschnitt zur allgemeinen AAA-Konfiguration, bevor Sie mit der Cisco IOS-Konfiguration fortfahren. Andernfalls kann es zu Fehlkonfigurationen und einer anschließenden Sperrung kommen.
Weitere Informationen zur AAA-Konfiguration finden Sie im Konfigurationshandbuch zur Authentifizierung, Autorisierung und Abrechnung.
Netzwerkdiagramm
Zur Aktivierung von AAA müssen Sie den Befehl aaa new-model in der globalen Konfiguration konfigurieren.
Anmerkung: Bis zur Aktivierung dieses Befehls werden alle anderen AAA-Befehle ausgeblendet.
Warnung: Mit dem Befehl aaa new-model wird sofort die lokale Authentifizierung auf alle Leitungen und Schnittstellen angewendet (mit Ausnahme der Konsolenleitung line con 0). Wenn eine Telnet-Sitzung zum Router geöffnet wird, nachdem dieser Befehl aktiviert wurde (oder wenn bei einer Verbindung die Zeit überschritten wird und die Verbindung wiederhergestellt werden muss), muss der Benutzer über die lokale Datenbank des Routers authentifiziert werden. Um zu verhindern, dass Sie keinen Zugriff mehr auf den Router haben, empfehlen wir Ihnen, auf dem Zugriffsserver einen Benutzernamen und ein Kennwort festzulegen, bevor Sie mit der AAA-Konfiguration beginnen. Siehe nächstes Codebeispiel.
Router(config)#username xxx password yyy
Tipp: Vor der Konfiguration der AAA-Befehle muss die save
Konfiguration erfolgen. Erst nachdem Sie die komplette AAA-Konfiguration abgeschlossen haben (und davon überzeugt sind, dass sie ordnungsgemäß funktioniert), sollten Sie die Konfiguration erneut . save
Auf diese Weise können Sie den Zustand nach unerwarteten Sperrungen wiederherstellen, da Sie jede Änderung durch ein Neuladen des Routers zurücksetzen können.
Definieren Sie in der globalen Konfiguration das mit AAA verwendete Sicherheitsprotokoll (Radius, TACACS+). Wenn Sie keines dieser beiden Protokolle verwenden möchten, können Sie die lokale Datenbank auf dem Router verwenden.
Wenn Sie TACACS+ verwenden, verwenden Sie den Befehl tacacs-server host<IP address of the AAA server> <key> .
Wenn Sie Radius verwenden, verwenden Sie den Befehl radius-server host<IP address of the AAA server> <key> .
Konfigurieren Sie auf dem AAA-Server die folgenden Parameter:
Den Namen des Zugriffsservers.
Die IP-Adresse, die der Zugriffsserver für die Kommunikation mit dem AAA-Server verwendet.
Anmerkung: Wenn sich beide Geräte im gleichen Ethernet-Netzwerk befinden, verwendet der Zugriffsserver beim Senden des AAA-Pakets standardmäßig die IP-Adresse, die auf der Ethernet-Schnittstelle definiert ist. Dies ist wichtig, wenn der Router über mehrere Schnittstellen (und damit mehrere Adressen) verfügt.
Denselben Schlüssel <key> , der im Zugriffsserver konfiguriert ist.
Anmerkung: Beim Schlüssel wird die Groß-/Kleinschreibung beachtet.
Das vom Zugriffsserver verwendete Protokoll (TACACS+ oder Radius).
Das genaue Verfahren zur Konfiguration der vorherigen Parameter finden Sie in der Dokumentation zu Ihrem AAA-Server. Wenn der AAA-Server nicht ordnungsgemäß konfiguriert ist, können AAA-Anfragen vom NAS vom AAA-Server ignoriert werden und die Verbindung kann fehlschlagen.
Der AAA-Server muss vom Zugriffserver aus über IP erreichbar sein (führen Sie einen Ping-Test durch, um die Netzwerkverbindungen zu überprüfen).
Durch die Authentifizierung werden Benutzer überprüft, bevor diese Zugriff auf das Netzwerk und die Netzwerkservices erhalten (die bei der Autorisierung überprüft werden).
Gehen Sie wie folgt vor, um die AAA-Authentifizierung zu konfigurieren:
Definieren Sie zunächst eine benannte Liste mit Authentifizierungsmethoden (im globalen Konfigurationsmodus).
Wenden Sie diese Liste auf eine oder mehrere Schnittstellen an (im Schnittstellenkonfigurationsmodus).
Die einzige Ausnahme ist die Standardmethodenliste (mit dem Namen default). Die Standardmethodenliste wird automatisch auf alle Schnittstellen angewendet, mit Ausnahme derer, für die eine benannte Methodenliste explizit definiert ist. Eine definierte Methodenliste überschreibt die Standardmethodenliste.
In diesen Authentifizierungsbeispielen werden Radius, die Anmeldung und Point-to-Point Protocol (PPP)-Authentifizierung verwendet, um Konzepte wie Methoden und benannte Listen zu erklären. In allen Beispielen kann TACACS+ für Radius oder eine lokale Authentifizierung verwendet werden.
Die Cisco IOS-Software verwendet die erste aufgeführte Methode zur Authentifizierung von Benutzern. Wenn diese Methode fehlschlägt (angezeigt durch ERROR), wählt die Cisco IOS-Software die nächste in der Methodenliste aufgeführte Authentifizierungsmethode aus. Dieser Prozess wird fortgesetzt, bis die Kommunikation mit einer aufgelisteten Authentifizierungsmethode erfolgreich ist oder alle in der Methodenliste definierten Methoden ausgeschöpft sind.
Es ist wichtig zu beachten, dass die Cisco IOS-Software die Authentifizierung mit der nächsten aufgelisteten Authentifizierungsmethode nur vornimmt, wenn die vorherige Methode nicht reagiert. Wenn die Authentifizierung zu irgendeinem Zeitpunkt in diesem Zyklus fehlschlägt, was bedeutet, dass der AAA-Server oder die lokale Benutzernamensdatenbank den Benutzerzugriff verweigert (angezeigt durch FAIL), wird der Authentifizierungsprozess gestoppt und es werden keine anderen Authentifizierungsverfahren durchgeführt.
Zur Ermöglichung einer Benutzerauthentifizierung müssen Sie den Benutzernamen und das Kennwort auf dem AAA-Server konfigurieren.
Sie können den Befehl aaa authentication login verwenden, um Benutzer zu authentifizieren, die Exec-Zugriff auf den Zugriffsserver (tty, vty, console und aux) wünschen.
Router(config)#aaa authentication login default group radius local
Im vorherigen Befehl gilt Folgendes:
Die benannte Liste ist die Standardliste (Standard).
Es gibt zwei Authentifizierungsmethoden (Gruppenradius und lokal).
Alle Benutzer werden über den Radius-Server (erste Methode) authentifiziert. Wenn der Radius-Server nicht reagiert, wird die lokale Datenbank des Routers verwendet (zweite Methode). Definieren Sie für die lokale Authentifizierung den Benutzernamen und das Kennwort:
Router(config)#username xxx password yyy
Da im Befehl aaa authentication login der Listenstandard verwendet wird, wird die Anmeldeauthentifizierung automatisch auf alle Anmeldeverbindungen (z. B. tty, vty, console und aux) angewendet.
Anmerkung: Der Server (Radius oder TACACS+) kann nicht auf eine vom Zugriffsserver gesendete AAA-Authentifizierungsanfrage antworten, wenn keine IP-Verbindung besteht, wenn der Zugriffsserver auf dem AAA-Server nicht richtig definiert ist oder wenn der AAA-Server auf dem Zugriffsserver nicht richtig definiert ist.
Anmerkung: Wenn Sie das vorherige Beispiel ohne lokales Schlüsselwort verwenden, lautet das Ergebnis:
Router(config)#aaa authentication login default group radius
Anmerkung: Wenn der AAA-Server nicht auf die Authentifizierungsanfrage antwortet, schlägt die Authentifizierung fehl (da der Router keine andere Möglichkeit hat, es zu versuchen).
Anmerkung: Das group-Schlüsselwort bietet eine Möglichkeit, aktuelle Serverhosts zu gruppieren. Mit dieser Funktion kann der Benutzer eine Teilmenge der konfigurierten Server-Hosts auswählen und für einen bestimmten Service verwenden.
Erweitern Sie die Konfiguration aus Beispiel 1, sodass die Konsolenanmeldung nur durch das in "line con 0" festgelegte Kennwort authentifiziert wird.
Die Liste KONSOLE wird definiert und dann auf "line con 0" angewendet.
Konfiguration:
Router(config)#aaa authentication login CONSOLE line
Im vorherigen Befehl gilt Folgendes:
die benannte Liste lautet KONSOLE.
es gibt nur ein Authentifizierungsverfahren (Leitung).
Sobald eine benannte Liste (in diesem Beispiel CONSOLE) erstellt wurde, muss sie auf eine Leitung oder Schnittstelle angewendet werden, damit sie ausgeführt wird. Dies geschieht mithilfe des login authentication
folgenden Befehls:
Router(config)#line con 0 Router(config-line)#exec-timeout 0 0 Router(config-line)#password cisco Router(config-line)#login authentication CONSOLE
Die CONSOLE-Liste überschreibt die Standardmethodenliste für line con 0. Nach dieser Konfiguration für line con 0 müssen Sie das Kennwort cisco eingeben, um den Konsolenzugriff zu erhalten. Die Standardliste wird weiterhin für tty, vty und aux verwendet.
Anmerkung: Um den Konsolenzugriff durch einen lokalen Benutzernamen und ein lokales Kennwort zu authentifizieren, verwenden Sie das folgende Codebeispiel:
Router(config)#aaa authentication login CONSOLE local
In diesem Fall müssen ein Benutzername und ein Kennwort in der lokalen Datenbank des Routers konfiguriert werden. Die Liste muss auch auf die Leitung oder Schnittstelle angewendet werden.
Anmerkung: Um keine Authentifizierung zu erhalten, verwenden Sie das nächste Codebeispiel:
Router(config)#aaa authentication login CONSOLE none
In diesem Fall gibt es keine Authentifizierung, um Zugriff auf die Konsole zu erhalten. Die Liste muss auch auf die Leitung oder Schnittstelle angewendet werden.
Sie können eine Authentifizierung ausgeben, um in den Aktivierungsmodus zu gelangen (Berechtigung 15).
Konfiguration:
Router(config)#aaa authentication enable default group radius enable
Es kann nur das Kennwort abgefragt werden. Der Benutzername lautet $enab15$. Daher muss auf dem AAA-Server der Benutzername $enab15$ definiert werden.
Wenn der Radius-Server nicht reagiert, muss möglicherweise das lokal auf dem Router konfigurierte Aktivierungskennwort eingegeben werden.
Der Befehl aaa authentication ppp wird verwendet, um eine PPP-Verbindung zu authentifizieren. Er wird normalerweise verwendet, um ISDN- oder analoge Remote-Benutzer zu authentifizieren, die über einen Zugriffsserver auf das Internet oder eine Zentrale zugreifen möchten.
Der Zugriffsserver verfügt über eine ISDN-Schnittstelle, die für die Annahme von PPP-Einwahl-Clients konfiguriert ist. Wir verwenden eine dialer rotary-group 0, die Konfiguration kann jedoch über die Hauptschnittstelle oder die Dialer-Profilschnittstelle erfolgen.
Konfiguration:
Router(config)#aaa authentication ppp default group radius local
Mit diesem Befehl werden alle PPP-Benutzer mit Radius authentifiziert. Wenn der Radius-Server nicht reagiert, wird die lokale Datenbank verwendet.
Konfigurieren Sie folgende Befehle, wenn Sie anstelle der Standardliste eine benannte Liste verwenden möchten:
Router(config)#aaa authentication ppp ISDN_USER group radius Router(config)#interface dialer 0 Router(config-if)#ppp authentication chap ISDN_USER
In diesem Beispiel lautet die Liste ISDN_USER und die Methode ist Radius.
Der Zugriffsserver verfügt über eine interne Modemkarte (Mica, Microcom oder Next Port). Angenommen, sowohl der Befehl aaa authentication login als auch der Befehl aaa authentication ppp ist konfiguriert.
Wenn ein Modembenutzer zuerst über eine Exec-Sitzung im Zeichenmodus auf den Router zugreift (z. B. über das Terminalfenster nach dem Einwählen), wird der Benutzer in einer tty-Verbindung authentifiziert. Um in eine Sitzung im Paketmodus zu starten, müssen Benutzer ppp default oder ppp eingeben. Da die PPP-Authentifizierung explizit konfiguriert wird (mit aaa authentication ppp), wird der Benutzer erneut auf PPP-Ebene authentifiziert.
Verwenden Sie zur Vermeidung dieser zweiten Authentifizierung das Schlüsselwort if-needed:
Router(config)#aaa authentication login default group radius local Router(config)#aaa authentication ppp default group radius local if-needed
Anmerkung: Wenn der Client eine PPP-Sitzung direkt startet, wird die PPP-Authentifizierung direkt durchgeführt, da kein Anmeldezugriff auf den Zugriffsserver besteht.
Autorisierung ist der Prozess, mit dem Sie steuern können, was ein Benutzer ausführen kann.
Für die AAA-Authentifizierung gelten die gleichen Regeln wie für die AAA-Autorisierung:
Definieren Sie zunächst eine benannte Liste mit Autorisierungsmethoden.
Wenden Sie diese Liste dann auf eine oder mehrere Schnittstellen an (mit Ausnahme der Standardmethodenliste).
Die erste aufgelistete Methode wird verwendet. Wenn sie nicht reagiert, wird die zweite verwendet, und so weiter.
Methodenlisten sind für den angeforderten Autorisierungstyp spezifisch. Dieses Dokument konzentriert sich auf die Autorisierungstypen Exec und Netzwerk.
Weitere Informationen zu den anderen Autorisierungstypen finden Sie im Cisco IOS Sicherheitskonfigurationsleitfaden.
Mit dem Befehl aaa authorization exec wird festgelegt, ob der Benutzer eine EXEC-Shell ausführen darf. Diese Funktion kann Benutzerprofilinformationen wie Informationen zu automatischen Befehlen, Leerlaufzeitüberschreitung, Sitzungs-Timeout, Zugriffsliste und Zugriffsrechte sowie andere benutzerabhängige Faktoren zurückgeben.
Die Exec-Autorisierung wird nur über vty- und tty-Verbindungen ausgeführt.
Im nächsten Beispiel wird Radius verwendet.
Bei einer Authentifizierung mit folgenden Angaben:
Router(config)#aaa authentication login default group radius local
Alle Benutzer, die sich beim Zugriffsserver anmelden möchten, müssen über Radius (erste Methode) oder eine lokale Datenbank (zweite Methode) autorisiert werden.
Konfiguration:
Router(config)#aaa authorization exec default group radius local
Anmerkung: Auf dem AAA-Server muss Service-Type=1 (Anmeldung) ausgewählt werden.
Anmerkung: Wenn bei diesem Beispiel das lokale Schlüsselwort nicht enthalten ist und der AAA-Server nicht reagiert, ist die Autorisierung daher nicht möglich, und die Verbindung kann fehlschlagen.
Anmerkung: In den nächsten Beispielen 2 und 3 müssen Sie keinen Befehl auf dem Router hinzufügen. Sie müssen nur das Profil auf dem Zugriffsserver konfigurieren.
Konfigurieren Sie basierend auf Beispiel 1 das nächste Cisco AV-Paar auf dem AAA-Server, damit sich ein Benutzer beim Zugriffsserver anmelden und direkt in den Aktivierungsmodus wechseln kann:
shell:priv-lvl=15
Der Benutzer kann jetzt direkt in den Aktivierungsmodus wechseln.
Anmerkung: Wenn die erste Methode nicht reagiert, wird die lokale Datenbank verwendet. Der Benutzer kann allerdings nicht direkt in den Aktivierungsmodus wechseln, sondern muss den Befehl "enable" eingeben und das enable-Kennwort angeben.
Verwenden Sie das IETF Radius-Attribut 28, um eine Leerlaufzeitüberschreitung zu konfigurieren (sodass die Sitzung getrennt wird, wenn nach der Leerlaufzeitüberschreitung kein Datenverkehr mehr verzeichnet wird): Idle-Timeout (Leerlaufzeit) im Benutzerprofil.
Der Befehl führt eine Autorisierung für alle netzwerkbezogenen Serviceanfragen wie PPP, SLIP und ARAP aus.aaa authorization network
Dieser Abschnitt konzentriert sich auf PPP, das am häufigsten verwendet wird.
Der AAA-Server überprüft, ob eine PPP-Sitzung durch den Client zulässig ist. Darüber hinaus können PPP-Optionen vom Client angefordert werden: Callback, Komprimierung, IP-Adresse usw. Diese Optionen müssen im Benutzerprofil auf dem AAA-Server konfiguriert werden. Darüber hinaus kann das AAA-Profil für einen bestimmten Client Leerlaufzeitüberschreitungen, Zugriffslisten und andere benutzerspezifische Attribute enthalten, die von der Cisco IOS-Software heruntergeladen und auf diesen Client angewendet werden können.
Die nächsten Beispiele veranschaulichen die Autorisierung mit Radius.
Der Zugriffsserver wird verwendet, um PPP-Einwahlverbindungen zu akzeptieren.
Benutzer werden (wie zuvor konfiguriert) mit folgenden Angaben authentifiziert:
Router(config)#aaa authentication ppp default group radius local
Verwenden Sie den nächsten Befehl, um die Benutzer zu autorisieren:
Router(config)#aaa authorization network default group radius local
Anmerkung: Konfigurieren Sie auf dem AAA-Server Folgendes: Service-Type=7 (gerahmt) und Framed-Protocol=PPP.
Sie können den AAA-Server verwenden, um benutzerspezifische Attribute wie IP-Adresse, Rückrufnummer, Dialer-Leerlaufzeitüberschreitungswert oder Zugriffsliste usw. zuzuweisen. Bei einer solchen Implementierung lädt der NAS die entsprechenden Attribute aus dem Benutzerprofil des AAA-Servers herunter.
Ähnlich wie bei der Authentifizierung können Sie einen Listennamen konfigurieren, anstatt den Standardnamen zu verwenden:
Router(config)#aaa authorization network ISDN_USER group radius local
Wenden Sie anschließend diese Liste auf die Schnittstelle an:
Router(config)#interface dialer 0 Router(config-if)#ppp authorization ISDN_USER
Mit der AAA-Abrechnungsfunktion können Sie die Services, auf die Benutzer zugreifen, und die Anzahl der Netzwerkressourcen, die sie in Anspruch nehmen, nachverfolgen.
Für die AAA-Abrechnung gelten die gleichen Regeln wie für Authentifizierung und Autorisierung:
Sie müssen zunächst eine benannte Liste von Abrechnungsmethoden definieren.
Wenden Sie diese Liste dann auf eine oder mehrere Schnittstellen an (mit Ausnahme der Standardmethodenliste).
Die erste aufgelistete Methode wird verwendet, wenn keine Reaktion erfolgt, wird die zweite verwendet usw.
Die Netzwerkabrechnung bietet Informationen für alle PPP-, Slip- und AppleTalk Remote Access Protocol (ARAP)-Sitzungen: Paketanzahl, Oktettanzahl, Sitzungszeit, Start- und Stoppzeit.
Exec Accounting enthält Informationen über EXEC-Terminalsitzungen (z. B. eine Telnet-Sitzung) des Netzwerkzugriffsservers: Sitzungszeit, Start- und Stoppzeit.
Die folgenden Beispiele konzentrieren sich darauf, wie Informationen an den AAA-Server gesendet werden können.
Für jede PPP-Einwahlsitzung werden Abrechnungsinformationen an den AAA-Server gesendet, sobald der Client authentifiziert wurde und mit dem Schlüsselwort start-stop getrennt wurde.
Router(config)#aaa accounting network default start-stop group radius local
Wenn Abrechnungsinformationen erst nach der Trennung eines Clients gesendet werden müssen, verwenden Sie das Schlüsselwort stop und konfigurieren Sie die folgende Zeile:
Router(config)#aaa accounting network default stop group radius local
Bis zu diesem Zeitpunkt bietet die AAA-Abrechnung Unterstützung für Start- und Stoppdatensätze für Anrufe, die die Benutzerauthentifizierung bestanden haben.
Wenn die Authentifizierung oder PPP-Aushandlung fehlschlägt, ist kein Authentifizierungsdatensatz vorhanden.
Die Lösung ist die Verwendung eines Stoppdatensatzes für die Abrechnung bei einem AAA-Ressourcenausfall:
Router(config)#aaa accounting send stop-record authentication failure
Ein Stoppdatensatz wird an den AAA-Server gesendet.
Zur Aktivierung der vollständigen Ressourcenabrechnung, die sowohl einen Startdatensatz bei der Anrufeinrichtung als auch einen Stoppdatensatz bei Anrufbeendigung generiert, müssen Sie Folgendes konfigurieren:
Router(config)#aaa accounting resource start-stop
Dieser Befehl wurde in Cisco IOS-Software Version 12.1(3)T eingeführt.
Mit diesem Befehl verfolgt ein Start-/Stoppdatensatz für den Anrufaufbau und die Anruftrennung den Fortschritt der Ressourcenverbindung zum Gerät. Ein separater Start-/Stoppdatensatz für die Abrechnung zur Benutzerauthentifizierung verfolgt den Fortschritt der Benutzerverwaltung. Diese beiden Abrechnungsdatensätze sind über eine eindeutige Sitzungs-ID für den Anruf miteinander verbunden.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
3.0 |
04-Dec-2023
|
Rezertifizierung |
1.0 |
29-Nov-2001
|
Erstveröffentlichung |