Inleiding
Dit document beschrijft het configuratieproces om de volledige actieve configuratie voor gebruikers met lage rechten weer te geven.
Voorwaarden
Vereisten
Om dit document te kunnen begrijpen, is een basiskennis van Cisco-prioriteitsniveaus vereist. De achtergrondinformatie is voldoende om het inzicht in de vereiste prioriteitsniveaus te verklaren.
Gebruikte componenten
De componenten die gebruikt zijn voor de configuratievoorbeelden in dit document waren een ASR 1006, maar elk Cisco IOS® of Cisco IOS XE-apparaat werkt op dezelfde manier.
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Achtergrondinformatie
Dit document beschrijft de configuratiestappen hoe u de volledige actieve configuratie kunt weergeven voor gebruikers die zijn aangemeld bij de router met lage prioriteitsniveaus. Om het volgende probleem en de tijdelijke oplossing te begrijpen is het noodzakelijk om voorrangsniveaus te begrijpen. De beschikbare rechten variëren van 0 tot 15 en stellen de beheerder in staat om aan te passen welke opdrachten beschikbaar zijn op welk voorrecht niveau. Standaard zijn de drie prioriteitsniveaus op een router:
- Niveau 0 - bevat alleen basisopdrachten (uitschakelen, in- en uitschakelen, afsluiten, help en uitloggen)
- Niveau 1 - Omvat alle opdrachten die beschikbaar zijn in de opdrachtmodus User EXEC
- Niveau 15 - Omvat alle opdrachten die beschikbaar zijn in de opdrachtmodus Privileged EXEC
De resterende niveaus tussen deze minimum- en maximumniveaus zijn niet gedefinieerd tot de beheerder er opdrachten en/of gebruikers aan toewijst. Daarom kan de beheerder de gebruikers verschillende voorrechten tussen deze minimum en maximum voorrechten niveaus toewijzen om te scheiden wat verschillende gebruikers toegang hebben tot. De beheerder kan vervolgens afzonderlijke opdrachten (en diverse andere opties) toewijzen aan een individueel prioriteitsniveau om dit op dit niveau beschikbaar te maken voor elke gebruiker. Voorbeeld:
Router(config)# username user1 privilege 7 password P@ssw0rD1
Router(config)# privilege exec level 7 show access-lists
Met deze configuratie, wanneer user1 verbonden met de router zij hetshow access-lists
bevel, en/of om het even wat anders kunnen in werking stellen die op dat voorrechtniveau worden toegelaten. show running-config
Het zelfde kan echter niet worden gezegd voor enabled de opdracht, zoals later in de probleemverklaring wordt besproken.
Configuratieprobleem
Bij het configureren van verschillende toegangsniveaus naar de router voor verschillende gebruikers is het een veel gebruikte toepassing voor een netwerkbeheerder om te proberen bepaalde gebruikers toe te wijzen om alleen toegang te hebben totshow
opdrachten en geen toegang te verlenen totconfiguration
opdrachten. Dit is een eenvoudige taak voor de meesteshow
opdrachten, aangezien u toegang kunt verlenen via een eenvoudige configuratie zoals in dit geval:
Router(config)# username test_user privilege 10 password testP@ssw0rD
Router(config)# privilege exec level 10 show
Router(config)# privilege exec level 10 show running-config
test_user
Met deze voorbeeldconfiguratie kan de tweede lijn de toegang mogelijk maken tot een overvloed aan opdrachten die verband houden met de show, die normaal gesproken niet beschikbaar zijn op dit voorrangsniveau. Hetshow running-config
commando wordt echter anders behandeld dan de meeste showcommando's. Zelfs met de derde lijn van voorbeeldcode, wordt slechts weggelaten/afgekortshow running-config
getoond voor de gebruiker ondanks dat het bevel op het juiste voorrechtniveau wordt gespecificeerd.
User Access Verification
Username: test_user
Password:
Router#
Router#show privilege
Current privilege level is 10
Router#
Router#show running-config
Building configuration...
Current configuration : 121 bytes
!
! Last configuration change at 21:10:08 UTC Mon Aug 28 2017
!
boot-start-marker
boot-end-marker
!
!
!
end
Router#
Aangezien u kunt zien deze output geen configuratie toont, en zou niet aan een gebruiker nuttig zijn die informatie over de configuratie van de router probeert te verzamelen. Dit komt doordat hetshow running-config
commando alle commando's toont die de gebruiker op hun huidige niveau kan aanpassen. Dit is ontworpen als een beveiligingsconfiguratie om te voorkomen dat de gebruiker toegang heeft tot opdrachten die eerder zijn geconfigureerd vanaf hun huidige prioriteitsniveau. Dit is een probleem bij het maken van een gebruiker met toegang om opdrachten te tonen, zoalsshow running-config
een standaardopdracht voor ingenieurs is om in eerste instantie te verzamelen tijdens probleemoplossing.
Configuratieoplossing en verificatie
Als oplossing voor dit dilemma, is er een andere versie van het traditioneleshow run
bevel dat deze beperking van het bevel omzeilt.
Router(config)# show running-config view full
Router(config)# privilege exec level 10 show running-config view full
De toevoeging vanview full
show running-config
aan het commando (en vervolgens het voorrangsniveau van het commando om de gebruiker toegang te geven tot het commando) stelt de gebruiker in staat om het volledige commando te bekijken zonder weggelaten commando's.
Username: test_user
Password:
Router#
Router#show privilege
Current privilege level is 10
Router#
Router#show running-config view full
Building configuration...
Current configuration : 2664 bytes
!
! Last configuration change at 21:25:45 UTC Mon Aug 28 2017
!
version 15.4
service timestamps debug datetime msec
service timestamps log datetime msec
no platform punt-keepalive disable-kernel-core
!
hostname Router
!
boot-start-marker
boot system flash bootflash:packages.conf
boot system flash bootflash:asr1000rp1-adventerprisek9.03.13.06a.S.154-3.S6a-ext.bin
boot-end-marker
!
vrf definition Mgmt-intf
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
enable password <omitted>
!
no aaa new-model
!
no ip domain lookup
!
subscriber templating
!
multilink bundle-name authenticated
!
spanning-tree extend system-id
!
username test_user privilege 10 password 0 testP@ssw0rD
!
redundancy
mode sso
!
cdp run
!
interface GigabitEthernet0/2/0
no ip address
shutdown
negotiation auto
!
interface GigabitEthernet0/2/1
no ip address
shutdown
negotiation auto
!
interface GigabitEthernet0
vrf forwarding Mgmt-intf
ip address <omitted>
negotiation auto
cdp enable
!
ip forward-protocol nd
!
control-plane
!
!
privilege exec level 10 show running-config view full
alias exec show-running-config show running-config view full
!
line con 0
stopbits 1
line aux 0
exec-timeout 0 1
no exec
transport output none
stopbits 1
line vty 0 4
login local
!
end
Router#
Maar dit leidt dan tot de vraag, door de gebruiker toegang te verlenen tot deze versie van het bevel, leidt dit niet tot het initiële veiligheidsrisico dat probeerde te worden opgelost door het ontwerpen van een weggelaten versie?
show running-config
Als tijdelijke oplossing en om de consistentie in een beveiligd netwerkontwerp te waarborgen, kunt u een alias maken voor de gebruiker die de volledige versie van de opdracht uitvoert zonder de gebruiker toegang/kennis te geven, zoals hier wordt getoond:
Router(config)# alias exec show-running-config show running-config view full
In dit voorbeeld is hetshow running-config
de aliasnaam, en wanneer de gebruiker is ingelogd op de router, kunnen ze vervolgens deze aliasnaam invoeren in plaats van de opdracht en de verwachte uitvoer ontvangen zonder kennis van de eigenlijke opdracht die wordt uitgevoerd.
Opmerking: Vanaf 16.X versie, afhankelijk van het platform, is het ook nodig om toegang toe te voegen aan de bestanden met behulp van het commando (config)#file privilege <level>.
Conclusie
Samenvattend, dit is slechts één voorbeeld van hoe je meer controle kunt hebben wanneer je administratief op verschillende niveaus gebruikersrechten creëert. Er zijn een overvloed aan opties om verschillende voorrechten niveaus en toegang tot verschillende opdrachten te creëren, en dit is een voorbeeld van hoe te verzekeren een show alleen gebruiker nog toegang heeft tot de volledige lopende configuratie wanneer ze geen toegang tot enige configuratie commando's hebben.
Gerelateerde informatie