De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
Dit document beschrijft hoe u uw Cisco IOS®-systeemapparaten kunt beveiligen en de algehele beveiliging van uw netwerk kunt verbeteren.
Er zijn geen specifieke vereisten van toepassing op dit document.
Dit document is niet beperkt tot specifieke software- en hardware-versies.
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.
Wanneer u uw Cisco IOS-systeemapparaten beveiligt, wordt de algehele beveiliging van uw netwerk verhoogd.
De algehele beveiliging van uw netwerk is gestructureerd rondom de drie planes waarin functies van een netwerkapparaat kunnen worden ingedeeld. De drie functionele planes van een netwerk zijn de volgende: de beheerplane, besturingsplane en dataplane. Elke plane biedt verschillende functies die moeten worden beschermd. Dit document biedt een overzicht van elke opgenomen functie en verwijst naar gerelateerde documentatie.
De in dit document besproken beveiligingsfuncties bieden vaak voldoende detail zodat u de beschreven functie kunt configureren. Waar er echter geen details beschikbaar zijn, wordt de functie op een dergelijke manier uitgelegd dat u kunt evalueren of meer aandacht voor de functie nodig is. Waar mogelijk en gepast bevat dit document aanbevelingen die, indien geïmplementeerd, helpen bij het beveiligen van een netwerk.
Beveiligde netwerkactiviteiten is een belangrijk onderwerp. Hoewel het grootste deel van dit document is toegewijd aan de beveiligde configuratie van een Cisco IOS-apparaat, zorgen configuraties alleen niet voor de volledige beveiliging van een netwerk. De operationele procedures die in gebruik zijn op het netwerk, dragen net zoveel bij aan de beveiliging als de configuratie van de onderliggende apparaten.
Deze onderwerpen bevatten operationele aanbevelingen die u wordt geadviseerd te implementeren. Deze onderwerpen lichten specifieke essentiële gebieden van netwerkactiviteiten uit en zijn niet allesomvattend.
Het Cisco Product Security Incident Response Team (PSIRT) maakt en onderhoudt publicaties, ook wel PSIRT Advisories genoemd, voor beveiligingsgerelateerde problemen in Cisco-producten. De gebruikte methode voor communicatie van minder ernstige problemen is de Cisco Security Response. Beveiligingsadviezen en -reacties zijn beschikbaar op Cisco Security Advisories.
Aanvullende informatie over deze communicatiemiddelen is beschikbaar in het Cisco-beleid inzake beveiligingsincidenten.
Voor het onderhouden van een beveiligd netwerk moet u rekening houden met de Cisco-beveiligingsadviezen en -reacties die zijn uitgegeven. U moet op de hoogte zijn van een kwetsbaarheid voordat de dreiging die deze op een netwerk kan hebben, kan worden geëvalueerd. Raadpleeg Risicotriage voor aankondigingen van beveiligingsincidenten voor hulp bij dit evaluatieproces.
Het AAA-framework (verificatie, autorisatie en accounting) is essentieel voor beveiligde netwerkapparaten. Het AAA-framework biedt verificatie van beheersessies en kan ook gebruikers beperken tot specifieke, door beheerders gedefinieerde opdrachten en alle opdrachten vastleggen die door alle gebruikers worden ingevoerd. Bekijk het gedeelte Verificatie, autorisatie en accounting van dit document voor meer informatie over hoe u AAA kunt inzetten.
Als u meer wilt weten over huidige, opkomende en historische gebeurtenissen met betrekking tot beveiligingsincidenten, moet uw organisatie een uniforme strategie hebben voor gebeurtenislogboeken en correlatie. Deze uniforme strategie moet logboeken van alle netwerkapparaten inzetten en standaard- en aangepaste correlatiemogelijkheden gebruiken.
Nadat gecentraliseerde logboeken zijn geïmplementeerd, moet u een gestructureerde methode ontwikkelen voor logboekanalyse en moet u incidenten bijhouden. Aan de hand van de behoeften van uw organisatie kan deze aanpak variëren van een eenvoudige zorgvuldige beoordeling van logboekgegevens tot geavanceerde op regels gebaseerde analyse.
Bekijk het gedeelte Aanbevolen procedures voor logboekregistratie van dit document voor meer informatie over hoe u logboeken kunt implementeren op Cisco IOS-netwerkapparaten.
Meerdere protocollen worden gebruikt voor het verwerken van gevoelige netwerkbeheergegevens. Gebruik waar mogelijk beveiligde protocollen. Opties voor beveiligde protocollen omvatten het gebruik van SSH in plaats van Telnet, zodat verificatiegegevens en beheerinformatie worden versleuteld. Gebruik daarnaast Secure File Transfer Protocols (SFTP) wanneer u configuratiegegevens kopieert. Een voorbeeld is het gebruik van het Secure Copy Protocol (SCP) in plaats van FTP of TFTP.
Zie het gedeelte Interactieve beheersessies beveiligen van dit document voor meer informatie over het beveiligde beheer van Cisco IOS-apparaten.
Met NetFlow kunt u verkeersstromen op het netwerk bewaken. Oorspronkelijk was het bedoeld om verkeersinformatie te exporteren naar netwerkbeheertoepassingen, maar NetFlow kan ook worden gebruikt om stroominformatie op een router weer te geven. Met deze mogelijkheid kunt u in real-time zien welk verkeer door het netwerk beweegt. Ongeacht of stroominformatie wordt geëxporteerd naar een externe verzamelaar, is het advies dat u netwerkapparaten configureert voor NetFlow zodat dit reactief kan worden gebruikt indien nodig.
Meer informatie over deze functie is beschikbaar in de sectie Traffic Identification and Traceback van dit document en op Cisco IOS NetFlow.
Opmerking: alleen geregistreerde Cisco-gebruikers hebben toegang tot interne tools en informatie.
Configuratiebeheer is een proces waarmee configuratiewijzigingen worden voorgesteld, beoordeeld, goedgekeurd en geïmplementeerd. Binnen de context van een Cisco IOS-apparaatconfiguratie zijn twee aanvullende aspecten van configuratiebeheer essentieel: configuratie-archivering en -beveiliging.
Gebruik configuratie-archieven om wijzigingen die zijn aangebracht aan netwerkapparaten terug te draaien. In een beveiligingscontext kunnen configuratie-archieven ook worden gebruikt om te bepalen welke beveiligingswijzigingen zijn aangebracht en waar deze wijzigingen optreden. Samen met AAA-logboekgegevens kan deze informatie helpen bij de beveiligingsaudit van netwerkapparaten.
De configuratie van een Cisco IOS-apparaat bevat veel gevoelige gegevens. Gebruikersnamen, wachtwoorden en de inhoud van ACL's zijn voorbeelden van deze gevoelige informatie. De opslagplaats die wordt gebruikt om Cisco IOS-apparaatconfiguraties te archiveren, moet worden beveiligd. Onbeveiligde toegang tot deze informatie kan de beveiliging van het volledige netwerk ondermijnen.
De beheerplane bestaat uit functies die de beheerdoelen van het netwerk behalen. Hieronder vallen interactieve beheersessies die SSH gebruiken, evenals statistiekverzameling met SNMP of NetFlow. Wanneer u de beveiliging van een netwerkapparaat overweegt, is het essentieel dat de beheerplane is beveiligd. Als een beveiligingsincident de functies van de beheerplane kan ondermijnen, kunt u het netwerk mogelijk niet meer herstellen of stabiliseren.
Deze gedeelten van dit document bespreken de beveiligingsfuncties en configuraties die beschikbaar zijn in Cisco IOS-software die de beheerplane versterken.
De beheerplane wordt gebruikt voor toegang tot, configuratie en beheer van een apparaat, evenals bewaking van de activiteiten ervan en het netwerk waarop het is geïmplementeerd. De beheerplane ontvangt en stuurt verkeer voor activiteiten van deze functies. Beveilig zowel de beheerplane als de besturingsplane van een apparaat, omdat activiteiten van de besturingsplane direct invloed hebben op activiteiten van de beheerplane. Deze protocollen die worden gebruikt door de beheerplane zijn onder andere:
Er moeten stappen worden ondernomen om ervoor te zorgen dat de beheer- en besturingsplane beveiligingsincidenten doorstaan. Als een van deze planes met succes wordt aangevallen, kunnen alle planes beïnvloed zijn.
Wachtwoorden beheren de toegang tot bronnen of apparaten. Dit wordt bereikt via het wachtwoord dat wordt gebruikt voor het verifiëren van aanvragen. Wanneer een aanvraag voor toegang tot een bron of apparaat wordt ontvangen, wordt de aanvraag gecontroleerd met verificatie van het wachtwoord en identiteit, en kan de toegang worden toegekend, geweigerd of beperkt, afhankelijk van het resultaat. Als aanbevolen procedure voor beveiliging moeten wachtwoorden worden beheerd met een TACACS+- of RADIUS-verificatieserver. Een lokaal geconfigureerd wachtwoord voor toegang met bevoegdheden is echter nog steeds nodig voor het geval dat TACACS+- of RADIUS-services niet werken. Op een apparaat kan ook andere wachtwoordinformatie aanwezig zijn binnen de configuratie, zoals een NTP-sleutel, SNMP-communitystring of Routing Protocol-sleutel.
Het enable secret
commando wordt gebruikt om het wachtwoord in te stellen dat bevoorrechte administratieve toegang tot het Cisco IOS-systeem verleent. Hetenable secret
bevel moet worden gebruikt, eerder dan het oudereenable password
bevel. Het enable password
De opdracht gebruikt een zwak encryptie-algoritme.
Als er geen enable secret
is ingesteld en er een wachtwoord is ingesteld voor de consolelijn, kan het consolewachtwoord worden gebruikt om geprivilegieerde toegang te ontvangen, zelfs via een externe virtuele-partijsessie (Virtual Tty). Deze actie is bijna zeker ongewenst en het is nog een reden om te zorgen voor configuratie van de opdracht enable secret.
De service password-encryption
globale configuratieopdracht geeft de Cisco IOS-software de opdracht om de wachtwoorden, de Challenge Handshake Authentication Protocol (CHAP) geheimen en soortgelijke gegevens te versleutelen die in het configuratiebestand zijn opgeslagen. Dergelijke versleuteling is handig om te voorkomen dat voorbijgangers wachtwoorden kunnen zien, bijvoorbeeld wanneer ze over de schouder van een beheerder meekijken op het scherm. Echter, het algoritme gebruikt door de service password-encryption
opdracht is een eenvoudige Vigen re algoritme. Het algoritme is niet ontworpen om configuratiebestanden te beschermen tegen aanzienlijke analyse door zelfs enigszins geavanceerde aanvallers en mag niet voor dit doel worden gebruikt. Elk Cisco IOS-configuratiebestand dat versleutelde wachtwoorden bevat, moet worden behandeld met dezelfde zorg waarmee een leesbare lijst met diezelfde wachtwoorden wordt behandeld.
Hoewel dit zwakke coderingsalgoritme niet door de enable secret
opdracht wordt gebruikt, wordt het gebruikt door de enable password
globale configuratieopdracht en de opdracht password
lijnconfiguratie. Dit type wachtwoorden moet worden verwijderd en de enable secret
opdracht of de functie Verbeterde wachtwoordbeveiliging moet worden gebruikt.
Hetenable secret
commando en de verbeterde wachtwoordbeveiliging maken gebruik van Message Digest 5 (MD5) voor het haken van wachtwoorden. Dit algoritme heeft aanzienlijke publieke beoordeling ondergaan en staat niet bekend als omkeerbaar. Het algoritme heeft echter te maken met woordenboekaanvallen. In een woordenboekaanval probeert een aanvaller elk woord in een woordenboek of andere lijst met mogelijke wachtwoorden om een overeenkomst te vinden. Daarom moeten configuratiebestanden beveiligd worden opgeslagen en alleen worden gedeeld met vertrouwde personen.
username
Dankzij de verbeterde wachtwoordbeveiliging die in Cisco IOS-softwarerelease 12.2(8)T is geïntroduceerd, kan een beheerder MD5-hashing van wachtwoorden voor de opdracht configureren. Voordat deze functie bestond, waren er twee typen wachtwoorden: Type 0, een leesbaar wachtwoord, en Type 7, dat het algoritme van de Vigen re-codering gebruikt. De functie Verbeterde wachtwoordbeveiliging kan niet worden gebruikt met protocollen die vereisen dat het leesbare wachtwoord op te halen is, zoals CHAP.
Om een gebruikerswachtwoord te versleutelen met MD5-hashing, geeft u de opdracht voor
globale configuratie uit.username secret
!
username <name> secret <password>
!
De functie 'Blokkering voor opnieuw aanmelden met wachtwoord' is toegevoegd in Cisco IOS-softwarerelease 12.3(14)T en hiermee kunt u een lokaal gebruikersaccount blokkeren na een geconfigureerd aantal mislukte aanmeldpogingen. Wanneer een gebruiker is geblokkeerd, is het account van deze gebruiker vergrendeld totdat u dit ontgrendelt. Een geautoriseerde gebruiker waarvoor bevoegdheidsniveau 15 is geconfigureerd, kan niet worden geblokkeerd met deze functie. Houd het aantal gebruikers met bevoegdheidsniveau 15 tot een minimum beperkt.
Let op: geautoriseerde gebruikers kunnen zichzelf blokkeren voor een apparaat als het aantal mislukte aanmeldpogingen is bereikt. Bovendien kan een kwaadwillende gebruiker een DoS-voorwaarde (denial of service) maken met herhaalde pogingen voor verificatie met een geldige gebruikersnaam.
Dit voorbeeld laat zien hoe u de functie 'Blokkering voor opnieuw aanmelden met wachtwoord' kunt inschakelen:
!
aaa new-model
aaa local authentication attempts max-fail <max-attempts>
aaa authentication login default local
!
username <name> secret <password>
!
Deze functie is ook van toepassing op verificatiemethoden, zoals CHAP en Password Authentication Protocol (PAP).
In Cisco IOS-softwarerelease 12.3(14)T en hoger zorgt de functie 'Geen service wachtwoordherstel' ervoor dat niemand met consoletoegang onbeveiligde toegang krijgt tot de apparaatconfiguratie en het wachtwoord kan wissen. Ook wordt voorkomen dat kwaadwillende gebruikers de configuratieregisterwaarde wijzigen en toegang krijgen tot NVRAM.
!
no service password-recovery
!
Cisco IOS-software biedt een wachtwoordherstelprocedure die vertrouwt op toegang tot ROM Monitor Mode (ROMMON) die tijdens systeemopstart de Break-toets gebruikt. In ROMMON kan de apparaatsoftware opnieuw worden geladen om een nieuwe systeemconfiguratie met een nieuw wachtwoord te vragen.
Met de huidige wachtwoordherstelprocedure heeft iedereen met consoletoegang toegang tot het apparaat en het bijbehorende netwerk. Met de functie 'Geen service wachtwoordherstel' wordt het voltooien van de Break-toetscombinatie en het invoeren van ROMMON tijdens systeemopstart voorkomen.
Als no service password-recovery
dit op een apparaat is ingeschakeld, wordt aanbevolen om een offline exemplaar van de apparaatconfiguratie op te slaan en een oplossing voor het configuratiearchief te implementeren. Als het nodig is om het wachtwoord van een Cisco IOS-apparaat te herstellen zodra deze functie is ingeschakeld, wordt de volledige configuratie verwijderd.
Raadpleeg Voorbeeld van beveiligde ROMMON-configuratie voor meer informatie over deze functie.
Als aanbevolen procedure voor beveiliging schakelt u alle overbodige services uit. Overbodige services, en dan in het bijzonder de services die User Datagram Protocol (UDP) gebruiken, worden niet vaak gebruikt voor legitieme doelen maar kunnen worden gebruikt om DoS en andere aanvallen te starten die anders worden voorkomen door pakketfiltratie.
Schakel de TCP en UDP kleine services uit. Deze services zijn onder andere:
Hoewel misbruik van de kleine services kan worden vermeden of minder gevaarlijk kan worden gemaakt door anti-spoofing uit te voeren voor toegangslijsten, moet u de services uitschakelen op elk apparaat dat toegankelijk is in het netwerk. De kleine services zijn standaard uitgeschakeld in Cisco IOS-softwarerelease 12.0 en nieuwer. In eerdere software kunnen de no service tcp-small-servers
en no service udp-small-servers
globale configuratieopdrachten worden gegeven om ze uit te schakelen.
Aanvullende services die moeten worden uitgeschakeld als ze niet worden gebruikt, zijn onder andere:
no ip finger
globale configuratieopdracht uit om de vingerservice uit te schakelen. Cisco IOS-softwarereleases nieuwer dan 12.1(5) en 12.1(5)T schakelen deze service standaard uit.
no ip bootp server
Geef de globale configuratieopdracht uit om Bootstrap Protocol (BOOTP) uit te schakelen.Als u de interval wilt instellen, wacht de EXEC-opdrachtinterpreter op gebruikersinvoer voordat deze een sessie beëindigt, en gebruikt u de lijnconfiguratie-opdracht exec-timeout. Gebruik de opdracht exec-timeout om sessies af te melden op vty- of tty-lijnen die inactief zijn. Standaard wordt de verbinding van sessies na tien minuten inactiviteit verbroken.
!
line con 0
exec-timeout <minutes> [seconds]
line vty 0 4
exec-timeout <minutes> [seconds]
!
Met de globale configuratie-opdrachten service tcp-keepalives-in en service tcp-keepalives-out kan een apparaat TCP-keepalives verzenden voor TCP-sessies. Gebruik deze configuratie om TCP-keepalives in te schakelen op inkomende verbindingen naar het apparaat en uitgaande verbindingen van het apparaat. Zo zorgt u ervoor dat het apparaat aan de externe zijde van de verbinding nog toegankelijk is en dat half-open of verweesde verbindingen worden verwijderd van het lokale Cisco IOS-apparaat.
!
service tcp-keepalives-in
service tcp-keepalives-out
!
De beheerplane van een apparaat wordt in-band of out-of-band geopend op een fysieke of logische beheerinterface. Idealiter bestaan zowel in-band en out-of-band toegang voor elk netwerkapparaat zodat de beheerplane tijdens netwerkstoringen kan worden geopend.
Een van de meest gebruikte interfaces voor in-band toegang tot een apparaat is de logische loopback-interface. Loopback-interfaces zijn altijd actief, terwijl fysieke interfaces van status kunnen veranderen, en de interface mogelijk niet toegankelijk is. Het wordt aanbevolen om een loopback-interface toe te voegen aan elk apparaat als een beheerinterface en deze exclusief te gebruiken voor de beheerplane. Zo kan de beheerder beleidsregels toepassen in het netwerk voor de beheerplane. Zodra de loopback-interface is geconfigureerd op een apparaat, kan deze worden gebruikt door beheerplane-protocollen, zoals SSH, SNMP en syslog, om verkeer te verzenden en te ontvangen.
!
interface Loopback0
ip address 192.168.1.1 255.255.255.0
!
Met de functie 'Melding voor geheugendrempel', toegevoegd in Cisco IOS-softwarerelease 12.3(4)T, kunt u omstandigheden met weinig geheugen tot een minimum beperken op een apparaat. Deze functie gebruikt hiervoor twee methoden: Melding voor geheugendrempel en Geheugenreservering.
Melding voor geheugendrempel genereert een logboekbericht om aan te geven dat beschikbaar geheugen op een apparaat een lager niveau heeft bereikt dan de geconfigureerde drempelwaarde. Dit configuratievoorbeeld laat zien hoe u deze functie kunt inschakelen met de globale configuratie-opdracht memory free low-watermark. Zo kan een apparaat een melding genereren wanneer beschikbaar geheugen een lager niveau bereikt dan de opgegeven drempelwaarde, en opnieuw wanneer beschikbaar geheugen weer vijf procent hoger is dan de opgegeven drempelwaarde.
!
memory free low-watermark processor <threshold>
memory free low-watermark io <threshold>
!
Geheugenreservering word gebruikt zodat voldoende geheugen beschikbaar is voor essentiële meldingen. Dit configuratievoorbeeeld laat zien hoe u deze functie kunt inschakelen om ervoor te zorgen dat beheerprocessen blijven werken wanneer het geheugen van het apparaat helemaal vol is.
!
memory reserve critical <value> !
Raadpleeg Meldingen voor geheugendrempel voor meer informatie over deze functie.
De functie 'Melding voor CPU-drempel' is geïntroduceerd in Cisco IOS-softwarerelease 12.3(4)T en hiermee kunt u detecteren en een melding ontvangen wanneer de CPU-belasting op een apparaat een geconfigureerde drempelwaarde overschrijdt. Wanneer de drempelwaarde wordt overschreden, genereert en verzendt het apparaat een SNMP-trapbericht. Er worden twee methoden voor drempelwaarden voor CPU-gebruik ondersteund op Cisco IOS-software: Toenemende drempelwaarde en Afnemende drempelwaarde.
Deze voorbeeldconfiguratie laat zien hoe u Toenemende en Afnemende drempelwaarden kunt inschakelen om een meldingsbericht voor CPU-drempel te activeren:
!
snmp-server enable traps cpu threshold
!
snmp-server host <host-address> <community-string> cpu
!
process cpu threshold type <type> rising <percentage> interval <seconds>
[falling <percentage> interval <seconds>]
process cpu statistics limit entry-percentage <number> [size <seconds>]
!
Raadpleeg Melding voor CPU-drempel voor meer informatie over deze functie.
In Cisco IOS-softwarerelease 12.4(15)T en hoger kan de functie 'Geheugen reserveren voor consoletoegang' worden gebruikt om voldoende geheugen te reserveren voor consoletoegang tot een Cisco IOS-apparaat voor beheer- en probleemisolatiedoelen. Deze functie is vooral handig wanneer het apparaat nog maar weinig beschikbaar geheugen heeft. U kunt de globale configuratie-opdracht memory reserve console gebruiken om deze functie in te schakelen. Dit voorbeeld configureert een Cisco IOS-apparaat om 4096 kilobytes voor dit doel te reserveren.
!
memory reserve console 4096
!
De functie 'Geheugenlekdetector' is geïntroduceerd in Cisco IOS-softwarerelease 12.3(8)T1 en hiermee kunt u geheugenlekken op een apparaat detecteren. Geheugenlekdetector vindt lekken in alle geheugengroepen, pakketbuffers en chunks. Geheugenlekken zijn statische of dynamische toekenningen van geheugen die geen nuttig doel dienen. Deze functie is gericht op geheugentoekenningen die dynamisch zijn. U kunt de EXEC-opdracht show memory debug leaks gebruiken om te detecteren of er een geheugenlek is.
In Cisco IOS-softwarerelease 12.3(7)T en hoger kan de functie 'Buffer-overflow: detectie en correctie van redzone-beschadiging' worden ingeschakeld op een apparaat om een geheugenblok-overflow te detecteren en te corrigeren en om verder te gaan met de activiteiten.
Globale configuratie-opdrachten kunnen worden gebruikt om deze functie in te schakelen. Wanneer de opdracht show memory overflow is geconfigureerd, kan deze worden gebruikt om de detectie- en correctiestatistieken voor buffer-overflow weer te geven.
!
exception memory ignore overflow io
exception memory ignore overflow processor
!
De functie 'Verbeterde verzameling van bestand met crashinformatie' verwijdert automatisch oude bestanden met crashinformatie. Deze functie is toegevoegd in Cisco IOS-softwarerelease 12.3(11)T en zorgt ervoor dat een apparaat ruimte kan terugvragen om nieuwe bestanden met crashinformatie te maken wanneer het apparaat crasht. Via deze functie kan ook worden geconfigureerd hoeveel bestanden met crashinformatie moeten worden opgeslagen.
!
exception crashinfo maximum files <number-of-files>
!
Het Network Time Protocol (NTP) is geen gevaarlijke service, maar elke overbodige service kan een aanvalsvector vertegenwoordigen. Als NTP wordt gebruikt, is het belangrijk om expliciet een vertrouwde tijdbron te configureren en de juiste verificatie te gebruiken. Nauwkeurige en betrouwbare tijd is vereist voor syslog-doelen, zoals tijdens forensische onderzoeken van mogelijke aanvallen, evenals voor succesvolle VPN-connectiviteit wanneer deze afhankelijk is van certificaten voor Phase 1-verificatie.
Dit is een voorbeeldconfiguratie die NTP-verificatie gebruikt:
Klant:
(config)#ntp authenticate
(config)#ntp authentication-key 5 md5 ciscotime
(config)#ntp trusted-key 5
(config)#ntp server 172.16.1.5 key 5
Server:
(config)#ntp authenticate
(config)#ntp authentication-key 5 md5 ciscotime
(config)#ntp trusted-key 5
Security best practices rond de Cisco Smart Install (SMI) functie hangen af van hoe de functie in een specifieke gebruikersomgeving wordt gebruikt. Cisco maakt onderscheid tussen deze gebruiksscenario's:
In deze gedeelten wordt elk scenario in detail beschreven:
Opmerking: de opdracht vstack is geïntroduceerd in Cisco IOS Release 12.2(55)SE03.
Dit is voorbeelduitvoer van de opdracht show vstack op een Cisco Catalyst Switch met de SMI-clientfunctie uitgeschakeld:
switch# show vstack
config Role: Client (SmartInstall disabled)
Vstack Director IP address: 0.0.0.0
Schakel de SMI-clientfunctionaliteit uit nadat de zero-touch installatie is voltooid of gebruik de opdracht no vstack.
Als u de opdracht no vstack wilt inzetten in het netwerk, gebruikt u een van deze methoden:
Als u de SMI-clientfunctionaliteit later wilt inschakelen, voert u de opdracht vstack in op alle client-switches, handmatig of met een script.
In het ontwerp van een SMI-architectuur moet u ervoor zorgen dat de IP-adresruimte van de infrastructuur niet toegankelijk is voor niet-vertrouwde partijen. In releases die geen ondersteuning bieden voor de opdracht vstack zorgt u ervoor dat alleen de SMI-bestuurder TCP-connectiviteit heeft met alle SMI-clients op poort 4786.
Beheerders kunnen deze aanbevolen procedures voor beveiliging gebruiken voor SMI-implementaties op betrokken apparaten:
Dit voorbeeld toont een interface-ACL met het IP-adres van de SMI-bestuurder als 10.10.10.1 en het IP-adres van de SMI-client als 10.10.10.200:
ip access-list extended SMI_HARDENING_LIST
Permit tcp host 10.10.10.1 host 10.10.10.200 eq 4786
deny tcp any any eq 4786
permit ip any any
Deze ACL moet worden geïmplementeerd op alle IP-interfaces op alle clients. Deze kan worden gepusht door de bestuurder wanneer switches voor het eerst worden geïmplementeerd.
Voor verdere beperking van de toegang tot alle clients binnen de infrastructuur kunnen beheerders deze aanbevolen procedures voor beveiliging toepassen op andere apparaten in het netwerk:
iACL's zijn ontworpen om onbevoegde directe communicatie met netwerkapparaten te voorkomen en zijn een van de meest essentiële beveiligingscontroles die worden geïmplementeerd op netwerken. Een iACL maakt gebruik van het idee dat bijna al het netwerkverkeer door het netwerk beweegt en niet is bedoeld voor het netwerk zelf.
Een iACL wordt opgebouwd en toegepast op specifieke verbindingen van hosts of netwerken die moeten worden toegestaan op netwerkapparaten. Veelgebruikte voorbeelden van deze verbindingstypen zijn eBGP, SSH en SNMP. Nadat de vereiste verbindingen zijn toegestaan, wordt al het andere verkeer naar de infrastructuur expliciet geweigerd. Al het doorvoerverkeer dat door het netwerk gaat en niet is bedoeld voor infrastructuurapparaten, wordt dan expliciet toegestaan.
De beschermingen die worden geboden door iACL's zijn relevant voor zowel de beheer- als besturingsplane. De implementatie van iACL's kan gemakkelijker worden gemaakt met het gebruiken van onderscheidende adressen voor netwerkinfrastructuurapparaten. Raadpleeg Een beveiligingsgerichte aanpak voor IP-adressering voor meer informatie over de beveiligingsimplicaties van IP-adressen.
Deze voorbeeld-iACL-configuratie toont de structuur die moet worden gebruikt als het startpunt wanneer u het iACL-implementatieproces start:
!
ip access-list extended ACL-INFRASTRUCTURE-IN
!
!--- Permit required connections for routing protocols and
!--- network management
!
permit tcp host <trusted-ebgp-peer> host <local-ebgp-address> eq 179
permit tcp host <trusted-ebgp-peer> eq 179 host <local-ebgp-address>
permit tcp host <trusted-management-stations> any eq 22
permit udp host <trusted-netmgmt-servers> any eq 161
!
!--- Deny all other IP traffic to any network device
!
deny ip any <infrastructure-address-space> <mask>
!
!--- Permit transit traffic
!
permit ip any any
!
Wanneer de iACL is gemaakt, moet deze worden toegepast op alle interfaces die te maken krijgen met niet-infrastructuurapparaten. Hieronder vallen interfaces die verbinding maken met andere organisaties, externe toegangssegmenten, gebruikerssegmenten en segmenten in datacenters.
Raadpleeg Uw core beschermen: Access Control Lists voor infrastructuurbescherming voor meer informatie over Infrastructuur-ACL's.
Het Internet Control Message Protocol (ICMP) is ontworpen als een IP-besturingsprotocol. Zodoende kan het bericht dat hiermee wordt overgebracht een belangrijke interactie hebben met de TCP- en IP-protocollen in het algemeen. Terwijl de netwerktools ping en traceroute voor probleemoplossing ICMP gebruiken, is externe ICMP-connectiviteit zelden nodig voor de juiste werking van het netwerk.
Cisco IOS-software biedt functionaliteit om ICMP-berichten specifiek op naam of type en code te filteren. Deze voorbeeld-ACL, die moet worden gebruikt met de access control entries (ACE's) van eerdere voorbeelden, biedt de mogelijkheid voor pings van vertrouwde beheerstations en NMS-servers en blokkeert alle andere ICMP-pakketten:
!
ip access-list extended ACL-INFRASTRUCTURE-IN
!
!--- Permit ICMP Echo (ping) from trusted management stations and servers
!
permit icmp host <trusted-management-stations> any echo
permit icmp host <trusted-netmgmt-servers> any echo
!
!--- Deny all other IP traffic to any network device
!
deny ip any <infrastructure-address-space> <mask>
!
!--- Permit transit traffic
!
permit ip any any
!
Het filterproces voor gefragmenteerde IP-pakketten kan een uitdaging zijn voor beveiligingsapparaten. Dit komt doordat de Layer 4-informatie die wordt gebruikt om TCP- en UDP-pakketten te filteren, alleen aanwezig is in het initiële fragment. Cisco IOS-software gebruikt een specifieke methode om niet-initiële fragmenten te controleren aan de hand van geconfigureerde toegangslijsten. Cisco IOS-software evalueert deze niet-initiële fragmenten aan de hand van de ACL en negeert alle door Layer 4 gefilterde informatie. Dit zorgt ervoor dat niet-initiële fragmenten alleen op het Layer 3-gedeelte van elke geconfigureerde ACE wordt geëvalueerd.
In deze voorbeeldconfiguratie, als een TCP-pakket bedoeld voor 192.168.1.1 op poort 22 tijdens doorvoer wordt gefragmenteerd, wordt het initiële fragment verwijderd zoals verwacht door de tweede ACE, gebaseerd op de Layer 4-informatie binnen het pakket. Alle (niet-initiële) fragmenten die overblijven, worden echter toegestaan door de eerste ACE, volledig gebaseerd op de Layer 3-informatie in het pakket en de ACE. Dit scenario wordt weergegeven in deze configuratie:
!
ip access-list extended ACL-FRAGMENT-EXAMPLE
permit tcp any host 192.168.1.1 eq 80
deny tcp any host 192.168.1.1 eq 22
!
Vanwege de niet-intuïtieve aard van fragmentverwerking, worden IP-fragmenten vaak onbedoeld toegestaan door ACL's. Fragmentatie wordt vaak gebruikt in pogingen om detectie door intrusiedetectiesystemen te ontwijken. Om deze redenen worden IP-fragmenten vaak gebruikt in aanvallen en moeten ze expliciet worden gefilterd bovenaan elke geconfigureerde iACL. Deze voorbeeld-ACL bevat uitgebreide filtratie van IP-fragmenten. De functionaliteit van dit voorbeeld moet worden gebruikt met de functionaliteit van de vorige voorbeelden.
!
ip access-list extended ACL-INFRASTRUCTURE-IN
!
!--- Deny IP fragments using protocol-specific ACEs to aid in
!--- classification of attack traffic
!
deny tcp any any fragments
deny udp any any fragments
deny icmp any any fragments
deny ip any any fragments
!
!--- Deny all other IP traffic to any network device
!
deny ip any <infrastructure-address-space> <mask>
!
!--- Permit transit traffic
!
permit ip any any
!
Raadpleeg Access Control Lists en IP-fragmenten voor meer informatie over hoe ACL omgaat met gefragmenteerde IP-pakketten.
Cisco IOS-softwarerelease 12.3(4)T heeft ondersteuning toegevoegd voor het gebruik van ACL's om IP-pakketten te filteren, gebaseerd op de IP-opties in het pakket. IP-opties zijn een beveiligingsuitdaging voor netwerkapparaten omdat deze opties moeten worden verwerkt als uitzonderingspakketten. Dit vereist een niveau van CPU-inspanning dat niet vereist is voor typische pakketten die door het netwerk bewegen. De aanwezigheid van IP-opties binnen een pakket kan ook duiden op een poging om beveiligingscontroles op het netwerk te ondermijnen of anderszins de doorgifte-eigenschappen van een pakket te wijzigen. Om deze redenen moeten pakketten met IP-opties worden gefilterd aan de rand van het netwerk.
Dit voorbeeld moet worden gebruikt met de ACE's van eerdere voorbeelden om volledige filtratie van IP-pakketten te omvatten die IP-opties bevatten:
!
ip access-list extended ACL-INFRASTRUCTURE-IN
!
!--- Deny IP packets containing IP options
!
deny ip any any option any-options
!
!--- Deny all other IP traffic to any network device
!
deny ip any <infrastructure-address-space> <mask>
!
!--- Permit transit traffic
!
permit ip any any
!
Cisco IOS-softwarerelease 12.4(2)T heeft ACL-ondersteuning voor filteren van IP-pakketten toegevoegd, gebaseerd op de TTL-waarde (Time to Live). De TTL-waarde van een IP-datagram wordt verlaagd door elk netwerkapparaat wanneer een pakket van bron naar bestemming stroomt. Hoewel initiële waarden variëren per besturingssysteem, moet het pakket worden verwijderd wanneer de TTL van een pakket nul bereikt. Het apparaat dat de TTL verlaagt naar nul, en daarom het pakket verwijdert, moet een bericht 'ICMP-tijd overschreden' genereren en verzenden naar de bron van het pakket.
Het genereren en overdragen van deze berichten is een uitzonderingsproces. Routers kunnen deze functie uitvoeren wanneer het aantal IP-pakketten dat op het punt staat te vervallen laag is, maar als het aantal pakketten dat op het punt staat te vervallen hoog is, kan het genereren en overdragen van deze berichten alle beschikbare CPU-bronnen verbruiken. Dit duidt op een DoS-aanvalsvector. Daarom moeten apparaten worden versterkt tegen DoS-aanvallen die een hoge snelheid van IP-pakketten gebruiken die op het punt staan te vervallen.
Het wordt aanbevolen dat organisaties IP-pakketten met lage TTL-waarden aan de rand van het netwerk filteren. Volledige filtratie van pakketten met TTL-waarden die ontoereikend zijn om door het netwerk te bewegen, verminderen de dreiging van TTL-gebaseerde aanvallen.
Deze voorbeeld-ACL filtert pakketten met TTL-waarden lager dan zes. Dit biedt bescherming tegen TTL-vervalaanvallen voor netwerken van maximaal vijf hops in de breedte.
!
ip access-list extended ACL-INFRASTRUCTURE-IN
!
!--- Deny IP packets with TTL values insufficient to traverse the network
!
deny ip any any ttl lt 6
!
!--- Deny all other IP traffic to any network device
!
deny ip any <infrastructure-address-space> <mask>
!
!--- Permit transit traffic
!
permit ip any any
!
Opmerking: sommige protocollen maken legitiem gebruik van pakketten met lage TTL-waarden. eBGP is zo'n protocol. Raadpleeg Identificatie en beperking van TTL-vervalaanvallen voor meer informatie over het beperken van op TTL-verval gebaseerde aanvallen.
Beheersessies voor apparaten bieden de mogelijkheid om informatie over een apparaat en de bijbehorende activiteiten te bekijken en te verzamelen. Als deze informatie openbaar wordt gemaakt aan een kwaadwillende gebruiker, kan het apparaat het doel worden van een aanval, gehackt worden en worden gebruikt om aanvullende aanvallen uit te voeren. Iedereen met bevoegde toegang tot een apparaat heeft de mogelijkheid voor volledige beheerderscontrole over dat apparaat. Het is van het grootste belang voor beveiligde beheersessies dat openbaarmaking van informatie en onbevoegde toegang wordt voorkomen.
In Cisco IOS-softwarerelease 12.4(6)T en hoger kan een beheerder met de functie MPP (Management Plane Protection) beperkingen opleggen aan het verschillende verkeer van interfacebeheer dat door een apparaat wordt ontvangen. Zo heeft de beheerder meer controle over een apparaat en over hoe toegang wordt verkregen tot het apparaat.
Dit voorbeeld toont hoe de MPP moet worden ingeschakeld voor SSH en HTTPS op de GigabitEthernet0/1-interface:
!
control-plane host
management-interface GigabitEthernet 0/1 allow ssh https
!
Raadpleeg Bescherming van beheerplane voor meer informatie over MPP.
Opmerking: MPP biedt geen ondersteuning voor IPv6 en is beperkt tot het IPv4-invoerpad. Omdat IPv6 niet wordt gefilterd, gebruikt u CoPP in gecombineerde IPv4/IPv6-omgevingen.
Control Plane Protection (CPPr) bouwt voort op de functionaliteit van Control Plane Policing om vliegtuigverkeer dat is bestemd voor de routeprocessor van het Cisco IOS-apparaat te beperken en te bewaken. CCPr is toegevoegd in Cisco IOS-softwarerelease 12.4(4)T en verdeelt de besturingsplane in afzonderlijke planecategorieën, bekend als subinterfaces. Er bestaan drie subinterfaces voor besturingsplane: Host, Transit en CEF-uitzondering. Bovendien bevat CPPr deze beschermingsfuncties voor besturingsplanes:
CPPr zorgt ervoor dat een beheerder verkeer dat naar een apparaat wordt verzonden voor beheerdoelen kan classificeren, er beleid op kan uitvoeren en het kan beperken met de host-subinterface. Voorbeelden van pakketten geclassificeerd voor de categorie host-subinterface omvatten beheerverkeer, zoals SSH of Telnet- en routeringsprotocollen.
Opmerking: CPPr biedt geen ondersteuning voor IPv6 en is beperkt tot het IPv4-invoerpad.
Raadpleeg Control Plane Protection Feature Guide - 12.4T en Inzicht in bescherming van besturingsplane voor meer informatie over de Cisco CPPr-functie.
Informatie kan openbaar worden gemaakt in een interactieve beheersessie, en daarom moet dit verkeer worden versleuteld zodat een kwaadwillende gebruiker geen toegang krijgt tot de overgedragen gegevens. Verkeersversleuteling zorgt voor een beveiligde externe toegangsverbinding met het apparaat. Als het verkeer voor een beheersessie via het netwerk in leesbare tekst wordt verzonden, kan een aanvaller gevoelige informatie over het apparaat en het netwerk verkrijgen.
Een beheerder kan een versleutelde en beveiligde verbinding voor extern toegangsbeheer met een apparaat tot stand brengen met de functies SSH of HTTPS (Secure Hypertext Transfer Protocol). Cisco IOS-software ondersteunt SSH-versie 1.0 (SSHv1), SSH-versie 2.0 (SSHv2) en HTTPS die Secure Sockets Layer (SSL) en Transport Layer Security (TLS) gebruikt voor verificatie en dataversleuteling. SSHv1 en SSHv2 zijn niet compatibel. SSHv1 is onzeker en niet gestandaardiseerd, dus wordt het niet aanbevolen om te gebruiken als SSHv2 een optie is.
Cisco IOS-software ondersteunt ook het Secure Copy Protocol (SCP), waarmee een versleutelde en beveiligde verbinding met kopie-apparaatconfiguraties of software-installatiekopieën mogelijk is. SCP vertrouwt op SSH. Deze voorbeeldconfiguratie maakt SSH mogelijk op een Cisco IOS-apparaat:
!
ip domain-name example.com
!
crypto key generate rsa modulus 2048
!
ip ssh time-out 60
ip ssh authentication-retries 3
ip ssh source-interface GigabitEthernet 0/1
!
line vty 0 4
transport input ssh
!
Dit configuratievoorbeeld maakt SCP-services mogelijk:
!
ip scp server enable
!
Dit configuratievoorbeeld is voor HTTPS-services:
!
crypto key generate rsa modulus 2048
!
ip http secure-server
!
Raadpleeg Secure Shell configureren op routers en switches met Cisco IOS en Veelgestelde vragen over Secure Shell (SSH) voor meer informatie over de SSH-functie van de Cisco IOS-software.
Met de functie SSHv2-ondersteuning, geïntroduceerd in Cisco IOS-softwarerelease 12.3(4)T kan een gebruiker SSHv2 configureren. (SSHv1-ondersteuning is geïmplementeerd in een eerdere release van Cisco IOS-software.) SSH wordt uitgevoerd bovenop een betrouwbare transportlaag en biedt sterke verificatie- en versleutelingsmogelijkheden. Het enige betrouwbare transport gedefinieerd voor SSH is TCP. SSH biedt een manier voor veilige toegang tot opdrachten en om de opdrachten veilig uit te voeren op een andere computer of een ander apparaat via een netwerk. De SCP-functie (Secure Copy Protocol) die getunneld is over SSH zorgt voor de beveiligde overdracht van bestanden.
Als de opdracht ip ssh version 2 niet expliciet is geconfigureerd, schakelt Cisco IOS SSH-versie 1.99 in. SSH-versie 1.99 zorgt voor zowel SSHv1- als SSHv2-verbindingen. SSHv1 wordt beschouwd als onzeker en kan nadelige effecten hebben voor het systeem. Als SSH is ingeschakeld, wordt aanbevolen om SSHv1 uit te schakelen met behulp van de opdracht ip ssh version 2.
Deze voorbeeldconfiguratie schakelt SSHv2 (met SSHv1 uitgeschakeld) in op een Cisco IOS-apparaat:
!
hostname router
!
ip domain-name example.com
!
crypto key generate rsa modulus 2048
!
ip ssh time-out 60
ip ssh authentication-retries 3
ip ssh source-interface GigabitEthernet 0/1
!
ip ssh version 2
!
line vty 0 4
transport input ssh
!
Raadpleeg Ondersteuning voor Secure Shell versie 2 voor meer informatie over het gebruik van SSHv2.
Cisco IOS SSHv2 ondersteunt toetsenbord-interactieve en wachtwoordgebaseerde verificatiemethoden. De functie 'SSHv2-verbeteringen voor RSA-sleutels' ondersteunt ook op RSA gebaseerde openbare sleutelverificatie voor de client en server.
Voor gebruikersverificatie gebruikt op RSA gebaseerde gebruikersverificatie een privé/openbaar sleutelpaar gekoppeld aan elke gebruiker voor verificatie. De gebruiker moet een privé/openbaar sleutelpaar genereren en een openbare sleutel configureren op de Cisco IOS SSH-server om de verificatie te voltooien.
Een SSH-gebruiker die probeert de aanmeldgegevens in te stellen biedt een versleutelde handtekening met de privésleutel. De versleutelde handtekening en de openbare sleutel van de gebruiker worden ter verificatie verzonden naar de SSH-server. De SSH-server berekent een hash over de openbare sleutel die door de gebruiker is verstrekt. De hash wordt gebruikt om te bepalen of de server een invoer heeft die overeenkomt. Als een overeenkomst is gevonden, wordt een op RSA gebaseerde berichtverificatie uitgevoerd met de openbare sleutel. De gebruiker wordt dus geverifieerd of de toegang wordt geweigerd op basis van de versleutelde handtekening.
Voor serververificatie moet de Cisco IOS SSH-client een hostsleutel toewijzen voor elke server. Wanneer de client probeert een SSH-sessie met een server op te stellen, ontvangt deze de handtekening van de server als onderdeel van het bericht voor sleuteluitwisseling. Als de controlevlag voor strikte hostsleutel is ingeschakeld op de client, controleert de client of deze de hostsleutelinvoer heeft die overeenkomt met de eerder geconfigureerde server. Als een overeenkomst wordt gevonden, probeert de client de handtekening te valideren met behulp van de serverhostsleutel. Als de server is geverifieerd, wordt doorgegaan met het tot stand brengen van de sessie; anders wordt deze beëindigd en wordt een bericht Serververificatie mislukt weergegeven.
Deze voorbeeldconfiguratie maakt het gebruik van RSA-sleutels met SSHv2 mogelijk op een Cisco IOS-apparaat:
!
! Configure a hostname for the device
!
hostname router
!
! Configure a domain name
!
ip domain-name cisco.com
!
! Specify the name of the RSA key pair (in this case, "sshkeys") to use for SSH
!
ip ssh rsa keypair-name sshkeys
!
! Enable the SSH server for local and remote authentication on the router using
! the "crypto key generate" command
! For SSH version 2, the modulus size must be at least 768 bits
!
crypto key generate rsa usage-keys label sshkeys modulus 2048
!
! Configure an ssh timeout (in seconds)
!
! The following enables a timeout of 120 seconds for SSH connections
!
ip ssh time-out 120
!
! Configure a limit of five (5) authentication retries
!
ip ssh authentication-retries 5
!
! Configure SSH version 2
!
ip ssh version 2
!
Raadpleeg Ondersteuning voor Secure Shell versie 2 voor RSA-sleutels voor meer informatie over het gebruik van RSA-sleutels met SSHv2.
Deze voorbeeldconfiguratie zorgt ervoor dat de Cisco IOS SSH-server op RSA gebaseerde gebruikersverificatie kan uitvoeren. De gebruikersverificatie lukt als de openbare RSA-sleutel die is opgeslagen op de server, wordt geverifieerd met het openbare of privé sleutelpaar dat is opgeslagen op de client.
!
! Configure a hostname for the device
!
hostname router
!
! Configure a domain name
!
ip domain-name cisco.com
!
! Generate RSA key pairs using a modulus of 2048 bits
!
crypto key generate rsa modulus 2048
!
! Configure SSH-RSA keys for user and server authentication on the SSH server
!
ip ssh pubkey-chain
!
! Configure the SSH username
!
username ssh-user
!
! Specify the RSA public key of the remote peer
!
! You must then configure either the key-string command
! (followed by the RSA public key of the remote peer) or the
! key-hash command (followed by the SSH key type and version.)
!
Raadpleeg De Cisco IOS SSH-server configureren om op RSA gebaseerde gebruikersverificatie uit te voeren voor meer informatie over het gebruik van RSA-sleutels met SSHv2.
Deze voorbeeldconfiguratie zorgt ervoor dat de Cisco IOS SSH-client op RSA gebaseerde serververificatie kan uitvoeren.
!
!
hostname router
!
ip domain-name cisco.c
!
! Generate RSA key pairs
!
crypto key generate rsa
!
! Configure SSH-RSA keys for user and server authentication on the SSH server
!
ip ssh pubkey-chain
!
! Enable the SSH server for public-key authentication on the router
!
server SSH-server-name
!
! Specify the RSA public-key of the remote peer
!
! You must then configure either the key-string command
! (followed by the RSA public key of the remote peer) or the
! key-hash <key-type> <key-name> command (followed by the SSH key
! type and version.)
!
! Ensure that server authentication takes place - The connection will be
! terminated on a failure
!
ip ssh stricthostkeycheck
!
Raadpleeg De Cisco IOS SSH-client configureren om op RSA gebaseerde serververificatie uit te voeren voor meer informatie over het gebruik van RSA-sleutels met SSHv2.
In Cisco IOS-apparaten zijn console- en AUX-poorten (auxiliary-poorten) asynchrone lijnen die kunnen worden gebruikt voor lokale en externe toegang tot een apparaat. Let op: consolepoorten op Cisco IOS-apparaten hebben speciale bevoegdheden. Deze bevoegdheden zorgen er met name voor dat een beheerder de wachtwoordherstelprocedure kan uitvoeren. Voor het uitvoeren van wachtwoordherstel heeft een niet-geverifieerde aanvaller toegang nodig tot de consolepoort en moet deze de mogelijkheid hebben om stroom naar het apparaat te onderbreken of om ervoor te zorgen dat het apparaat vastloopt.
Elke methode die wordt gebruikt voor toegang tot de consolepoort van een apparaat, moet worden beveiligd op een dergelijke manier die gelijk is aan de beveiliging die wordt afgedwongen voor bevoegde toegang tot een apparaat. Methoden die worden gebruikt voor beveiligde toegang moeten het gebruik van AAA, exec-timeout en modem-wachtwoorden (als een modem is aangesloten op de console) bevatten.
Als wachtwoordherstel niet is vereist, kan een beheerder de mogelijkheid om de wachtwoordherstelprocedure uit te voeren verwijderen via de globale configuratie-opdracht no service password-recovery; zodra de opdracht no service password-recovery is ingeschakeld, kan een beheerder echter geen wachtwoordherstel meer uitvoeren op een apparaat.
In de meeste gevallen moet de AUX-poort van het apparaat worden uitgeschakeld om onbevoegde toegang te voorkomen. Een AUX-poort kan worden uitgeschakeld met deze opdrachten:
!
line aux 0
transport input none
transport output none
no exec
exec-timeout 0 1
no password
!
Interactieve beheersessies in Cisco IOS-software gebruiken een tty of virtual tty (vty). Een tty is een lokale asynchrone lijn waaraan een terminal kan worden verbonden voor lokale toegang tot het apparaat of tot een modem voor inbeltoegang tot een apparaat. Let op: tty's kunnen worden gebruikt voor verbindingen met consolepoorten van andere apparaten. Deze functie zorgt ervoor dat een apparaat met tty-lijnen kan handelen als een consoleserver waarop verbindingen tot stand kunnen worden gebracht in het netwerk met de consolepoorten van apparaten die zijn verbonden met de tty-lijnen. De tty-lijnen voor deze omgekeerde verbindingen over het netwerk moeten ook worden beheerd.
Een vty-lijn wordt gebruikt voor alle andere externe netwerkverbindingen die worden ondersteund door het apparaat, ongeacht protocol (SSH, SCP of Telnet zijn voorbeelden). De juiste besturingen moeten worden afgedwongen op zowel de vty- als de tty-lijnen om ervoor te zorgen dat toegang kan worden verkregen tot een apparaat via een lokale of externe beheersessie. Cisco IOS-apparaten hebben een beperkt aantal vty-lijnen; het aantal beschikbare lijnen kan worden bepaald met de EXEC-opdracht show line. Wanneer alle vty-lijnen in gebruik zijn, kunnen geen nieuwe beheersessies tot stand worden gebracht, waardoor een DoS-voorwaarde voor toegang tot het apparaat kan worden opgesteld.
De eenvoudigste toegangscontrole tot een vty of tty van een apparaat is via het gebruik van verificatie op alle lijnen, ongeacht de apparaatlocatie op het netwerk. Dit is essentieel voor vty-lijnen omdat ze toegankelijk zijn via het netwerk. Een tty-lijn die is aangesloten op een modem dat wordt gebruikt voor externe toegang tot het apparaat, of een tty-lijn die is aangesloten op de consolepoort van andere apparaten is ook toegankelijk via het netwerk. Andere vormen van vty- en tty-toegangscontroles kunnen worden afgedwongen met de configuratie-opdrachten transport input of access-class, met het gebruik van de functies CoPP en CPPr, of als u toegangslijsten toepast op interfaces op het apparaat.
Verificatie kan worden afgedwongen via het gebruik van AAA. Dit is de aanbevolen methode voor geverifieerde toegang tot een apparaat, met het gebruik van de lokale gebruikersdatabase, of door eenvoudige wachtwoordverificatie direct geconfigureerd op de vty- of tty-lijn.
De opdracht exec-timeout moet worden gebruikt om sessies af te melden op vty- of tty-lijnen die inactief zijn. De opdracht service tcp-keepalives-in moet ook worden gebruikt om TCP-keepalives in te schakelen op inkomende verbindingen naar het apparaat. Zo zorgt u ervoor dat het apparaat aan de externe zijde van de verbinding nog toegankelijk is en dat half-open of verweesde verbindingen worden verwijderd van het lokale Cisco IOS-apparaat.
Configureer een vty en tty om alleen versleutelde en beveiligde verbindingen via extern toegangsbeheer naar het apparaat te accepteren of via het apparaat als het wordt gebruikt als een consoleserver. In dit gedeelte worden tty's besproken omdat dergelijke lijnen kunnen worden aangesloten op consolepoorten op andere apparaten, waarmee de tty toegankelijk is via het netwerk. Als u de openbaarmaking van informatie of onbevoegde toegang tot de gegevens die worden overgedragen tussen de beheerder en het apparaat wilt voorkomen, gebruikt u transport input ssh in plaats van leesbare protocollen zoals Telnet en rlogin. De configuratie transport input none kan worden ingeschakeld op een tty, waarmee het gebruik van de tty-lijn voor omgekeerde consoleverbindingen wordt uitgeschakeld.
Met zowel vty- als tty-lijnen kan de beheerder verbinding maken met andere apparaten. Als u het type transport dat een beheerder kan gebruiken voor uitgaande verbindingen wilt beperken, gebruikt u de lijnconfiguratie-opdracht transport output. Als uitgaande verbindingen niet nodig zijn, gebruikt u transport output none. Wanneer uitgaande verbindingen echter zijn toegestaan, dwingt u een versleutelde en beveiligde externe toegangsmethode af voor verbinding via het gebruik van transport output ssh.
Opmerking: IPSec kan worden gebruikt voor versleutelde en beveiligde externe toegangsverbindingen met een apparaat, indien ondersteund. Als u IPSec gebruikt, wordt ook aanvullende CPU-overhead toegevoegd aan het apparaat. SSH moet echter nog steeds worden afgedwongen als het transport, zelfs wanneer IPSec wordt gebruikt.
In sommige rechtsgebieden kan het onmogelijk zijn om te procederen en illegaal om kwaadwillende gebruikers te bewaken, tenzij ze ervan op de hoogte zijn gesteld dat ze geen toestemming hebben om het systeem te gebruiken. Een methode om deze melding te verstrekken is deze informatie in een bannerbericht te plaatsen dat wordt geconfigureerd met de banneraanmeldingsopdracht voor Cisco IOS-software.
Wettelijke meldingsvereisten zijn complex, verschillen per rechtsgebied en situatie en vereisen overleg met juridisch adviseurs. Zelfs binnen rechtsgebieden kunnen juridische meningen verschillen. In samenwerking met een advocaat kan een banner enkele of alle onderstaande informatie verstrekken:
Vanuit beveiligingsoogpunt (en niet vanuit juridisch oogpunt) mag een aanmeldingsbanner geen specifieke informatie bevatten over de routernaam, het routermodel, de software of het eigendom. Deze informatie kan worden misbruikt door kwaadwillende gebruikers.
Het AAA-framework (verificatie, autorisatie en accounting) is essentieel om interactieve toegang tot netwerkapparaten te beveiligen. Het AAA-framework biedt een zeer configureerbare omgeving die op maat kan worden gemaakt, op basis van de behoeften van het netwerk.
TACACS+ is een verificatieprotocol dat Cisco IOS-apparaten kunnen gebruiken voor verificatie van beheergebruikers voor een externe AAA-server. Deze beheergebruikers hebben via SSH, HTTPS, telnet of HTTP toegang tot het Cisco IOS-apparaat.
TACACS+-verificatie, of meer algemeen AAA-verificatie, biedt de mogelijkheid om afzonderlijke gebruikersaccounts te gebruiken voor elke netwerkbeheerder. Wanneer u niet afhankelijk bent van een enkel gedeeld wachtwoord, wordt de beveiliging van het netwerk verbeterd en uw verantwoordelijkheid versterkt.
RADIUS is een protocol dat in doel vergelijkbaar is met TACACS+; het versleutelt echter alleen het wachtwoord dat door het netwerk wordt verzonden. In tegenstelling tot het voorgaande versleutelt TACACS+ de volledige TCP-payload, die zowel de gebruikersnaam als het wachtwoord omvat. Gebruik daarom TACACS+ in plaats van RADIUS wanneer TACACS+ wordt ondersteund door de AAA-server. Raadpleeg Vergelijking van TACACS+ en RADIUS voor een gedetailleerdere vergelijking van deze twee protocollen.
TACACS+-verificatie kan worden ingeschakeld op een Cisco IOS-apparaat met een configuratie die lijkt op dit voorbeeld:
!
aaa new-model
aaa authentication login default group tacacs+
!
tacacs-server host <ip-address-of-tacacs-server>
tacacs-server key <key>
!
De vorige configuratie kan worden gebruikt als het startpunt voor een organisatie-specifieke AAA-verificatiesjabloon.
Een methodelijst is een opvolgingslijst die de verificatiemethoden beschrijft die moeten worden gebruikt om een gebruiker te verifiëren. Met methodelijsten kunt u een of meer te gebruiken beveiligingsprotocollen voor verificatie aangeven, en zo zorgen voor een back-upsysteem voor verificatie als de initiële methode mislukt. Cisco IOS-software gebruikt de eerste vermelde methode die een gebruiker accepteert of weigert. Opvolgende methoden worden alleen geprobeerd als eerdere methoden mislukken vanwege niet-beschikbaarheid van de server of onjuiste configuratie.
Als alle geconfigureerde TACACS+-servers onbeschikbaar worden, kan een Cisco IOS-apparaat vertrouwen op secundaire verificatieprotocollen. Typische configuraties zijn onder andere het gebruik van lokaal of inschakelen van verificatie als alle geconfigureerde TACACS+-servers onbeschikbaar zijn.
De volledige lijst van opties voor verificatie op het apparaat omvat enable, local en line. Elke optie heeft voordelen. Het gebruik van het enable secret
geheim heeft de voorkeur omdat het geheim is gehakt met een unidirectioneel algoritme dat inherent veiliger is dan het encryptie algoritme dat met de Type 7 wachtwoorden voor lijn of lokale authentificatie wordt gebruikt.
Op Cisco IOS-softwarereleases die het gebruik van geheime wachtwoorden voor lokaal gedefinieerde gebruikers ondersteunen, kan fallback op lokale verificatie echter wenselijk zijn. Dit zorgt ervoor dat een lokaal gedefinieerde gebruiker kan worden gemaakt voor een of meer netwerkbeheerders. Als TACACS+ volledig onbeschikbaar was, kan elke beheerder zijn of haar lokale gebruikersnaam en wachtwoord gebruiken. Hoewel deze actie de verantwoordelijkheid van netwerkbeheerders bij TACACS+-storingen verhoogt, wordt de beheerderslast aanzienlijk verhoogd omdat lokale gebruikersaccounts op alle netwerkapparaten moeten worden onderhouden.
Dit configuratievoorbeeld bouwt voort op het vorige TACACS+ verificatievoorbeeld om failback-verificatie te omvatten naar het wachtwoord dat lokaal met de enable secret
opdracht is geconfigureerd:
!
enable secret <password>
!
aaa new-model
aaa authentication login default group tacacs+ enable
!
tacacs-server host <ip-address-of-tacacs-server>
tacacs-server key <key>
!
Type 7-wachtwoorden zijn oorspronkelijk ontworpen voor snelle ontsleuteling van opgeslagen wachtwoorden en zijn geen beveiligde vorm van wachtwoordopslag. Er zijn veel tools beschikbaar om deze wachtwoorden heel eenvoudig te ontsleutelen. Vermijd het gebruik van Type 7-wachtwoorden, tenzij vereist door een functie die wordt gebruikt op het Cisco IOS-apparaat.
Gebruik type 9 (scrypt) wanneer mogelijk:
username <username> privilege 15 algorithm-type scrypt secret <secret>
De wachtwoorden van dit type kunnen worden verwijderd door AAA-verificatie en het gebruik van de functie Enhanced Password Security, waarmee geheime wachtwoorden kunnen worden gebruikt met gebruikers die lokaal zijn gedefinieerd door de globale username
configuratieopdracht. Als u het gebruik van Type 7-wachtwoorden niet volledig kunt voorkomen, beschouw deze wachtwoorden dan als verhuld, niet als versleuteld.
Zie het gedeelte General Management Plane Hardening voor meer informatie over het verwijderen van wachtwoorden van type 7.
Opdrachtautorisatie met TACACS+ en AAA biedt een mechanisme waarmee elke opdracht die wordt ingevoerd door een beheerdersgebruiker wordt toegestaan of geweigerd. Wanneer de gebruiker EXEC-opdrachten invoert, stuurt Cisco IOS elke opdracht naar de geconfigureerde AAA-server. De AAA-server gebruikt de geconfigureerde beleidsregels om de opdracht voor die specifieke gebruiker toe te staan of te weigeren.
Deze configuratie kan worden toegevoegd aan het vorige AAA-verificatievoorbeeld om opdrachtautorisatie te implementeren:
!
aaa authorization exec default group tacacs none
aaa authorization commands 0 default group tacacs none
aaa authorization commands 1 default group tacacs none
aaa authorization commands 15 default group tacacs none
!
Wanneer geconfigureerd stuurt AAA-opdrachtaccounting informatie over elke ingevoerde EXEC-opdracht naar de geconfigureerde TACACS+-servers. De informatie die wordt verzonden naar de TACACS+-servers omvat de uitgevoerde opdracht, de datum waarop deze is uitgevoerd en de gebruikersnaam van degene die de opdracht heeft ingevoerd. Opdrachtaccounting wordt niet ondersteund met RADIUS.
Deze voorbeeldconfiguratie schakelt AAA-opdrachtaccounting in voor EXEC-opdrachten ingevoerd op bevoegdheidsniveaus nul, één en 15. Deze configuratie bouwt verder op eerdere voorbeelden die configuratie van de TACACS-servers omvatten.
!
aaa accounting exec default start-stop group tacacs
aaa accounting commands 0 default start-stop group tacacs
aaa accounting commands 1 default start-stop group tacacs
aaa accounting commands 15 default start-stop group tacacs
!
De AAA-servers die worden ingezet in een omgeving, kunnen overbodig zijn en worden geïmplementeerd op een manier die fouten tolereert. Zo wordt ervoor gezorgd dat interactieve beheertoegang, zoals SSH, mogelijk is als een AAA-server onbeschikbaar is.
Wanneer u een overbodige AAA-serveroplossing ontwerpt of implementeert, onthoud dan deze overwegingen:
Raadpleeg De Access Control Servers implementeren voor meer informatie.
Dit gedeelte licht verschillende methoden uit die kunnen worden gebruikt om de SNMP-implementatie in Cisco IOS-apparaten te beveiligen. Het is essentieel dat SNMP op de juiste manier wordt beveiligd om de vertrouwelijkheid, integriteit en beschikbaarheid van de netwerkgegevens en de netwerkapparaten waardoor de gegevens worden overgedragen te beschermen. SNMP biedt een grote hoeveelheid informatie over de status van netwerkapparaten. Bescherm deze informatie tegen kwaadwillende gebruikers die deze gegevens willen inzetten om aanvallen tegen het netwerk uit te voeren.
Communitystrings zijn wachtwoorden die worden toegepast op een Cisco IOS-apparaat om toegang, zowel alleen-lezen als lezen-en-schrijven toegang, tot de SNMP-gegevens op het apparaat te beperken. Deze communitystrings worden, net als alle wachtwoorden, zorgvuldig gekozen om ervoor te zorgen dat ze niet onbeduidend zijn. Wijzig communitystrings regelmatig en in overeenstemming met beleidsregels voor netwerkbeveiliging. Wijzig de strings bijvoorbeeld wanneer een netwerkbeheerder van functie wijzigt of het bedrijf verlaat.
Deze configuratielijnen configureren een alleen-lezen communitystring READONLY en een lezen-en-schrijven communitystring READWRITE:
!
snmp-server community READONLY RO
snmp-server community READWRITE RW
!
Opmerking: de vorige voorbeelden van communitystrings werden gekozen om het gebruik van deze strings duidelijk uit te leggen. Voor productieomgevingen kiest u communitystrings zorgvuldig en neemt u een reeks alfabetische, numerieke en niet-alfanumerieke symbolen erin op.
Raadpleeg de Cisco IOS SNMP-opdrachtreferentie voor meer informatie over deze functie.
Naast de communitystring past u een ACL toe die SNMP-toegang verder beperkt tot een bepaalde groep bron-IP-adressen. Deze configuratie beperkt de alleen-lezen toegang van SNMP tot eindhostapparaten die zich bevinden in de adresruimte 192.168.100.0/24 en beperkt lezen-en-schrijven toegang van SNMP tot alleen het eindhostapparaat op 192.168.100.1.
Opmerking: de toegestane apparaten door deze ACL's vereisen dat de juiste communitystring toegang krijgen tot de gevraagde SNMP-informatie.
!
access-list 98 permit 192.168.100.0 0.0.0.255
access-list 99 permit 192.168.100.1
!
snmp-server community READONLY RO 98
snmp-server community READWRITE RW 99
!
Raadpleeg snmp-server community in de Cisco IOS-opdrachtreferentie voor netwerkbeheer voor meer informatie over deze functie.
Infrastructuur-ACL's (iACL's) kunnen worden geïmplementeerd om ervoor te zorgen dat alleen eindhosts met vertrouwde IP-adressen SNMP-verkeer naar een Cisco IOS-apparaat kunnen sturen. Idealiter bevat een iACL een beleid dat onbevoegde SNMP-pakketten op UDP-poort 161 weigert.
Zie het gedeelte Toegang tot het netwerk beperken met infrastructuur-ACL's van dit document voor meer informatie over het gebruik van iACL's.
SNMP-weergaven zijn een beveiligingsfunctie die toegang tot bepaalde SNMP MIB's kan toestaan of weigeren. Wanneer een weergave is gemaakt en toegepast op een communitystring met de globale configuratie-opdrachten snmp-server community community-string view, en als u MIB-gegevens opent, is uw toegang beperkt tot de toestemmingen die zijn gedefinieerd door de weergave. Gebruik indien nodig weergaven om de toegang van gebruikers van SNMP te beperken tot de gegevens die ze nodig hebben.
Dit configuratievoorbeeld beperkt SNMP-toegang met de communitystring LIMITED tot de MIB-gegevens die zich in de systeemgroep bevinden:
!
snmp-server view VIEW-SYSTEM-ONLY system include
!
snmp-server community LIMITED view VIEW-SYSTEM-ONLY RO
!
Raadpleeg SNMP-ondersteuning configureren voor meer informatie.
SNMP versie 3 (SNMPv3) wordt gedefinieerd door RFC3410, RFC3411, RFC3412, RFC3413, RFC3414 en RFC3415 en is een interoperabel op standaarden gebaseerd protocol voor netwerkbeheer. SNMPv3 biedt beveiligde toegang tot apparaten omdat dit pakketten via het netwerk verifieert en optioneel versleutelt. Als SNMPv3 wordt ondersteund, kan het worden gebruikt om een extra beveiligingslaag toe te voegen wanneer u SNMP implementeert. SNMPv3 bestaat uit drie primaire configuratie-opties:
Er moet een gemachtigde engine-ID bestaan om de SNMPv3-beveiligingsmechanismen te gebruiken (verificatie of verificatie en versleuteling) om SNMP-pakketten te verwerken; standaard wordt de engine-ID lokaal gegenereerd. show snmp engineID
De motor-ID kan met de opdracht worden weergegeven zoals in dit voorbeeld:
router#show snmp engineID
Local SNMP engineID: 80000009030000152BD35496
Remote Engine ID IP-addr Port
Opmerking: als de engine-ID wordt gewijzgd, moeten alle SNMP-gebruikersaccounts opnieuw worden geconfigureerd.
De volgende stap is het configureren van een SNMPv3-groep. Deze opdracht configureert een Cisco IOS-apparaat voor SNMPv3 met een SNMP-servergroep AUTHGROUP en schakelt alleen verificatie voor deze groep in met het trefwoord auth:
!
snmp-server group AUTHGROUP v3 auth
!
Deze opdracht configureert een Cisco IOS-apparaat voor SNMPv3 met een SNMP-servergroep PRIVGROUP en schakelt zowel verificatie als versleuteling voor deze groep in met het trefwoord priv:
!
snmp-server group PRIVGROUP v3 priv
!
Met deze opdracht wordt een SNMPv3-gebruiker snmpv3user geconfigureerd met een MD5-verificatiewachtwoord en een 3DES-authpassword
encryptiewachtwoord van privpassword
:
!
snmp-server user snmpv3user PRIVGROUP v3 auth md5 authpassword priv 3des
privpassword
!
Weet dat snmp-server user
configuratieopdrachten niet worden weergegeven in de configuratie-uitvoer van het apparaat, zoals vereist door RFC 3414. Daarom is het gebruikerswachtwoord niet zichtbaar in de configuratie. Om de gevormde gebruikers te bekijken, ga het show snmp user
bevel, zoals in dit voorbeeld in:
router#show snmp user
User name: snmpv3user
Engine ID: 80000009030000152BD35496
storage-type: nonvolatile active
Authentication Protocol: MD5
Privacy Protocol: 3DES
Group-name: PRIVGROUP
Raadpleeg SNMP-ondersteuning configureren voor meer informatie over deze functie.
De MPP-functie (Management Plane Protection) in Cisco IOS-software kan worden gebruikt voor het beveiligen van SNMP omdat het beperkt door welke interfaces SNMP-verkeer kan worden beëindigd op het apparaat. Met de MPP-functie kan een beheerder een of meer interfaces toewijzen als beheerinterfaces. Beheerverkeer mag alleen via deze beheerinterfaces op een apparaat binnenkomen. Nadat MPP is ingeschakeld, accepteren alleen toegewezen beheerinterfaces netwerkverkeer dat bestemd is voor het apparaat.
De MPP is een subset van de CPPr-functie en vereist een versie van Cisco IOS die CPPr ondersteunt. Raadpleeg Inzicht in Control Plane Protection voor meer informatie over CPPr.
In dit voorbeeld wordt MPP gebruikt om SNMP- en SSH-toegang te beperken tot alleen de FastEthernet 0/0-interface:
!
control-plane host
management-interface FastEthernet0/0 allow ssh snmp
!
Raadpleeg Functiehandleiding voor Management Plane Protection voor meer informatie.
Gebeurtenislogboeken bieden inzicht in de werking van een Cisco IOS-apparaat en het netwerk waarop dit apparaat is geïmplementeerd. Cisco IOS-software biedt verschillende flexibele opties voor logboekconfiguratie waarmee het netwerkbeheer en zichtbaarheidsdoelen van een organisatie kunnen worden bereikt.
Deze gedeelten bieden enkele aanbevolen procedures voor basislogboekfuncties waarmee een beheerder logboekfuncties juist kan inzetten, met minimale impact op de logboekfunctie op een Cisco IOS-apparaat.
Het advies is om logboekinformatie via een externe syslog-server te verzenden. Als u dit doet, kunnen netwerk- en beveiligingsgebeurtenissen op netwerkapparaten effectiever worden gecorreleerd en geaudit. Let op: syslog-berichten worden onbetrouwbaar verzonden door UDP en in leesbare tekst. Daarom kunnen alle beschermingen die een netwerk toekent aan beheerverkeer (bijvoorbeeld versleuteling of out-of-band-toegang) worden uitgebreid naar syslog-verkeer.
In dit voorbeeld wordt een Cisco IOS-apparaat geconfigureerd om logboekinformatie naar een externe syslog-server te verzenden:
!
logging host <ip-address>
!
Raadpleeg Incidenten identificeren met Firewall- en Cisco IOS-routergebeurtenissen voor meer informatie over logcorrelatie.
De functie Logboekregistratie naar lokale niet-vluchtige opslag (ATA-schijf) is geïntegreerd in Cisco IOS 12.4(15)T en oorspronkelijk geïntroduceerd in 12.0(26)S en hiermee kunnen systeemlogboekberichten worden opgeslagen op een ATA-flashstation (advanced technology attachment). Berichten die zijn opgeslagen op een ATA-schijf blijven staan nadat een router opnieuw wordt opgestart.
Deze configuratielijnen configureren 134.217.728 bytes (128 MB) aan logboekberichten naar de syslog-directory van de ATA-flash (disk0), met een opgegeven bestandsgrootte van 16.384 bytes:
logging buffered
logging persistent url disk0:/syslog size 134217728 filesize 16384
Voordat logboekberichten worden geschreven naar een bestand op de ATA-schijf, controleert Cisco IOS-software of er voldoende schijfruimte is. Als dat niet het geval is, wordt het oudste logboekbericht (bepaald op tijdstempel) verwijderd en wordt het huidige bestand opgeslagen. De bestandsnaam is log_month:day:year::time
.
Opmerking: een ATA-flashstation heeft beperkte schijfruimte en moet daarom worden onderhouden om te voorkomen dat opgeslagen gegevens worden overschreven.
Dit voorbeeld toont hoe logboekberichten van het ATA-flashstation van de router moeten worden gekopieerd naar een externe schijf op FTP-server 192.168.1.129 als onderdeel van onderhoudsprocedures:
copy disk0:/syslog ftp://myuser/mypass@192.168.1.129/syslog
Raadpleeg Logboekregistratie naar lokale niet-vluchtige opslag (ATA-schijf) voor meer informatie over deze functie.
Elk logboekbericht dat wordt gegenereerd door een Cisco IOS-apparaat krijgt een ernst toegewezen uit acht niveaus: van niveau 0, Noodgevallen, tot niveau 7, Debuggen. Tenzij specifiek vereist wordt u geadviseerd logboeken op niveau 7 te vermijden. Logboeken op niveau 7 produceren een verhoogde CPU-belasting op het apparaat. Dit kan leiden tot instabiliteit van het apparaat en het netwerk.
logging trap
Het globale niveau van het configuratiebevel wordt gebruikt om te specificeren welke logboekberichten naar verre syslog servers worden verzonden. Het opgegeven niveau geeft het laagste ernstbericht aan dat wordt verzonden. Voor gebufferde logbestanden wordt de opdracht logging buffered
Niveau gebruikt.
Dit configuratievoorbeeld beperkt logboekberichten die worden verzonden naar externe syslog-servers en de lokale logboekbuffer tot ernstniveaus 6 (informatief) tot 0 (noodgevallen):
!
logging trap 6
logging buffered 6
!
Raadpleeg Probleemoplossing, storingsbeheer en logboekregistratie voor meer informatie.
Met Cisco IOS-software is het mogelijk om logberichten naar monitorsessies te verzenden, die interactieve beheersessies zijn waarin de EXEC-opdracht terminal monitor
is gegenereerd, en naar de console. Dit kan echter de CPU-belasting van een Cisco IOS-apparaat verhogen en wordt daarom niet aanbevolen. In plaats daarvan, verzend logboekinformatie naar de lokale logboekbuffer die met het show logging
bevel kan worden bekeken.
Gebruik de globale configuratiebevelen no logging console
en no logging monitor
om logboeken aan de console en monitorzittingen onbruikbaar te maken. Dit configuratievoorbeeld toont het gebruik van deze opdrachten:
!
no logging console
no logging monitor
!
Raadpleeg Referentie Opdracht Cisco IOS-netwerkbeheer voor meer informatie over globale configuratieopdrachten.
Cisco IOS-software ondersteunt het gebruik van een lokale logboekbuffer zodat een beheerder lokaal gegenereerde logboekberichten kan bekijken. Het gebruik van gebufferde logboeken wordt sterk aanbevolen in plaats van logboeken naar de console of bewakingssessies.
Er zijn twee relevante configuratie-opties wanneer u gebufferde logboeken configureert: de logboekbuffergrootte en de berichternstniveaus opgeslagen in de buffer. De grootte van het logging buffer
bestand wordt geconfigureerd met de globale configuratie-opdracht logging buffered size.
De laagste ernst in de buffer wordt geconfigureerd met de opdracht log buffered Severity. Een beheerder kan de inhoud van de logbuffer bekijken via de opdracht show logging
EXEC.
Dit configuratievoorbeeld bevat de configuratie van een logboekbuffer van 16.384 bytes, evenals ernstniveau 6 (informatief). Dit geeft aan dat berichten op niveau 0 (noodgevallen) tot niveau 6 (informatief) worden opgeslagen:
!
logging buffered 16384 6
!
Raadpleeg Referentie Opdracht Cisco IOS-netwerkbeheer voor meer informatie over gebufferde logboeken.
Voor het bieden van een hoger consistentieniveau wanneer u logboekberichten verzamelt en bekijkt, wordt geadviseerd dat u een broninterface voor logboekregistratie statisch configureert. Dit wordt verwezenlijkt door het logging source-interface
interfacebevel. Een statisch geconfigureerde broninterface voor logboekregistratie zorgt ervoor dat hetzelfde IP-adres wordt weergegeven in alle logboekberichten vanuit een afzonderlijk Cisco IOS-apparaat. Voor meer stabiliteit gebruikt u een loopback-interface als de logboekbron.
Dit configuratievoorbeeld illustreert het gebruik van het logging source-interface
interface globale configuratiebevel om het IP adres van loopback 0 interface te specificeren dat voor alle logboekberichten moet worden gebruikt:
!
logging source-interface Loopback 0
!
Raadpleeg de Cisco IOS-opdrachtreferentie voor meer informatie.
De configuratie van logboektijdstempels helpt gebeurtenissen in netwerkapparaten te correleren. Het is belangrijk om een juiste en consistente configuratie voor logboektijdstempels te implementeren zodat u logboekgegevens kunt correleren. Configureer logboektijdstempels met de datum en tijd, in milliseconden nauwkeurig, en met de tijdzone die op het apparaat wordt gebruikt.
Dit voorbeeld bevat de configuratie van logboektijdstempels, in milliseconden nauwkeurig, binnen de zone Coordinated Universal Time (UTC):
!
service timestamps log datetime msec show-timezone
!
Als u liever geen tijden met betrekking tot UTC vastlegt, kunt u een specifieke tijdzone configureren en instellen dat informatie aanwezig moet zijn in gegenereerde logboekberichten. Dit voorbeelt toont een apparaatconfiguratie voor de zone Pacific Standard Time (PST):
!
clock timezone PST -8
service timestamps log datetime msec localtime show-timezone
!
Cisco IOS-software bevat verschillende functies om een vorm van configuratiebeheer mogelijk te maken op een Cisco IOS-apparaat. Dergelijke functies omvatten functionaliteit om configuraties te archiveren en om de configuratie terug te draaien naar een vorige versie, evenals om een gedetailleerd wijzigingslogboek voor configuraties te maken.
In Cisco IOS-softwarerelease 12.3(7)T en hoger kunt u met de functies 'Configuraties vervangen' en 'Configuratie terugdraaien' de Cisco IOS-apparaatconfiguratie archiveren op het apparaat. De configuraties in dit archief, die handmatig of automatisch worden opgeslagen, kunnen worden gebruikt om de huidige actieve configuratie te vervangen door de opdracht configure replace
bestandsnaam. Dit in tegenstelling tot de copy
filename running-config
opdracht. Het configure replace
filename bevel vervangt de lopende configuratie, in tegenstelling tot de fusie die door het copy
bevel wordt uitgevoerd.
Er wordt geadviseerd om deze functie in te schakelen op alle Cisco IOS-apparaten op het netwerk. Als deze optie is ingeschakeld, kan een beheerder ervoor zorgen dat de huidige actieve configuratie met de archive config EXEC
opdracht wordt toegevoegd aan het archief. De gearchiveerde configuraties kunnen met de show archive EXEC
opdracht worden bekeken.
Dit voorbeeld toont de configuratie voor automatisch configuratie-archief. Dit voorbeeld instrueert het Cisco IOS-apparaat om gearchiveerde configuraties op te slaan als bestanden met de naam archived-config-N op de schijf0: bestandssysteem, om maximaal 14 back-ups te behouden en om één keer per dag (1440 minuten) te archiveren wanneer een beheerder de opdracht write memory EXEC
uitgeeft.
!
archive
path disk0:archived-config
maximum 14
time-period 1440
write-memory
!
Hoewel de configuratie-archieffunctie maximaal 14 back-upconfiguraties kan opslaan, wordt u aangeraden om de ruimtevereisten in overweging te nemen voordat u de maximum
opdracht gebruikt.
De functie 'Exclusieve configuratiewijzigingstoegang' is toegevoegd aan Cisco IOS-softwarerelease 12.3(14)T en deze zorgt ervoor dat slechts één beheerder configuratiewijzigingen aanbrengt aan een Cisco IOS-apparaat. Met deze functie wordt de ongewenste invloed van gelijktijdige wijzigingen die worden aangebracht aan gerelateerde configuratiecomponenten weggenomen. Deze optie is geconfigureerd met de globale configuratie commando
modus en werkt in een van de twee modi: auto of handleiding. In de automatische modus wordt de configuratie automatisch vergrendeld wanneer een beheerder de configuration mode exclusive
configure terminal EXEC
opdracht geeft. configure terminal lock
In handmatige modus gebruikt de beheerder de opdracht om de configuratie te vergrendelen wanneer deze de configuratiemodus invoert.
Dit voorbeeld toont de configuratie van deze functie voor automatische configuratievergrendeling:
!
configuration mode exclusive auto
!
De functie 'Veerkrachtige configuratie' is toegevoegd in Cisco IOS-softwarerelease 12.3(8)T en maakt het mogelijk om een exemplaar van de Cisco IOS-software-installatiekopie veilig op te slaan die momenteel wordt gebruikt door een Cisco IOS-apparaat. Wanneer deze functie is ingeschakeld, is het niet mogelijk om deze back-upbestanden aan te passen of te verwijderen. U wordt geadviseerd om deze functie in te schakelen om zowel onbedoelde als kwaadwillende pogingen om deze bestanden te verwijderen, te voorkomen.
!
secure boot-image
secure boot-config!
Zodra deze functie is ingeschakeld, is het mogelijk om een verwijderde configuratie of Cisco IOS-software-installatiekopie te herstellen. De huidige status van deze functie kan met de show secure boot EXEC
opdracht worden weergegeven.
De functie 'Digitaal ondertekende Cisco-software' is toegevoegd in Cisco IOS-softwarerelease 15.0(1)M voor de Cisco-routers uit de 1900-, 2900- en 3900-serie en faciliteert het gebruik van Cisco IOS-software die digitaal is ondertekend en dus ook wordt vertrouwd, met het gebruik van beveiligde asymmetrische (openbare sleutel) cryptografie.
Een digitaal ondertekende installatiekopie bevat een versleutelde (met een privésleutel) hash van zichzelf. Bij controle ontsleutelt het apparaat de hash met de gekoppelde openbare sleutel uit de sleutels die aanwezig zijn in de key store en berekent het ook de eigen hash van de installatiekopie. Als de ontsleutelde hash overeenkomt met de berekende installatiekopie-hash, is er niet geknoeid met de installatiekopie en kan deze worden vertrouwd.
Digitaal ondertekende Cisco-softwaresleutels worden geïdentificeerd door het type en de versie van de sleutel. Een sleutel kan een productie-, rollover- of speciaal sleuteltype zijn. Productie- en speciale sleuteltypen hebben een bijbehorende sleutelversie die alfabetisch oploopt wanneer de sleutel wordt ingetrokken en vervangen. ROMMON en reguliere Cisco IOS-installatiekopieën worden beide ondertekend met een speciale sleutel of productiesleutel wanneer u de functie 'Digitaal ondertekende Cisco-software' gebruikt. De ROMMON-installatiekopie kan worden geüpgraded en moet worden ondertekend met dezelfde sleutel als de productie- of speciale installatiekopie die is geladen.
Deze opdracht verifieert de integriteit van installatiekopie c3900-universalk9-mz.SSA in flash met de sleutels in de key store van het apparaat:
show software authenticity file flash0:c3900-universalk9-mz.SSA
De functie 'Digitaal ondertekende Cisco-software' is ook geïntegreerd in Cisco IOS XE Release 3.1.0.SG voor de Cisco Catalyst-switches uit de 4500 E-serie.
Raadpleeg Digitaal ondertekende Cisco-software voor meer informatie over deze functie.
In Cisco IOS-softwarerelease 15.1(1)T en hoger is Sleutelvervanging voor digitaal ondertekende Cisco-software geïntroduceerd. Sleutelvervanging en -intrekking vervangt en verwijdert een sleutel die wordt gebruikt voor een controle van Digitaal ondertekende Cisco-software vanuit de platformsleutelopslag. Alleen productie- en speciale sleutels kunnen worden ingetrokken wanneer een sleutel is gehackt.
Een nieuwe (productie- of speciale) sleutel voor een (productie- of speciale) installatiekopie wordt geleverd in een (productie- of intrekkings-) installatiekopie die wordt gebruikt om de vorige speciale of productiesleutel in te trekken. De integriteit van de intrekkingsinstallatiekopie wordt gecontroleerd met een rollover-sleutel die op het platform is geïntegreerd. Een rollover-sleutel wordt niet gewijzigd. Wanneer u een productiesleutel intrekt, wordt nadat de intrekkingsinstallatiekopie is geladen de sleutel die erop aanwezig is, toegevoegd aan de key store en de bijbehorende oude sleutel kan worden ingetrokken. Dit zolang als de ROMMON-installatiekopie wordt geüpgraded en de nieuwe productie-installatiekopie wordt opgestart. Wanneer u een speciale sleutel intrekt, wordt een productie-installatiekopie geladen. Deze installatiekopie voegt de nieuwe speciale sleutel toe en kan de oude speciale sleutel intrekken. Nadat u ROMMON hebt geüpgraded, kan de nieuwe speciale installatiekopie worden opgestart.
Dit voorbeeld beschrijft het intrekken van een speciale sleutel. Deze opdrachten voegen de nieuwe speciale sleutel toe aan de key store vanuit de huidige productie-installatiekopie, kopiëren een nieuwe ROMMON-installatiekopie (C3900_rom-monitor.srec.SSB) naar het opslaggebied (usbflash0:), upgraden het ROMMON-bestand en trekken de oude speciale sleutel in:
software authenticity key add special
copy tftp://192.168.1.129/C3900_rom-monitor.srec.SSB usbflash0:
upgrade rom-monitor file usbflash0:C3900_PRIV_RM2.srec.SSB
software authenticity key revoke special
Een nieuwe speciale installatiekopie (c3900-universalk9-mz.SSB) kan vervolgens naar de flash worden gekopieerd om te worden geladen en de handtekening van de installatiekopie wordt gecontroleerd aan de hand van de zojuist toegevoegde speciale sleutel (.SSB):
copy /verify tftp://192.168.1.129/c3900-universalk9-mz.SSB flash:
Intrekken en vervangen van sleutels wordt niet ondersteund op Catalyst-switches van de 4500 E-serie waarop Cisco IOS XE-software wordt uitgevoerd, hoewel deze switches wel ondersteuning bieden voor de functie 'Digitaal ondertekende Cisco-software'.
Raadpleeg het gedeelte Intrekken en vervangen van sleutels voor digitaal ondertekende Cisco-software van de handleiding Digitaal ondertekende Cisco-software voor meer informatie over deze functie.
De functie 'Melding en logboekregistratie van configuratiewijziging' is toegevoegd in Cisco IOS-softwarerelease 12.3(4)T en maakt het mogelijk om de configuratiewijzigingen die zijn aangebracht aan een Cisco IOS-apparaat vast te leggen. Het logboek wordt onderhouden op het Cisco IOS-apparaat en bevat de gebruikersinformatie van de persoon die de wijziging heeft aangebracht, de ingevoerde configuratie-opdracht en de tijd waarop de wijziging is aangebracht. logging enable
Deze functionaliteit is ingeschakeld met de opdracht configuratie logger configuratie mode van de configuratiewijziging. De optionele opdrachten hidekeys
en logging size
vermeldingen worden gebruikt om de standaardconfiguratie te verbeteren, omdat logbestanden met wachtwoordgegevens worden voorkomen en de lengte van het wijzigingslogbestand wordt vergroot.
U wordt aangeraden deze functionaliteit in te schakelen zodat eenvoudiger inzicht kan worden gekregen in de configuratiewijzigingsgeschiedenis van een Cisco IOS-apparaat. Bovendien, wordt u geadviseerd om het notify syslog
configuratiebevel te gebruiken om de generatie van syslog berichten toe te laten wanneer een configuratieverandering wordt aangebracht.
!
archive
log config
logging enable
logging size 200
hidekeys
notify syslog
!
show archive log config all
Nadat de optie Melding van wijzigingen in configuratie en vastlegging is ingeschakeld, kan de geprivilegieerde opdracht EXEC worden gebruikt om het configuratielogboek te bekijken.
Besturingsplanefuncties bestaan uit de protocollen en processen die communiceren tussen netwerkapparaten om gegevens van bron naar bestemming te verplaatsen. Hieronder vallen routeringsprotocollen, zoals Border Gateway Protocol, en protocollen zoals ICMP en Resource Reservation Protocol (RSVP).
Het is belangrijk dat gebeurtenissen in de beheer- en dataplanes geen negatief effect hebben op de besturingsplane. Als een dataplane-gebeurtenis, zoals een DoS-aanval, invloed heeft op de besturingsplane, kan het hele netwerk instabiel worden. Deze informatie over Cisco IOS-softwarefuncties en -configuraties kan mede zorgen voor de veerkracht van de besturingsplane.
Bescherming van de besturingsplane van een netwerkapparaat is essentieel omdat de besturingsplane ervoor zorgt dat de beheer- en dataplanes worden onderhouden en dat deze operationeel blijven. Als de besturingsplane instabiel wordt tijdens een beveiligingsincident, kan het onmogelijk zijn om de stabiliteit van het netwerk te herstellen.
In veel gevallen kunt u het ontvangen en verzenden van bepaalde berichttypen op een interface uitschakelen om de hoeveelheid vereiste CPU-belasting voor het verwerken van overbodige pakketten te minimaliseren.
Een ICMP-omleidingsbericht kan worden gegenereerd door een router wanneer een pakket op dezelfde interface wordt ontvangen en verzonden. In deze situatie stuurt de router het pakket door en stuurt een ICMP-omleidingsbericht naar de afzender van het oorspronkelijke pakket. Dankzij dit gedrag kan de afzender de router omzeilen en toekomstige pakketten direct doorsturen naar de bestemming (of naar een router dichterbij de bestemming). In een goed functionerend IP-netwerk stuurt een router omleidingen alleen naar hosts op zijn eigen lokale subnetten. Met andere woorden: ICMP-omleidingen gaan normaal gesproken niet verder dan een Layer 3-grens.
Er zijn twee typen ICMP-omleidingsberichten: omleiden voor een hostadres en omleiden voor een volledig subnet. Een kwaadwillende gebruiker kan de mogelijkheid van de router misbruiken om ICMP-omleidingen te verzenden via doorlopende verzending van pakketten naar de router. Hierdoor wordt de router geforceerd om te reageren met ICMP-omleidingsberichten en dit leidt tot een nadelige impact op de CPU en prestaties van de router. Om de router te verhinderen transmissie van ICMP om te leiden, gebruik het bevel van de no ip redirects
interfaceconfiguratie.
Filteren met een interfacetoegangslijst veroorzaakt de verzending van berichten 'ICMP onbereikbaar' naar de bron van het gefilterde verkeer. Het genereren van deze berichten kan het CPU-gebruik op het apparaat verhogen. Standaard is het genereren van 'ICMP onbereikbaar' in Cisco IOS-software beperkt tot één pakket elke 500 milliseconden. De onbereikbare berichtgeneratie ICMP kan met het bevel van de interfaceconfiguratie worden onbruikbaar gemaakt no ip unreachables
. De onbereikbare ICMP-snelheidslimiet kan worden gewijzigd ten opzichte van de standaardwaarde met het globale ip icmp rate-limit unreachable
configuratieopdracht interval-in-ms.
Proxy ARP is de techniek waarmee een apparaat, meestal een router, ARP-aanvragen beantwoordt die bedoeld zijn voor een ander apparaat. Met het vervalsen van de identiteit accepteert de router verantwoordelijkheid voor het routeren van pakketten naar de werkelijke bestemming. Proxy ARP kan machines op een subnet helpen externe subnetten te bereiken zonder routeconfiguratie of een standaardgateway. Proxy ARP is gedefinieerd in RFC 1027 .
Er zijn nadelen aan het gebruik van Proxy ARP. Het kan leiden tot een toename in de hoeveelheid ARP-verkeer op het netwerksegment en bronuitputting en man-in-the-middle-aanvallen. Proxy ARP is een aanvalsvector voor bronuitputting omdat elke ARP-aanvraag waarvoor een proxy is uitgevoerd, een kleine hoeveelheid geheugen verbruikt. Een aanvaller kan al het beschikbare geheugen uitputten als deze een groot aantal ARP-aanvragen verzendt.
Met man-in-the-middle-aanvallen kan een host op het netwerk het MAC-adres van de router spoofen. Dit leidt tot onbedoelde verzending door de host van verkeer naar de aanvaller. Proxy ARP kan worden uitgeschakeld met de opdracht interfaceconfiguratie no ip proxy-arp.
Bescherming van de besturingsplane is essentieel. Toepassingsprestaties en de eindgebruikerservaring kunnen verslechteren als er geen gegevens- en beheerverkeer aanwezig is. Om deze reden zorgt het overlevingsvermogen van de besturingsplane ervoor dat de andere twee planes worden onderhouden en dat ze operationeel blijven.
Voor de juiste bescherming van de besturingsplane van het Cisco IOS-apparaat is het essentieel dat u inzicht hebt in de verkeerstypen waarvoor proces-switching wordt uitgevoerd door de CPU. Verkeer waarvoor proces-switching wordt uitgevoerd, bestaat normaal gesproken uit twee verschillende verkeerstypen. Het eerste verkeerstype wordt naar het Cisco IOS-apparaat geleid en moet direct worden verwerkt door de CPU van het Cisco IOS-apparaat. Dit verkeer bestaat uit de categorie Aangrenzend verkeer ontvangen. Dit verkeer bevat een ingang in de CEF-tabel (Cisco Express Forwarding), waarbij de volgende routerhop het apparaat zelf is, dat wordt aangegeven door de term in de CLI-uitvoer show ip cef
ontvangen. Deze indicatie is van toepassing op elk IP-adres dat directe verwerking door de CPU van het Cisco IOS-apparaat vereist, en hierbij is inbegrepen interface-IP-adressen, multicast-adresruimte en uitzend-adresruimte.
Het tweede verkeerstype dat wordt verwerkt door de CPU is dataplaneverkeer: verkeer met een bestemming buiten het Cisco IOS-apparaat zelf, dat speciale verwerking door de CPU vereist. Hoewel dit geen allesomvattende lijst is van CPU-impacts van dataplaneverkeer, wordt er een proces-switch uitgevoerd voor deze verkeertypen en daarom kunnen ze invloed hebben op de werking van de besturingsplane:
Deze lijst bevat verschillende methoden om te bepalen welke verkeerstypen moeten worden verwerkt door de CPU van het Cisco IOS-apparaat:
show ip cef
bevel verstrekt de volgende-hopinformatie voor elke IP prefix in de CEF- lijst. Zoals eerder aangegeven, worden vermeldingen die 'ontvangen' bevatten als de 'Volgende hop' beschouwd als ontvangstaangrenzend en geven aan dat verkeer direct naar de CPU moet worden verzonden.show interface switching
bevel verstrekt informatie over het aantal pakketten die proces dat door een apparaat wordt geschakeld zijn.show ip traffic
geeft informatie over het aantal IP-pakketten:show policy-map control-plane
bevel.Infrastructuur-ACL's (iACL's) beperken externe communicatie tot de apparaten van het netwerk. De iACL's worden uitgebreid besproken in het gedeelte Toegang tot het netwerk beperken met infrastructuur-ACL's van dit document.
U wordt geadviseerd iACL's te implementeren om de besturingsplane van alle netwerkapparaten te beschermen.
Voor gedistribueerde platformen kunnen Receive ACL's (rACL's, ontvangst-ACL's) een optie zijn voor Cisco IOS-softwarereleases 12.0(21)S2 voor de 12000 (GSR), 12.0(24)S voor de 7500 en 12.0(31)S voor de 10720. De rACL beschermt het apparaat tegen schadelijk verkeer voordat het verkeer invloed heeft op de routeprocessor. De rACL's beschermen alleen het apparaat waarop ze zijn geconfigureerd en verkeer dat onderweg is, wordt niet beïnvloed door een rACL. Dat heeft als gevolg dat het bestemmings-IP-adres 'elk' in de onderstaande voorbeeld-ACL-vermeldingen alleen verwijst naar de fysieke of virtuele IP-adressen van de router. De rACL's worden ook gezien als aanbevolen procedure voor netwerkbeveiliging en kunnen worden beschouwd als een langetermijnaanvulling op goede netwerkbeveiliging.
Dit is de ontvangstpad-ACL die wordt geschreven om SSH-verkeer (TCP-poort 22) van vertrouwde hosts op het 192.168.100.0/24-netwerk toe te staan:
!
!--- Permit SSH from trusted hosts allowed to the device.
!
access-list 151 permit tcp 192.168.100.0 0.0.0.255 any eq 22
!
!--- Deny SSH from all other sources to the RP.
!
access-list 151 deny tcp any any eq 22
!
!--- Permit all other traffic to the device.
!--- according to security policy and configurations.
!
access-list 151 permit ip any any
!
!--- Apply this access list to the receive path.
!
ip receive access-list 151
!
Raadpleeg GSR: Receive Access Control Lists om legitiem verkeer naar een apparaat te identificeren en toe te staan en alle ongewenste pakketten te weigeren.
De CoPP-functie kan ook worden gebruikt om IP-pakketten bedoeld voor het infrastructuurapparaat te beperken. In dit voorbeeld mag alleen SSH-verkeer van vertrouwde hosts de CPU van het Cisco IOS-apparaat bereiken.
Opmerking: verwijderd verkeer van onbekende of niet-vertrouwde IP-adressen kan voorkomen dat hosts met dynamisch toegewezen IP-adressen een verbinding tot stand kunnen brengen met het Cisco IOS-apparaat.
!
access-list 152 deny tcp <trusted-addresses> <mask> any eq 22
access-list 152 permit tcp any any eq 22
access-list 152 deny ip any any
!
class-map match-all COPP-KNOWN-UNDESIRABLE
match access-group 152
!
policy-map COPP-INPUT-POLICY
class COPP-KNOWN-UNDESIRABLE
drop
!
control-plane
service-policy input COPP-INPUT-POLICY
!
In het vorige CoPP-voorbeeld leiden de ACL-vermeldingen die overeenkomen met de onbevoegde pakketten met de toestemmingsactie tot het verwijderen van deze pakketten door de functie 'policy-map drop', terwijl pakketten die overeenkomen met de weigeringsactie niet worden beïnvloed door de functie 'policy-map drop'.
CoPP is beschikbaar in Cisco IOS-softwarerelease 12.0S, 12.2SX, 12.2S, 12.3T, 12.4 en 12.4T.
Control Plane Protection (CPPr), geïntroduceerd in Cisco IOS-softwarerelease 12.4(4)T, kan worden gebruikt om besturingsplaneverkeer bedoeld voor de CPU van het Cisco IOS-apparaat te beperken of er beleid voor uit te voeren. Hoewel CPPr vergelijkbaar is met CoPP, kan CPPr verkeer nog gedetailleerder beperken. De CPPr verdeelt de geaggregeerde besturingsplane in drie afzonderlijke planecategorieën, bekend als subinterfaces. Subinterfaces bestaan voor de verkeerscategorieën Host, Doorgifte en CEF-uitzondering. Bovendien bevat CPPr de volgende beschermingsfuncties voor besturingsplanes:
Raadpleeg Understanding Control Plane Protection (CPPr) voor meer informatie over het gebruik van de CPPr-functie.
De Cisco Catalyst 6500-serie Supervisor Engine 32 en Supervisor Engine 720 ondersteunen platformspecifieke, hardwaregebaseerde snelheidsbegrenzers (HWRL's) voor speciale netwerkscenario's. Deze hardwaresnelheidsbegrenzers worden ook wel snelheidsbegrenzers voor speciale scenario's genoemd omdat ze een specifieke vooraf gedefinieerde set IPv4-, IPv6-, unicast- en multicast-DoS-scenario's dekken. De HWRL's kunnen het Cisco IOS-apparaat beschermen tegen verschillende aanvallen waarvoor is vereist dat pakketten worden verwerkt door de CPU.
Standaard zijn verschillende HWRL's ingeschakeld. Raadpleeg Standaardinstellingen PFC3 hardwaregebaseerde snelheidsbegrenzer voor meer informatie over HWRL's.
Raadpleeg Hardwaregebaseerde snelheidsbeperkers op de PFC3 voor meer informatie over HWRL's.
De Border Gateway Protocol (BGP) is de routeringsfundering van internet. Dat betekent dat elke organisatie met meer dan bescheiden connectiviteitsvereisten vaak BGP gebruikt. De BGP is een geliefd doelwit van aanvallers vanwege de veelvoorkomendheid en omdat BGP-configuraties in kleinere organisaties na het instellen vaak worden vergeten. Er zijn echter veel BGP-specifieke beveiligingsfuncties die kunnen worden gebruikt om de beveiliging van een BGP-configuratie te verbeteren.
Dit biedt een overzicht van de belangrijkste BGP-beveiligingsfuncties, en waar van toepassing worden configuratie-aanbevelingen gedaan.
Elk IP-pakket bevat een veld van 1-byte dat bekendstaat als de Time to Live (TTL). Elk apparaat waar een IP-pakket doorheen beweegt, vermindert deze waarde met één. De TTL-startwaarde varieert per besturingssysteem en ligt normaal gesproken tussen 64 en 255. Een pakket wordt verwijderd wanneer de TTL-waarde nul bereikt.
Een op TTL gebaseerde beveiligingsbescherming staat ook wel bekend als het Generalized TTL-based Security Mechanism (GTSM) en de BGP TTL Security Hack (BTSH) en gebruikt de TTL-waarde van IP-pakketten om ervoor te zorgen dat de ontvangen BGP-pakketten afkomstig zijn van een direct verbonden peer. Deze functie vereist vaak coördinatie van peer-routers. Als de functie echter is ingeschakeld, kan deze veel op TCP gebaseerde aanvallen tegen BGP volledig verslaan.
GTSM voor BGP is ingeschakeld met de ttl-security
optie voor de opdracht voor de configuratie van de neighbor
BGP-router. Dit voorbeeld toont de configuratie van deze functie:
!
router bgp <asn>
neighbor <ip-address> remote-as <remote-asn>
neighbor <ip-address> ttl-security hops <hop-count>
!
Wanneer BGP-pakketten worden ontvangen, wordt de TTL-waarde gecontroleerd en deze moet groter zijn of gelijk zijn aan 255, min de opgegeven hop-telling.
Peer-verificatie met MD5 maakt een MD5-digest van elk pakket verzonden als onderdeel van een BGP-sessie. Met name worden delen van de IP- en TCP-headers, TCP-payload en een geheime sleutel gebruikt om de digest te genereren.
De gemaakte digest wordt vervolgens opgeslagen in TCP-optie Kind 19, die specifiek voor dit doel is gemaakt door RFC 2385 . De ontvangende BGP-luidspreker gebruikt hetzelfde algoritme en dezelfde geheime sleutel om de bericht-digest opnieuw te genereren. Als de ontvangen en berekende digests niet identiek zijn, wordt het pakket verwijderd.
De peer-verificatie met MD5 wordt geconfigureerd met de password
optie bij de neighbor
BGP-routerconfiguratieopdracht. Het gebruik van deze opdracht wordt hier weergegeven:
!
router bgp <asn>
neighbor <ip-address> remote-as <remote-asn>
neighbor <ip-address> password <secret>
!
Raadpleeg Verificatie van aangrenzende router voor meer informatie over BGP-peerverificatie met MD5.
BGP-prefixes worden door een router opgeslagen in het geheugen. Des te meer prefixes een router moet bevatten, des te meer geheugen BGP gebruikt. In sommige configuraties kan een subset van alle internetprefixes worden opgeslagen, zoals in configuraties die alleen een standaardroute gebruiken of routes voor gebruikersnetwerken van de provider.
Configureer het maximale aantal prefixes dat wordt geaccepteerd per peer om geheugenuitputting te voorkomen. Aanbevolen wordt om voor elke BGP-peer een limiet te configureren.
Wanneer u deze functie configureert met de opdracht neighbor maximum-prefix
BGP-routerconfiguratie, is één argument vereist: het maximale aantal aanvaarde prefixes voordat een peer wordt uitgeschakeld. U kunt ook een cijfer van 1 tot 100 invoeren. Dit cijfer vertegenwoordigt het percentage van de maximale prefixes-waarde voor wanneer een logboekbericht wordt verzonden.
!
router bgp <asn>
neighbor <ip-address> remote-as <remote-asn>
neighbor <ip-address> maximum-prefix <shutdown-threshold> <log-percent>
!
Raadpleeg De functie BGP maximale prefix configureren voor meer informatie over maximale prefixes per peer.
Met prefix-lijsten kan een netwerkbeheerder specifieke prefixes die worden verzonden of ontvangen door BGP toestaan of weigeren. Gebruik waar mogelijk prefix-lijsten om ervoor te zorgen dat netwerkverkeer via de bedoelde paden wordt verzonden. Pas prefix-lijsten op elke eBGP-peer toe in zowel de inkomende als uitgaande richtingen.
Geconfigureerde prefix-lijsten beperken het aantal prefixes dat wordt verzonden naar of ontvangen door de peers die specifieke toestemming hebben gekregen van het routebeleid van een netwerk. Als dit niet haalbaar is vanwege het grote aantal ontvangen prefixes, configureert u een prefix-lijst om bekende slechte prefixes te blokkeren. Deze bekende slechte prefixes omvatten niet-toegewezen IP-adresruimte en netwerken gereserveerd voor interne of testdoeleinden door RFC 3330. Configureer uitgaande prefix-lijsten om alleen de prefixes toe te staan die een organisatie van plan is te adverteren.
Dit configuratievoorbeeld gebruikt prefix-lijsten om de geleerde en geadverteerde routes te beperken. Alleen een standaardroute is inkomend toegestaan door prefix-lijst BGP-PL-INBOUND, en de prefix 192.168.2.0/24 is de enige route die mag worden geadverteerd door BGP-PL-OUTBOUND.
!
ip prefix-list BGP-PL-INBOUND seq 5 permit 0.0.0.0/0
ip prefix-list BGP-PL-OUTBOUND seq 5 permit 192.168.2.0/24
!
router bgp <asn>
neighbor <ip-address> prefix-list BGP-PL-INBOUND in
neighbor <ip-address> prefix-list BGP-PL-OUTBOUND out
!
Raadpleeg Verbinding maken met een serviceprovider via externe BGP voor volledige informatie over BGP-prefix-filter.
Met toegangslijsten voor BGP AS-pad (autonoom systeem) kan de gebruiker ontvangen en geadverteerde prefixes filteren op basis van het kenmerk AS-pad van een prefix. Dit kan worden gebruikt met prefix-lijsten om een robuuste set filters op te stellen.
Dit configuratievoorbeeld gebruikt toegangslijsten voor AS-pad om inkomende prefixes te beperken tot de prefixes die voortkomen uit de externe AS en uitgaande prefixes te beperken tot de prefixes die voortkomen uit het lokale autonome systeem. Prefixes verkregen via alle andere autonome systemen worden gefilterd en niet geïnstalleerd in de routeringstabel.
!
ip as-path access-list 1 permit ^65501$
ip as-path access-list 2 permit ^$
!
router bgp <asn>
neighbor <ip-address> remote-as 65501
neighbor <ip-address> filter-list 1 in
neighbor <ip-address> filter-list 2 out
!
De mogelijkheid van een netwerk om verkeer goed door te sturen en te herstellen van topologiewijzigingen of storingen is afhankelijk van een nauwkeurige weergave van de topologie. Vaak kunt u een Interior Gateway Protocol (IGP) uitvoeren om deze weergave te bieden. IGP's zijn standaard dynamisch en ontdekken aanvullende routers die communiceren met de specifieke IGP die in gebruik is. IGP's ontdekken ook routes die kunnen worden gebruikt wanneer een netwerkkoppeling mislukt.
Deze subsecties bieden een overzicht va de belangrijkste IGP-beveiligingsfuncties. Aanbevelingen voor en voorbeelden van Routing Information Protocol Version 2 (RIPv2), Enhanced Interior Gateway Routing Protocol (EIGRP) en Open Shortest Path First (OSPF) worden indien nodig geboden.
Als de uitwisseling van routeringsinformatie niet wordt beveiligd, kan een aanvaller ongeldige routeringsinformatie in het netwerk plaatsen. Gebruik wachtwoordverificatie met routeringsprotocollen tussen routers om de netwerkbeveiliging te verbeteren. Deze verificatie wordt verzonden als leesbare tekst en daarom kan het heel eenvoudig zijn voor een aanvaller om deze beveiligingscontrole te ondermijnen.
Wanneer MD5-hash-mogelijkheden worden toegevoegd aan het verificatieproces, bevatten routeringsupdates geen leesbare wachtwoorden meer, en is de volledige inhoud van de routeringsupdate beter bestand tegen manipulatie. MD5-verificatie is echter nog wel kwetsbaar voor brute force en woordenboekaanvallen als zwakke wachtwoorden worden gebruikt. Aangeraden wordt om wachtwoorden met voldoende willekeur te gebruiken. MD5-verificatie is een stuk veiliger in vergelijking met wachtwoordverificatie en daarom zijn deze voorbeelden specifiek voor MD5-verificatie. IPSec kan ook worden gebruikt om routeringsprotocollen te valideren en beveiligen, maar deze voorbeelden tonen het gebruik ervan niet.
Zowel EIGRP als RIPv2 gebruiken sleutelketens als onderdeel van de configuratie. Raadpleeg sleutel voor meer informatie over de configuratie en het gebruik van sleutelketens.
Dit is een voorbeeldconfiguratie voor EIGRP-routerverificatie die MD5 gebruikt:
!
key chain <key-name>
key <key-identifier>
key-string <password>
!
interface <interface>
ip authentication mode eigrp <as-number> md5
ip authentication key-chain eigrp <as-number> <key-name>
!
Dit is een voorbeeld van configuratie van MD5-routerverificatie voor RIPv2. RIPv1 biedt geen ondersteuning voor verificatie.
!
key chain <key-name>
key <key-identifier>
key-string <password>
!
interface <interface>
ip rip authentication mode md5
ip rip authentication key-chain <key-name>
!
Dit is een voorbeeldconfiguratie voor OSPF-routerverificatie met MD5. OSPF gebruikt geen sleutelketens.
!
interface <interface>
ip ospf message-digest-key <key-id> md5 <password>
!
router ospf <process-id>
network 10.0.0.0 0.255.255.255 area 0
area 0 authentication message-digest
!
Raadpleeg OSPF configureren voor meer informatie.
De lekken van de informatie, of de introductie van valse informatie in een IGP, kunnen door gebruik van het bevel worden verlicht dat met controle van de reclame van het passive-interface
verpletteren van informatie bijstaat. Aangeraden wordt dat u geen informatie adverteert aan netwerken buiten uw beheerderscontrole.
Dit voorbeeld toont het gebruik van deze functie:
!
router eigrp <as-number>
passive-interface default
no passive-interface <interface>
!
Gebruik Routefiltering om de mogelijkheid van het introduceren van ongeldige route-informatie op het netwerk te verkleinen. passive-interface
Anders dan de opdracht voor routerconfiguratie, vindt routing plaats op interfaces zodra routeswittering is ingeschakeld, maar de informatie die wordt geadverteerd of verwerkt, is beperkt.
Voor EIGRP en RIP beperkt het gebruik van het distribute-list
bevel met het out
sleutelwoord de geadverteerde informatie, terwijl het gebruik van het in
sleutelwoord de verwerkte updates beperkt. Het distribute-list
bevel is beschikbaar voor OSPF, maar het verhindert een router niet propagatie van gefilterde routes. area filter-list
In plaats daarvan kan de opdracht worden gebruikt.
Dit EIGRP-voorbeeld filtert uitgaande advertenties met de distribute-list
opdracht en een prefixlijst:
!
ip prefix-list <list-name> seq 10 permit <prefix>
!
router eigrp <as-number>
passive-interface default
no passive-interface <interface>
distribute-list prefix <list-name> out <interface>
!
Dit EIGRP-voorbeeld filtert inkomende updates met een prefix-lijst:
!
ip prefix-list <list-name> seq 10 permit <prefix>
!
router eigrp <as-number>
passive-interface default
no passive-interface <interface>
distribute-list prefix <list-name> in <interface>
!
Dit OSPF-voorbeeld gebruikt een prefixlijst met de OSPF-specifieke area filter-list
command:
!
ip prefix-list <list-name> seq 10 permit <prefix>
!
router ospf <process-id>
area <area-id> filter-list prefix <list-name> in
!
Routeringsprotocol-prefixes worden door een router opgeslagen in het geheugen, en brongebruik wordt hoger met alle aanvullende prefixes die een router bevat. Configureer het routeringsprotocol om brongebruik te beperken om bronuitputting te voorkomen. Dit kan worden uitgevoerd met OSPF als u de functie 'Bescherming van databaseoverbelasting linkstatus' gebruikt.
Dit voorbeeld toont de configuratie van de OSPF-functie 'Bescherming van databaseoverbelasting linkstatus':
!
router ospf <process-id>
max-lsa <maximum-number>
!
First Hop Redundancy Protocols (FHRP's) bieden veerkracht en redundantie voor apparaten die functioneren als standaardgateways. Deze situatie en deze protocollen zijn standaard in omgevingen waarin een set Layer 3-apparaten standaardgateway-functionaliteit biedt voor een netwerksegment of set VLAN's die servers of werkstations bevatten.
Het Gateway Load-Balancing Protocol (GLBP), Hot Standby Router Protocol (HSRP) en Virtual Router Redundancy Protocol (VRRP) zijn allemaal FHRP's. Standaard communiceren deze protocollen met niet-geverifieerde communicaties. Dit soort communicatie kan ervoor zorgen dat een aanvaller zich voordoet als een FHRP-compliant apparaat om de rol van standaardgateway op het netwerk aan te nemen. Met deze overname kan een aanvaller een man-in-the-middle-aanval uitvoeren en al het gebruikersverkeer in het netwerk onderscheppen.
Om dit type aanval te voorkomen, bevatten alle FHRP's die worden ondersteund door Cisco IOS-software een verificatiemogelijkheid met MD5 of tekststrings. Vanwege de dreiging van niet-geverifieerde FHRP's wordt aanbevolen dat exemplaren van deze protocollen MD5-verificatie gebruiken. Dit configuratievoorbeeld toont het gebruik van GLBP-, HSRP- en VRRP MD5-verificatie.
!
interface FastEthernet 1
description *** GLBP Authentication ***
glbp 1 authentication md5 key-string <glbp-secret>
glbp 1 ip 10.1.1.1
!
interface FastEthernet 2
description *** HSRP Authentication ***
standby 1 authentication md5 key-string <hsrp-secret>
standby 1 ip 10.2.2.1
!
interface FastEthernet 3
description *** VRRP Authentication ***
vrrp 1 authentication md5 key-string <vrrp-secret>
vrrp 1 ip 10.3.3.1
!
Hoewel de dataplane verantwoordelijk is voor het verplaatsen van gegevens van bron naar bestemming, is de dataplane in de context van beveiliging het minst belangrijk van de drie planes. Daarom is het belangrijk om de beheer- en besturingsplanes voorkeur te geven over de dataplane wanneer u een netwerkapparaat beveiligt.
Binnen de dataplane zelf zijn er echter veel functies en configuratie-opties die kunnen helpen bij het beveiligen van verkeer. In deze gedeelten worden de functies en opties besproken zodat u uw netwerk eenvoudiger kunt beveiligen.
De grote meerderheid van dataplaneverkeer stroomt door het netwerk zoals bepaald door de netwerkrouteringsconfiguratie. IP-netwerkfunctionaliteit is echter aanwezig om het pad van pakketten door het netwerk te wijzigen. Functies zoals IP-opties, en met name de optie voor bronroutering, vormen tegenwoordig een uitdaging voor de beveiliging op netwerken.
Gebruik van overgangs-ACL's is ook relevant voor het versterken van de dataplane.
Zie de sectie Filter transitverkeer met doorvoerACL’s voor meer informatie.
IP-opties kennen twee beveiligingskwesties. Voor verkeer dat IP-opties bevat, moet proces-switching worden uitgevoerd door Cisco IOS-apparaten, wat kan leiden tot een hogere CPU-belasting. IP-opties omvatten ook de functionaliteit om het pad van het verkeer door het netwerk te wijzigen, waardoor het mogelijkerwijs mogelijk wordt om beveiligingscontroles te ondermijnen.
Als gevolg van deze problemen is de globale configuratieopdracht ip options {drop | ignore}
toegevoegd aan Cisco IOS-softwarereleases 12.3(4)T, 12.0(22)S en 12.2(25)S. In de eerste vorm van deze opdracht worden ip options drop
alle IP-pakketten die IP-opties bevatten die door het Cisco IOS-apparaat zijn ontvangen, gedropt. Hiermee wordt de verhoogde CPU-belasting en de mogelijke ondermijning van beveiligingscontroles voorkomen die door IP-opties mogelijk kunnen worden.
In de tweede vorm van deze opdracht, ip options ignore
wordt het Cisco IOS-apparaat geconfigureerd om IP-opties in ontvangen pakketten te negeren. Hoewel hiermee de dreigingen met betrekking tot IP-opties voor het lokale apparaat worden verminderd, worden downstream-apparaten mogelijk wel beïnvloed door de aanwezigheid van IP-opties. Om deze reden wordt de drop
vorm van deze opdracht ten zeerste aanbevolen. Zoals getoond in dit configuratievoorbeeld:
!
ip options drop
!
Sommige protocollen, zoals het RSVP, maken legitiem gebruik van IP-opties. De functionaliteit van deze protocollen wordt beïnvloed door deze opdracht.
show ip traffic EXEC
Als IP Options Selective Drop is ingeschakeld, kan de opdracht worden gebruikt om het aantal pakketten te bepalen dat vanwege de aanwezigheid van IP-opties wordt verbroken. Deze informatie is aanwezig in de teller voor gedwongen verwijderingen.
IP-bronroutering maakt gelijktijdig gebruik van de opties 'Vrije bronroute' en 'Route vastleggen'; of van de 'Strikte bronroute' samen met de optie 'Route vastleggen' om de IP-datagrambron het netwerkpad van een pakket te laten opgeven. Deze functionaliteit kan worden gebruikt in pogingen om verkeer te routeren rond beveiligingscontroles op het netwerk.
Als IP-opties niet volledig zijn uitgeschakeld door de functie 'IP-opties selectief verlies', is het belangrijk dat IP-bronroutering is uitgeschakeld. IP-bronrouting, die standaard is ingeschakeld in alle Cisco IOS-softwarereleases, is uitgeschakeld door de opdracht voor no ip source-route
globale configuratie. Dit configuratievoorbeeld toont het gebruik van deze opdracht:
!
no ip source-route
!
ICMP-omleidingen worden gebruikt om een netwerkapparaat op de hoogte te stellen van een beter pad naar een IP-bestemming. Standaard stuurt de Cisco IOS-software een omleiding als deze een pakket ontvangt dat door de interface waarop het is ontvangen, moet worden gerouteerd.
In sommige situaties kan een aanvaller ervoor zorgen dat het Cisco IOS-apparaat veel ICMP-omleidingsberichten verzendt, wat leidt tot een verhoogde CPU-belasting. Daarom wordt aanbevolen om de overdracht van ICMP-omleidingen uit te schakelen. ICMP-omleidingen zijn uitgeschakeld met de opdracht voor no ip redirects
interfaceconfiguratie, zoals in deze voorbeeldconfiguratie:
!
interface FastEthernet 0
no ip redirects
!
IP-omgeleide uitzendingen zorgen voor dat een IP-uitzendpakket naar een extern IP-subnet kan worden verzonden. Zodra het pakket het externe netwerk bereikt, stuurt het doorsturende IP-apparaat het pakket als een Layer 2-uitzending naar alle stations op het subnet. Deze omgeleide uitzendingsfunctionaliteit is gebruikt als hulp bij versterking en reflectie in verschillende aanvallen, waaronder de smurf-aanval.
Standaard is deze functionaliteit bij de huidige versies van Cisco IOS-software uitgeschakeld. Deze functionaliteit kan echter worden ingeschakeld door de opdracht voor ip directed-broadcast
interfaceconfiguratie. Voor releases van Cisco IOS-software eerder dan 12.0 is deze functionaliteit standaard ingeschakeld.
Als een netwerk omgeleide uitzendingsfunctionaliteit absoluut vereist, moet u het gebruik ervan beheren. Dit is mogelijk met het gebruik van een ACL als optie voor de ip directed-broadcast
opdracht. Dit configuratievoorbeeld beperkt omgeleide uitzendingen tot UDP-pakketten die voortkomen uit een vertrouwd netwerk, 192.168.1.0/24:
!
access-list 100 permit udp 192.168.1.0 0.0.0.255 any
!
interface FastEthernet 0
ip directed-broadcast 100
!
Het is mogelijk om te beheren welk verkeer door het netwerk beweegt met het gebruik van overgangs-ACL's (tACL's). Dit staat in contrast met iACL's die verkeer willen filteren dat is bedoeld voor het netwerk zelf. Het filter dat wordt versterkt door tACL's is handig wanneer het doel het filteren van verkeer op een bepaalde groep apparaten is of verkeer dat door het netwerk beweegt.
Firewalls voeren dit filtertype uit. Er zijn echter gevallen waarbij het handig kan zijn om deze filter op een Cisco IOS-apparaat op het netwerk uit te voeren. Bijvoorbeeld waar filtratie moet worden uitgevoerd maar geen firewall aanwezig is.
De tACL's zijn ook een goede plek waarin u statische anti-spoofingbeschermingen kunt implementeren.
Zie voor meer informatie het gedeelte Bescherming tegen spijkervorming.
Raadpleeg Transit Access Control Lists: filteren aan uw zijde voor meer informatie over tACL's.
Het Internet Control Message Protocol (ICMP) is ontworpen als een beheerprotocol voor IP. Daarom kunnen de berichten die erdoor worden uitgedragen aanzienlijke afsplitsingen veroorzaken op de TCP- en IP-protocollen in het algemeen. ICMP wordt gebruikt door de tools ping
en traceroute
, om problemen op te lossen in het netwerk, en door Path MTU Discovery. Externe ICMP-connectiviteit is echter zelden nodig voor de juiste werking van het netwerk.
Cisco IOS-software biedt functionaliteit om ICMP-berichten specifiek op naam of type en code te filteren. Deze voorbeeld-ACL maakt ICMP van vertrouwde netwerken mogelijk, terwijl alle ICMP-pakketten van andere bronnen worden geblokkeerd.
!
ip access-list extended ACL-TRANSIT-IN
!
!--- Permit ICMP packets from trusted networks only
!
permit icmp host <trusted-networks> any
!
!--- Deny all other IP traffic to any network device
!
deny icmp any any
!
Zoals eerder besproken in het gedeelte Toegang tot het netwerk beperken met infrastructuur-ACL's van dit document, kan het filteren van gefragmenteerde IP-pakketten een uitdaging vormen voor beveiligingsapparaten.
Vanwege de niet-intuïtieve aard van fragmentbeheer, worden IP-fragmenten vaak onbedoeld toegestaan door ACL's. Fragmentatie wordt ook vaak gebruikt in pogingen om detectie te ontwijken door intrusiedetectiesystemen. Om deze redenen worden IP-fragmenten vaak gebruikt in aanvallen en kunnen ze expliciet worden gefilterd bovenaan elke geconfigureerde tACL. Het vermelde ACL-voorbeeld bevat een uitgebreide filtering van IP-fragmenten. De functionaliteit getoond in dit voorbeeld moet worden gebruikt met de functionaliteit van de vorige voorbeelden.
!
ip access-list extended ACL-TRANSIT-IN
!
!--- Deny IP fragments using protocol-specific ACEs to aid in
!--- classification of attack traffic
!
deny tcp any any fragments
deny udp any any fragments
deny icmp any any fragments
deny ip any any fragments
!
Raadpleeg Access Control Lists en IP-fragmenten voor meer informatie over hoe ACL omgaat met gefragmenteerde IP-pakketten.
In Cisco IOS-softwarerelease 12.3(4)T en nieuwer ondersteunt Cisco IOS-software het gebruik van ACL's om IP-pakketten te filteren, gebaseerd op de IP-opties in het pakket. De aanwezigheid van IP-opties binnen een pakket kan duiden op een poging om beveiligingscontroles op het netwerk te ondermijnen of anderszins de doorgifte-eigenschappen van een pakket te wijzigen. Om deze redenen wordt aanbevolen om pakketten met IP-opties te filteren aan de rand van het netwerk.
Gebruik dit voorbeeld, samen met de inhoud van vorige voorbeelden, om een volledig filter toe te voegen voor IP-pakketten die IP-opties bevatten:
!
ip access-list extended ACL-TRANSIT-IN
!
!--- Deny IP packets containing IP options
!
deny ip any any option any-options
!
Veel aanvallen gebruiken spoofing van bron-IP-adressen om effectief te zijn of om de echte bron van een aanval te verhullen en goede traceback te verhinderen. Cisco IOS-software biedt Unicast RPF en IP Source Guard (IPSG) om aanvallen af te houden die vertrouwen op spoofing van bron-IP-adressen. Bovendien worden ACL's en null-routering vaak geïmplementeerd als handmatige methode om spoofing te voorkomen.
De IPSG voert handelingen uit om de spoofing voor netwerken onder directe beheercontrole te minimaliseren via verificatie van switchpoort, MAC-adres en bronadres. Unicast RPF biedt bronnetwerkverificatie en kan gespoofte aanvallen van netwerken niet onder directe beheercontrole verminderen. Poortbeveiliging kan worden gebruikt om MAC-adressen op de toegangslaag te valideren. Dynamic Address Resolution Protocol (ARP) Inspection (DAI) vermindert aanvalsvectoren die ARP-poisoning op lokale segmenten gebruiken.
Unicast RPF zorgt ervoor dat een apparaat voor het verifiëren van het bronadres van een doorgestuurd pakket kan worden bereikt via de interface die het pakket heeft ontvangen. Vertrouw niet op Unicast RPF als de enige bescherming tegen spoofing. Gespoofte pakketten kunnen het netwerk binnenkomen via een interface met Unicast RPF als een geschikte retourneringsroute naar het bron-IP-adres bestaat. Unicast RPF vertrouwt erop dat u Cisco Express Forwarding inschakelt op elk apparaat en wordt op interfacebasis geconfigureerd.
Unicast RPF kan in twee modi worden geconfigureerd: vrij of strikt. Wanneer er sprake is van asymmetrische routering, heeft de vrije modus de voorkeur omdat van de strikte modus bekend is dat in deze situaties pakketten worden verwijderd. Tijdens de configuratie van de opdracht voor de ip verify
interfaceconfiguratie, any
vormt het sleutelwoord losse modus terwijl het sleutelwoord rx strikte modus configureert.
Dit voorbeeld toont de configuratie van deze functie:
!
ip cef
!
interface <interface>
ip verify unicast source reachable-via <mode>
!
Raadpleeg Inzicht in Unicast Reverse Path Forwarding voor meer informatie over de configuratie en het gebruik van Unicast RPF.
IP-bronbewaker is een effectieve methode voor spoofing-preventie die kan worden gebruikt als u het beheer over Layer 2-interfaces hebt. IP-bronbewaking gebruikt informatie van DHCP-snooping om een port access control list (PACL) dynamisch te configureren op de Layer 2-interface, weigering van al het verkeer van IP-adressen die niet zijn gekoppeld in de IP-bronbindingstabel.
IP-bronbewaking kan worden toegepast op Layer 2-interfaces die horen bij VLAN's met DHCP-snooping. Deze opdrachten maken DHCP-snooping mogelijk:
!
ip dhcp snooping
ip dhcp snooping vlan <vlan-range>
!
Nadat DHCP-snooping is ingeschakeld, maken deze opdrachten IPSG mogelijk:
!
interface <interface-id>
ip verify source
!
Poortbeveiliging kan worden ingeschakeld met de opdracht Tip verify source port security
interfaceconfiguratie. Dit vereist het globale configuratiebevel ip dhcp snooping information option;
bovendien, moet de server van DHCP DHCP optie 82 steunen.
Raadpleeg DHCP-functies en IP-bronbewaking configureren voor meer informatie over deze functie.
Poortbeveiliging wordt gebruikt om het spoofen van MAC-adressen bij de toegangsinterface te verminderen. Poortbeveiliging kan dynamisch geleerde (persistente) MAC-adressen gebruiken om de initiële configuratie eenvoudiger te maken. Zodra poortbeveiliging een MAC-overtreding heeft vastgesteld, kan deze functie een van de vier overtredingsmodi gebruiken. Deze modi zijn: beschermen, beperken, uitschakelen en VLAN uitschakelen. Bij gevallen wanneer een poort alleen toegang biedt voor een enkel werkstation met het gebruik van standaardprotocollen, kan een maximaal aantal van één voldoende zijn. Protocollen die gebruikmaken van virtuele MAC-adressen, zoals HSRP, werken niet wanneer het maximale aantal is ingesteld op één.
!
interface <interface>
switchport
switchport mode access
switchport port-security
switchport port-security mac-address sticky
switchport port-security maximum <number>
switchport port-security violation <violation-mode>
!
Raadpleeg Poortbeveiliging configureren voor meer informatie over de configuratie van Poortbeveiliging.
Dynamische ARP-inspectie (DAI) kan worden gebruikt om ARP-poisoning-aanvallen op lokale segmenten te verminderen. Een ARP-poisoning-aanval is een methode waarmee een aanvaller vervalste ARP-informatie naar een lokaal segment stuurt. Deze informatie is ontworpen om de ARP-cache van andere apparaten te beschadigen. Vaak gebruikt een aanvaller ARP-poisoning om een man-in-the-middle-aanval uit te voeren.
DAI onderschept en valideert de relatie IP-naar-MAC-adres van alle ARP-pakketten op niet-vertrouwde poorten. In DHCP-omgevingen gebruikt DAI de gegevens die worden gegenereerd door de functie DHCP-snooping. ARP-pakketten die worden ontvangen op vertrouwde interfaces, worden niet gevalideerd en ongeldige pakketten op niet-vertrouwde interfaces worden verwijderd. In niet-DHCP-omgevingen is het gebruik van ARP ACL's vereist.
Deze opdrachten maken DHCP-snooping mogelijk:
!
ip dhcp snooping
ip dhcp snooping vlan <vlan-range>
!
Zodra DHCP-snooping is ingeschakeld, maken deze opdrachten DAI mogelijk:
!
ip arp inspection vlan <vlan-range>
!
In niet-DHCP-omgevingen moeten ARP ACL's verplicht DAI inschakelen. Dit voorbeeld toont de basisconfiguratie van DAI met ARP ACL's:
!
arp access-list <acl-name>
permit ip host <sender-ip> mac host <sender-mac>
!
ip arp inspection filter <arp-acl-name> vlan <vlan-range>
!
DAI kan ook per interface worden ingeschakeld als dat wordt ondersteund.
ip arp inspection limit rate <rate_value> burst interval <interval_value>
Raadpleeg Dynamische ARP-inspectie configureren voor meer informatie over het configureren van DAI.
Handmatig geconfigureerde ACL's kunnen statische anti-spoofing-bescherming bieden tegen aanvallen die bekende ongebruikte en niet-vertrouwde adresruimte gebruiken. Deze anti-spoofing ACL's worden vaak toegepast op inkomend verkeer bij netwerkgrenzen als een component van een grotere ACL. Anti-spoofing ACL's vereisen regelmatige bewakingsintervallen omdat ze regelmatig kunnen worden gewijzigd. Spoofing kan worden geminimaliseerd in verkeer dat zijn oorsprong heeft in het lokale netwerk als u uitgaande ACL's toepast die het verkeer naar geldige lokale adressen beperken.
Dit voorbeeld toont hoe ACL's kunnen worden gebruikt om IP-spoofing te beperken. Deze ACL wordt inkomend toegepast op de gewenste interface. De ACE's waaruit deze ACL bestaat, zijn niet allesomvattend. Als u deze ACL-typen configureert, zoekt u een actuele referentie die beslissend is.
!
ip access-list extended ACL-ANTISPOOF-IN
deny ip 10.0.0.0 0.255.255.255 any
deny ip 192.168.0.0 0.0.255.255 any
!
interface <interface>
ip access-group ACL-ANTISPOOF-IN in
!
Raadpleeg Veelgebruikte IP-ACL's configureren voor meer informatie over het configureren van Access Control Lists.
De officiële lijst van niet-toegewezen internetadressen wordt onderhouden door Team Cymru. Meer informatie over het filteren van ongebruikte adressen is beschikbaar op de Bogon-referentiepagina .
Het primaire doel van routers en switches is om pakketten en frames via het apparaat door te sturen naar eindbestemmingen. Deze pakketten, die door de apparaten bewegen die zijn geïmplementeerd in het netwerk, kunnen invloed hebben op de CPU-activiteiten van een apparaat. Beveilig de dataplane, die bestaat uit verkeer dat door het netwerkapparaat beweegt, om te zorgen voor de werking van de beheer- en besturingsplanes. Als overgangsverkeer kan veroorzaken dat een apparaat proces-switching uitvoert op verkeer, kan dit invloed hebben op de besturingsplane van een apparaat, wat weer leidt tot een operationele onderbreking.
Hoewel de lijst niet allesomvattend is, bevat deze verkeerstypen van dataplanes die een speciale CPU-verwerking vereisen en waarvoor proces-switching wordt uitgevoerd door de CPU:
Voor meer informatie over het Verharden van het Vliegtuig van Gegevens, zie de Algemene sectie van de Verharding van het Vliegtuig van Gegevens.
U kunt de functie ACL-ondersteuning voor filteren op TTL-waarde gebruiken die is geïntroduceerd in Cisco IOS-softwarerelease 12.4(2)T, in een uitgebreide IP-toegangslijst om pakketten op basis van de TTL-waarde te filteren. Deze functie kan een apparaat beschermen dat overgangsverkeer ontvangt wanneer de TTL-waarde een nul of één is. Filteren van pakketten op basis van TTL-waarden kan ook worden gebruikt om ervoor te zorgen dat de TTL-waarde niet lager is dan de diameter van het netwerk. Dit beschermt de besturingsplane van downstream infrastructuurapparaten tegen TTL-vervalaanvallen.
Sommige toepassingen en tools, zoals het traceroute
gebruik van TTL-expiratiepakketten voor test- en diagnosedoeleinden. Sommige protocollen, zoals IGMP, gebruiken op een legitieme manier een TTL-waarde van één.
Dit ACL-voorbeeld maakt een beleid dat IP-pakketten filtert wanneer de TTL-waarde lager is dan 6.
!
!--- Create ACL policy that filters IP packets with a TTL value
!--- less than 6
!
ip access-list extended ACL-TRANSIT-IN
deny ip any any ttl lt 6
permit ip any any
!
!--- Apply access-list to interface in the ingress direction
!
interface GigabitEthernet 0/0
ip access-group ACL-TRANSIT-IN in
!
Raadpleeg Identificatie en beperking van TTL-vervalaanvallen voor meer informatie over het filteren van pakketten op basis van de TTL-waarde.
Raadpleeg ACL-ondersteuning voor filteren op TTL-waarde voor meer informatie over deze functie.
In Cisco IOS-softwarerelease 12.4(4)T en hoger kan een beheerder met Flexible Packet Matching (FPM) overeenkomsten in willekeurige stukjes van een pakket zoeken. Dit FPM-beleid verwijdert pakketten met een TTL-waarde lager dan 6.
!
load protocol flash:ip.phdf
!
class-map type access-control match-all FPM-TTL-LT-6-CLASS
match field IP ttl lt 6
!
policy-map type access-control FPM-TTL-LT-6-DROP-POLICY
class FPM-TTL-LT-6-CLASS
drop
!
interface FastEthernet0
service-policy type access-control input FPM-TTL-LT-6-DROP-POLICY
!
In Cisco IOS-softwarerelease 12.3(4)T en hoger kunt u de functie 'ACL-ondersteuning voor het filteren van IP-opties' gebruiken in een benoemde, uitgebreide IP-toegangslijst om IP-pakketten met IP-opties te filteren. Het filteren van IP-pakketten op basis van de aanwezigheid van IP-opties kan ook worden gebruikt om te voorkomen dat de besturingsplane van infrastructuurapparaten deze pakketten moet bewerken op CPU-niveau.
De functie 'ACL-ondersteuning voor het filteren van IP-opties' kan alleen met benoemde, uitgebreide ACL's worden gebruikt. RSVP, Multiprotocol Label Switching Traffic Engineering, IGMP versies 2 en 3, en andere protocollen die IP-optiespakketten gebruiken, werken niet goed als pakketten voor deze protocollen worden verwijderd. Als deze protocollen in gebruik zijn op het netwerk, kan de 'ACL-ondersteuning voor het filteren van IP-opties' worden gebruikt. De functie 'ACL IP-opties selectief verlies' kan dit verkeer echter verwijderen en dan werken deze protocollen niet goed. Als er geen protocollen in gebruik zijn die IP-opties vereisen, is 'ACL IP-opties selectief verlies' de voorkeursmethode om deze pakketten te verwijderen.
Dit ACL-voorbeeld stelt een beleid op waarmee IP-pakketten worden gefilterd die IP-opties bevatten:
!
ip access-list extended ACL-TRANSIT-IN
deny ip any any option any-options
permit ip any any
!
interface GigabitEthernet 0/0
ip access-group ACL-TRANSIT-IN in
!
Deze voorbeeld-ACL toont een beleid dat IP-pakketten met vijf specifieke IP-opties filtert. Pakketten die deze opties bevatten, worden geweigerd:
!
ip access-list extended ACL-TRANSIT-IN
deny ip any any option eool
deny ip any any option record-route
deny ip any any option timestamp
deny ip any any option lsr
deny ip any any option ssr
permit ip any any
!
interface GigabitEthernet 0/0
ip access-group ACL-TRANSIT-IN in
!
Raadpleeg het gedeelte Versterking algemene dataplane van dit document voor meer informatie over ACL IP-opties selectief verlies.
Raadpleeg Transit Access Control Lists: filteren aan uw zijde voor meer informatie over het filteren van overgangs- en randverkeer.
Een andere functie in Cisco IOS-software die kan worden gebruikt om pakketten met IP-opties te filteren is CoPP. In Cisco IOS-softwarerelease 12.3(4)T en hoger kan een beheerder met CoPP de verkeersstroom van besturingsplanepakketten filteren. Een apparaat dat CoPP en ACL-ondersteuning voor het filteren van IP-opties ondersteunt, geïntroduceerd in Cisco IOS-softwarerelease 12.3(4)T, kan een toegangslijstbeleid gebruiken om pakketten te filteren die IP-opties bevatten.
Dit CoPP-beleid verwijdert overgangspakketten die worden ontvangen door een apparaat wanneer er IP-opties aanwezig zijn:
!
ip access-list extended ACL-IP-OPTIONS-ANY
permit ip any any option any-options
!
class-map ACL-IP-OPTIONS-CLASS
match access-group name ACL-IP-OPTIONS-ANY
!
policy-map COPP-POLICY
class ACL-IP-OPTIONS-CLASS
drop
!
control-plane
service-policy input COPP-POLICY
!
Dit CoPP-beleid verwijdert overgangspakketten die worden ontvangen door een apparaat wanneer deze IP-opties aanwezig zijn:
!
ip access-list extended ACL-IP-OPTIONS
permit ip any any option eool
permit ip any any option record-route
permit ip any any option timestamp
permit ip any any option lsr
permit ip any any option ssr
!
class-map ACL-IP-OPTIONS-CLASS
match access-group name ACL-IP-OPTIONS
!
policy-map COPP-POLICY
class ACL-IP-OPTIONS-CLASS
drop
!
control-plane
service-policy input COPP-POLICY
!
In het vorige CoPP-beleid leiden de ACL-vermeldingen (ACE's) die overeenkomen met de pakketten met de toestemmingsactie tot het verwijderen van deze pakketten door de functie 'policy-map drop', terwijl pakketten die overeenkomen met de weigeringsactie (niet weergegeven) niet worden beïnvloed door de functie 'policy-map drop'.
Control Plane Protection (CPPr), geïntroduceerd in Cisco IOS-softwarerelease 12.4(4)T en hoger, kan worden gebruikt om besturingsplaneverkeer voor de CPU van het Cisco IOS-apparaat te beperken of er beleid voor uit te voeren. Hoewel CPPr vergelijkbaar is met CoPP, kan CPPr verkeer nog gedetailleerder dan CoPP beperken of er beleid op uitvoeren. CPPr verdeelt de geaggregeerde besturingsplane in drie afzonderlijke planecategorieën, bekend als subinterfaces: de subinterfaces Host, Transit en CEF-Exception bestaan.
Dit CPPr-beleid verwijdert overgangspakketten die zijn ontvangen door een apparaat wanneer de TTL-waarde lager is dan 6, en overgangs- of niet-overgangspakketten die zijn ontvangen door een apparaat wanneer de TTL-waarde nul of één is. Het CPPr-beleid verwijdert ook pakketten met geselecteerde IP-opties ontvangen door het apparaat.
!
ip access-list extended ACL-IP-TTL-0/1
permit ip any any ttl eq 0 1
!
class-map ACL-IP-TTL-0/1-CLASS
match access-group name ACL-IP-TTL-0/1
!
ip access-list extended ACL-IP-TTL-LOW
permit ip any any ttl lt 6
!
class-map ACL-IP-TTL-LOW-CLASS
match access-group name ACL-IP-TTL-LOW
!
ip access-list extended ACL-IP-OPTIONS
permit ip any any option eool
permit ip any any option record-route
permit ip any any option timestamp
permit ip any any option lsr
permit ip any any option ssr
!
class-map ACL-IP-OPTIONS-CLASS
match access-group name ACL-IP-OPTIONS
!
policy-map CPPR-CEF-EXCEPTION-POLICY
class ACL-IP-TTL-0/1-CLASS
drop
class ACL-IP-OPTIONS-CLASS
drop
!
!-- Apply CPPr CEF-Exception policy CPPR-CEF-EXCEPTION-POLICY to
!-- the CEF-Exception CPPr sub-interface of the device
!
control-plane cef-exception
service-policy input CPPR-CEF-EXCEPTION-POLICY
!
policy-map CPPR-TRANSIT-POLICY
class ACL-IP-TTL-LOW-CLASS
drop
!
control-plane transit
service-policy input CPPR-TRANSIT-POLICY
!
In het vorige CPPr-beleid leiden de ACL-vermeldingen die overeenkomen met de pakketten met de toestemmingsactie tot het verwijderen van deze pakketten door de functie 'policy-map drop', terwijl pakketten die overeenkomen met de weigeringsactie (niet weergegeven) niet worden beïnvloed door de functie 'policy-map drop'.
Raadpleeg Inzicht in bescherming van besturingsplane en Control Plane Protection voor meer informatie over de CPPr-functie.
Soms moet u netwerkverkeer snel identificeren en een traceback erop uitvoeren, voornamelijk tijdens incidentrespons of slechte netwerkprestaties. NetFlow en Classificatie-ACL's zijn twee primaire methoden om dit te bereiken met Cisco IOS-software. NetFlow kan inzicht in al het verkeer op het netwerk bieden. Bovendien kan NetFlow worden geïmplementeerd met verzamelaars die trending- en geautomatiseerde analyses voor de lange termijn kunnen bieden. Classificatie-ACL's zijn een component van ACL's en vereisen pre-planning om specifiek verkeer en handmatige interventie tijdens analyse te identificeren. Deze gedeelten bieden een kort overzicht van elke functie.
NetFlow identificeert afwijkende en beveiligingsgerelateerde netwerkactiviteit door het bijhouden van netwerkstromen. NetFlow-gegevens kunnen worden weergegeven en geanalyseerd door de CLI, of de gegevens kunnen worden geëxporteerd naar een commerciële of freeware NetFlow-verzamelaar voor aggregatie en analyse. NetFlow-verzamelaars kunnen via langetermijntrends netwerkgedrag- en gebruiksanalyses bieden. NetFlow voert analyses op specifieke kenmerken binnen IP-pakketten uit en maakt stromen. Versie 5 is de meest gebruikte versie van NetFlow; versie 9 is echter uitgebreider. NetFlow-stromen kunnen in omgevingen met hoog volume worden gemaakt van sampled verkeersgegevens.
CEF, of gedistribueerde CEF, is een vereiste om NetFlow in te schakelen. NetFlow kan worden geconfigureerd op routers en switches.
Dit voorbeeld toont de basisconfiguratie van NetFlow. In vorige releases van Cisco IOS-software is de opdracht om NetFlow op een interface in te schakelen, ip route-cache flow
in plaats van ip flow {ingress | egress}.
!
ip flow-export destination <ip-address> <udp-port>
ip flow-export version <version>
!
interface <interface>
ip flow <ingess|egress>
!
Dit is een voorbeeld van NetFlow-uitvoer van de CLI. Het SrcIf-kenmerk kan helpen bij de traceback.
router#show ip cache flow
IP packet size distribution (26662860 total packets):
1-32 64 96 128 160 192 224 256 288 320 352 384 416 448 480
.741 .124 .047 .006 .005 .005 .002 .008 .000 .000 .003 .000 .001 .000 .000
512 544 576 1024 1536 2048 2560 3072 3584 4096 4608
.000 .000 .001 .007 .039 .000 .000 .000 .000 .000 .000
IP Flow Switching Cache, 4456704 bytes
55 active, 65481 inactive, 1014683 added
41000680 ager polls, 0 flow alloc failures
Active flows timeout in 2 minutes
Inactive flows timeout in 60 seconds
IP Sub Flow Cache, 336520 bytes
110 active, 16274 inactive, 2029366 added, 1014683 added to flow
0 alloc failures, 0 force free
1 chunk, 15 chunks added
last clearing of statistics never
Protocol Total Flows Packets Bytes Packets Active(Sec) Idle(Sec)
-------- Flows /Sec /Flow /Pkt /Sec /Flow /Flow
TCP-Telnet 11512 0.0 15 42 0.2 33.8 44.8
TCP-FTP 5606 0.0 3 45 0.0 59.5 47.1
TCP-FTPD 1075 0.0 13 52 0.0 1.2 61.1
TCP-WWW 77155 0.0 11 530 1.0 13.9 31.5
TCP-SMTP 8913 0.0 2 43 0.0 74.2 44.4
TCP-X 351 0.0 2 40 0.0 0.0 60.8
TCP-BGP 114 0.0 1 40 0.0 0.0 62.4
TCP-NNTP 120 0.0 1 42 0.0 0.7 61.4
TCP-other 556070 0.6 8 318 6.0 8.2 38.3
UDP-DNS 130909 0.1 2 55 0.3 24.0 53.1
UDP-NTP 116213 0.1 1 75 0.1 5.0 58.6
UDP-TFTP 169 0.0 3 51 0.0 15.3 64.2
UDP-Frag 1 0.0 1 1405 0.0 0.0 86.8
UDP-other 86247 0.1 226 29 24.0 31.4 54.3
ICMP 19989 0.0 37 33 0.9 26.0 53.9
IP-other 193 0.0 1 22 0.0 3.0 78.2
Total: 1014637 1.2 26 99 32.8 13.8 43.9
SrcIf SrcIPaddress DstIf DstIPaddress Pr SrcP DstP Pkts
Gi0/1 192.168.128.21 Local 192.168.128.20 11 CB2B 07AF 3
Gi0/1 192.168.150.60 Gi0/0 10.89.17.146 06 0016 101F 55
Gi0/0 10.89.17.146 Gi0/1 192.168.150.60 06 101F 0016 9
Gi0/1 192.168.150.60 Local 192.168.206.20 01 0000 0303 11
Gi0/0 10.89.17.146 Gi0/1 192.168.150.60 06 07F1 0016 1
Raadpleeg Cisco IOS NetFlow voor meer informatie over NetFlow-mogelijkheden.
Raadpleeg Een inleiding tot Cisco IOS NetFlow - Een technisch overzicht voor een technisch overzicht van NetFlow.
Classificatie-ACL's bieden inzicht in verkeer dat door een interface beweegt. Classificatie-ACL's wijzigen het beveiligingsbeleid van een netwerk niet en worden normaal gesproken opgebouwd om afzonderlijke protocollen, bronadressen of bestemmingen te classificeren. Een ACE die bijvoorbeeld al het verkeer toestaat, kan worden gescheiden in specifieke protocollen of poorten. Deze gedetailleerdere classificatie van verkeer in specifieke ACE's kan helpen inzicht te bieden in het netwerkverkeer omdat elke verkeerscategorie zijn eigen hit-teller heeft. Een beheerder kan ook de impliciete weigering aan het einde van een ACL scheiden in gedetailleerde ACE's voor het identificeren van de geweigerde verkeerstypen.
Een beheerder kan een incidentele respons versnellen door het gebruik van classificatie ACL’s met de opdrachten show access-list
en clear ip access-list counters
EXEC.
Dit voorbeeld toont de configuratie van een classificatie-ACL om SMB-verkeer te identificeren voorafgaand aan een standaardweigering:
!
ip access-list extended ACL-SMB-CLASSIFY
remark Existing contents of ACL
remark Classification of SMB specific TCP traffic
deny tcp any any eq 139
deny tcp any any eq 445
deny ip any any
!
Om het verkeer te identificeren dat een classificatie ACL gebruikt, gebruik het show access-list EXEC
bevel. De ACL-tellers kunnen met de opdracht worden clear ip access-list counters EXEC
gewist.
router#show access-list ACL-SMB-CLASSIFY
Extended IP access list ACL-SMB-CLASSIFY
10 deny tcp any any eq 139 (10 matches)
20 deny tcp any any eq 445 (9 matches)
30 deny ip any any (184 matches)
Raadpleeg Inzicht in ACL-logboekregistratie voor meer informatie over het inschakelen van de logboekmogelijkheden binnen ACL's.
VLAN Access Control Lists (VACL's), of VLAN-kaarten en Poort-ACL's (PACL's), bieden de mogelijkheid om toegangscontrole toe te passen op niet-gerouteerd verkeer dat zich dichter bij eindpuntapparaten bevindt dan ACL's die worden toegepast op gerouteerde interfaces.
Deze gedeelten bieden een overzicht van de functies, voordelen en potentiële gebruikersscenario's van VACL's en PACL's.
VACL's of VLAN-kaarten die van toepassing zijn op alle pakketten, die de VLAN binnenkomen, bieden de mogelijkheid om toegangscontrole af te dwingen op intra-VLAN-verkeer. Dit is niet mogelijk met ACL's op gerouteerde interfaces. Een VLAN-kaart kan bijvoorbeeld worden gebruikt om te voorkomen dat hosts op dezelfde VLAN met elkaar kunnen communiceren. Hierdoor worden de kansen voor lokale aanvallers of wormen verminderd die misbruik maken van een host op hetzelfde netwerksegment. Als u pakketten het gebruik van een VLAN-kaart wilt weigeren, maakt u een access control list (ACL) die overeenkomt met het verkeer en stelt u in de VLAN-kaart de actie in op verwijderen. Wanneer een VLAN-map is geconfigureerd, worden alle pakketten die de LAN binnenkomen opvolgend geëvalueerd aan de hand van de geconfigureerde VLAN-kaart. VLAN-toegangsmappen ondersteunen IPv4 en MAC-toegangslijsten; ze ondersteunen echter geen logboeken of IPv6-ACL's.
Dit voorbeeld gebruikt een uitgebreide benoemde toegangslijst die de configuratie van deze functie toont:
!
ip access-list extended <acl-name>
permit <protocol> <source-address> <source-port> <destination-address>
<destination-port>
!
vlan access-map <name> <number>
match ip address <acl-name>
action <drop|forward>
!
Dit voorbeeld toont het gebruik van een VLAN-kaart om TCP-poorten 139 en 445 te weigeren, evenals het protocol vines-ip.
!
ip access-list extended VACL-MATCH-ANY
permit ip any any
!
ip access-list extended VACL-MATCH-PORTS
permit tcp 192.168.1.0 0.0.0.255 192.168.1.0 0.0.0.255 eq 445
permit tcp 192.168.1.0 0.0.0.255 192.168.1.0 0.0.0.255 eq 139
!
mac access-list extended VACL-MATCH-VINES
permit any any vines-ip
!
vlan access-map VACL 10
match ip address VACL-MATCH-VINES
action drop
!
vlan access-map VACL 20
match ip address VACL-MATCH-PORTS
action drop
!
vlan access-map VACL 30
match ip address VACL-MATCH-ANY
action forward
!
vlan filter VACL vlan 100
!
Raadpleeg Netwerkbeveiliging configureren met ACL's voor meer informatie over de configuratie van VLAN-kaarten.
PACL's kunnen alleen worden toegepast op de inkomende richting op Layer 2 fysieke interfaces van een switch. Net zoals VLAN-kaarten bieden PACL's toegangscontrole op niet-gerouteerd Layer 2-verkeer. De syntaxis voor het maken van PACL's, die prioriteit heeft over VLAN-kaarten en router-ACL's, is hetzelfde als router-ACL's. Als een ACL is toegepast op een Layer 2-interface, wordt hiernaar verwezen met PACL. Configuratie omvat het maken van een IPv4, IPv6 of MAC-ACL en toepassing hiervan op de Layer 2-interface.
Dit voorbeeld gebruikt een uitgebreide benoemde toegangslijst om de configuratie van deze functie te tonen:
!
ip access-list extended <acl-name>
permit <protocol> <source-address> <source-port> <destination-address>
<destination-port>
!
interface <type> <slot/port>
switchport mode access
switchport access vlan <vlan_number>
ip access-group <acl-name> in
!
Raadpleeg het gedeelte Poort-ACL van Netwerkbeveiliging configureren met ACL's voor meer informatie over de configuratie van PACL's.
MAC-ACL's of uitgebreide lijsten kunnen worden toegepast op een IP-netwerk met het gebruik van deze opdracht in interfaceconfiguratie-modus:
Cat6K-IOS(config-if)#mac packet-classify
Opmerking: MAC-ACL's is bedoeld om Layer 3-pakketten te classificeren als Layer 2-pakketten. De opdracht wordt ondersteund in Cisco IOS-softwarerelease 12.2(18)SXD (voor Sup 720) en Cisco IOS-softwarereleases 12.2(33)SRA of nieuwer.
Deze interface-opdracht moet worden toegepast op de inkomende interface en geeft de doorsturende engine de instructie om de IP-header niet te inspecteren. Het resultaat is dat u een MAC-toegangslijst kunt gebruiken op de IP-omgeving.
Privé-VLAN's (PVLAN's) zijn een Layer 2-beveiligingsfunctie die connectiviteit tussen werkstations of servers op een VLAN beperkt. Zonder PVLAN's kunnen alle apparaten op een Layer 2 VLAN naar wens communiceren. Netwerksituaties bestaan waar beveiliging kan worden geholpen door de beperking van communicatie tussen apparaten op een enkele VLAN. PVLAN's worden bijvoorbeeld vaak gebruikt om communicatie tussen servers op een openbaar toegankelijk subnet te verbieden. Als een enkele server beschadigd raakt, kan het gebrek aan connectiviteit met andere servers vanwege de toepassing van PVLAN's helpen de beschadiging te beperken tot die ene server.
Er zijn drie typen Prive-VLAN's: geïsoleerde VLAN's, community-VLAN's en primaire VLAN's. De configuratie van PVLAN's maakt gebruik van primaire en secundaire VLAN's. De primaire VLAN bevat alle promiscuous-poorten, die later worden beschreven, en omvat een of meer secundaire VLAN's die ofwel community- ofwel geïsoleerde VLAN's zijn.
De configuratie van een secundaire VLAN als een geïsoleerde VLAN voorkomt communicatie tussen apparaten op de secundaire VLAN volledig. Er kan slechts één geïsoleerde VLAN per primaire VLAN zijn, en alleen promiscuous-poorten kunnen communiceren met poorten op een geïsoleerde VLAN. Geïsoleerde VLAN's kunnen worden gebruikt op niet-vertrouwde netwerken zoals netwerken die ondersteuning bieden voor gasten.
Dit configuratievoorbeeld configureert VLAN 11 als een geïsoleerde VLAN en koppelt deze aan de primaire VLAN, VLAN 20. Dit voorbeeld configureert interface FastEthernet 1/1 ook als een geïsoleerde poort op VLAN 11:
!
vlan 11
private-vlan isolated
!
vlan 20
private-vlan primary
private-vlan association 11
!
interface FastEthernet 1/1
description *** Port in Isolated VLAN ***
switchport mode private-vlan host
switchport private-vlan host-association 20 11
!
Een secundaire VLAN geconfigureerd als een community-VLAN zorgt voor communicatie tussen leden van de VLAN en met alle promiscuous-poorten op de primaire VLAN. Er is echter geen communicatie mogelijk tussen twee community-VLAN's of van een community-VLAN naar een geïsoleerde VLAN. Community-VLAN's moeten worden gebruikt om servers te groeperen die connectiviteit nodig hebben met elkaar, maar waar connectiviteit met alle andere apparaten op de VLAN niet is vereist. Dit scenario komt veel voor op een openbaar toegankelijk netwerk of overal waar servers inhoud bieden aan niet-vertrouwde clients.
Dit voorbeeld configureert een enkele community-VLAN en configureert switch-poort FastEthernet 1/2 als een lid van die VLAN. De community-VLAN, VLAN 12, is een secundaire VLAN voor primaire VLAN 20.
!
vlan 12
private-vlan community
!
vlan 20
private-vlan primary
private-vlan association 12
!
interface FastEthernet 1/2
description *** Port in Community VLAN ***
switchport mode private-vlan host
switchport private-vlan host-association 20 12
!
Switch-poorten die in de primaire VLAN zijn geplaatst, staan bekend als promiscuous-poorten. Promiscuous-poorten kunnen communiceren met alle andere poorten op de primaire en secundaire VLAN's. Router- of firewall-interfaces zijn de meest gebruikte apparaten op deze VLAN's.
Het configuratievoorbeeld combineert de vorige voorbeelden van community- en geïsoleerde VLAN's en voegt de configuratie van interface FastEthernet 1/12 toe als een promiscuous-poort:
!
vlan 11
private-vlan isolated
!
vlan 12
private-vlan community
!
vlan 20
private-vlan primary
private-vlan association 11-12
!
interface FastEthernet 1/1
description *** Port in Isolated VLAN ***
switchport mode private-vlan host
switchport private-vlan host-association 20 11
!
interface FastEthernet 1/2
description *** Port in Community VLAN ***
switchport mode private-vlan host
switchport private-vlan host-association 20 12
!
interface FastEthernet 1/12
description *** Promiscuous Port ***
switchport mode private-vlan promiscuous
switchport private-vlan mapping 20 add 11-12
!
Wanneer u PVLAN's implementeert, is het belangrijk om ervoor te zorgen dat de Layer 3-configuratie ondersteuning biedt voor de beperkingen opgelegd door PVLAN's en geen mogelijkheid biedt voor het ondermijnen van de PVLAN-configuratie. Een Layer 3-filter met een Router-ACL of firewall kan het ondermijnen van de PVLAN-configuratie voorkomen.
Raadpleeg Privé-VLAN's (PVLAN's) - Promiscuous, geïsoleerd, community, te vinden op de startpagina LAN-beveiliging, voor meer informatie over het gebruik en de configuratie van Privé-VLAN's.
Dit document biedt een uitgebreid overzicht van de methoden die kunnen worden gebruikt om een Cisco IOS-systeemapparaat te beveiligen. Als u de apparaten beveiligt, wordt de algehele beveiliging van de netwerken die u beheert ook verbeterd. In dit overzicht worden bescherming van de beheer-, besturing- en dataplanes besproken en worden aanbevelingen verstrekt voor configuratie. Waar mogelijk wordt voldoende detail geboden voor de configuratie van elke gekoppelde functie. In alle gevallen worden echter uitgebreide referenties geboden zodat u beschikt over de benodigde informatie voor verdere evaluatie.
Sommige functiebeschrijvingen in dit document zijn geschreven door informatie-ontwikkelingsteams van Cisco.
Deze controlelijst is een verzameling van alle stappen om apparaten besproken in deze handleiding te versterken. Beheerders kunnen deze lijst gebruiken als herinnering van alle versterkingsfuncties die worden gebruikt en overwogen voor een Cisco IOS-apparaat, zelfs als een functie niet is geïmplementeerd omdat deze niet van toepassing is. Beheerders worden geadviseerd om elke optie te evalueren op potentiële risico's voordat ze de optie implementeren.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
2.0 |
12-Sep-2024 |
Volledige revisie van CCW-waarschuwingen, inclusief introductie, machinevertaling, stijlvereisten en tientallen bijgewerkte koppelingen. |
1.0 |
10-Dec-2001 |
Eerste vrijgave |