Het doel van dit artikel is om de stappen te beschrijven om het kopiëren van configuratiebestanden van een Cisco Business switch via Simple Network Management Protocol (SNMP) te activeren.
Configuratiebestanden worden doorgaans gekopieerd van een switch met behulp van de grafische gebruikersinterface (GUI) of de opdrachtregelinterface (CLI). Een meer ongebruikelijke methode is om de kopieertaak via SNMP te activeren.
Wanneer u een configuratiebestand met gevoelige gegevens kopieert, kan de kopieertaak gevoelige gegevens uitsluiten, in versleuteld formulier opnemen, het als onbewerkte tekst opnemen of een standaardmethode gebruiken. Het specificeren van gevoelige gegevensverwerking is facultatief en de standaardinstelling wordt gebruikt als deze niet is gespecificeerd.
Om toegang te krijgen tot het menu voor gevoelige gegevensverwerking met de GUI, navigeer naar Beheer > Bestandsbewerkingen > Het menu Bestandsbeheer.
De optie Sensitive Data Handling verschijnt alleen in de back-upbestandsmodus voor TFTP of SCP.
Vanaf de opdrachtregel kan de opdracht Copy worden gebruikt:
copy {running-config | startup-config} dst-url [exclude | include-encrypted | include-plaintext]
Voorbeeld:
copy running-config tftp://192.168.101.99/destination-file.txt exclude
De standaardinstelling is de modus voor het lezen van beveiligde gevoelige gegevens (SSD)-sessies die is ingesteld op. Om de huidige modus te zien, toont ssd sessie, of ga tonen in werking stelt -in werking stellen-config en zoek de bestand SSD indicator. Met fabrieksinstellingen wordt de verwachte leesmodus voor SSD-sessies versleuteld.
C1300# show ssd session
Gebruikersnaam / niveau: gebruiker1/niveau 15
Toestemming voor lezen door gebruiker: Beide
Huidige leesmodus sessie: Versleuteld
C1300# show running-config | include SSD
SSD-indicatielampje voor bestand versleuteld
Als het exemplaarbevel zonder gespecificeerde optie was ingevoerd, zou het kopiëren alsof "omvatten-gecodeerd"werd gekozen.
copy running-config tftp://192.168.101.99/destination-file.txt
De waarde voor het lezen van de sessie kan echter worden gewijzigd:
ssd session read {exclude | encrypted | plaintext}
Deze opdracht heeft invloed op de output van show in werking stellen-config en tonen startup-config, evenals het handelen als de standaardwaarde voor de behandeling van gevoelige gegevens van het kopieerbevel.
Voorbeeld:
C1300 (configuratie)# ssd session read plaintext
C1300 (configuratie)# exit
C1300# copy running-config tftp://192.168.101.99/destination-file.txt
Het resulterende bestand zal gevoelige gegevens in plaintext, evenals de output van "show running-config" en "show startup-config", dus zorg moet worden genomen met de SSD sessie gelezen modus. Het is het veiligst om de standaardinstelling te handhaven.
Als de output van show in werking stellen-config of tonen startup-config niet alles toont wat wordt verwacht, bijvoorbeeld, SNMP v3 gebruikers met versleutelde referenties die zichtbaar zijn in de GUI, zorg er dan voor dat de SSD sessie gelezen waarde niet is ingesteld om uit te sluiten.
Catalyst 1200/Catalyst 1300/CBSx50 Series switches gebruiken de SNMP-objectidentifier (OID) genaamd rlCopyOptionsRequestedSSDAccess om de optie voor gevoelige gegevens te besturen. Het object is een geheel getal en op het eerste gezicht lijken de door het object aanvaarde waarden gelijkwaardig aan die van de opdracht Copy:
Optie 3, die de gevoelige gegevens in plaintext kopieert, kan niet met SNMP v2c worden gebruikt, noch kan het met SNMP v3 worden gebruikt tenzij zowel de authentificatie als privacy (authPriv) worden gebruikt.
Het is geen goed idee om de platte optie in te stellen om het bestand te kopiëren met een onveilig protocol zoals TFTP.
SNMP v3 met authPriv wordt alleen gebruikt om de kopie te activeren, zodat de privacy-instellingen niet nuttig zijn voor de bescherming van het configuratiebestand zelf tijdens de overdracht. Het kopiëren met Secure Copy Protocol (SCP) zou bijvoorbeeld veiliger zijn.
Optie 4, de "standaard" optie, gedraagt zich niet zoals zou kunnen worden verwacht. Het gedraagt zich niet als de kopieer opdracht, en de SSD lees sessie waarde heeft geen enkele invloed op het kopieer resultaat bij het gebruik van SNMP. In plaats daarvan is optie 4 hetzelfde als optie 1 (uitsluiten), met één uitzondering: Als u SNMP v3 met authPriv gebruikt, is optie 4 hetzelfde als optie 3 (plaintext).
Het gedrag is samengevat in de onderstaande tabel:
1 (niet inbegrepen) |
2 (versleuteld) |
3 (onbewerkte tekst) |
standaard |
|
CLI-kopie |
uitgesloten |
versleuteld |
platte tekst |
SSD-waarde |
SNMP v2c |
uitgesloten |
versleuteld |
faalt |
uitgesloten |
SNMP v3 authPriv |
uitgesloten |
versleuteld |
platte tekst |
platte tekst |
SNMP v3 authNoPriv |
uitgesloten |
versleuteld |
faalt |
uitgesloten |
SNMP v3 zonder toestemming |
uitgesloten |
versleuteld |
faalt |
uitgesloten |
SNMP v3 met authPriv is niet specifiek vereist om de kopieertaak te activeren, maar aangezien het grotere flexibiliteit en veiligheid biedt, wordt het aanbevolen over de andere SNMP-varianten en zal worden gebruikt voor de volgende voorbeelden.
Voorbeeldconfiguratie:
snmp-server server
snmp-server engineID local 8000000903f01d2da99341
snmp-server group snmpAdmin v3 priv write Default
encrypted snmp-server user sbscadmin snmpAdmin v3 auth sha [authentication_password] priv [privacy_password]
Door de bovenstaande configuratie kan de gebruiker met de naam sbscadmin SNMP v3-opdrachten naar de switch sturen om het bestandsexemplaar te activeren. Gebruiker sbscadmin is lid van de snmpAdmin groep, die volledige SNMP v3 schrijfrechten op de switch heeft gekregen.
Merk op dat de gebruiker zowel een authenticatie (auth) wachtwoord en een privacy (priv) wachtwoord heeft, d.w.z. authPriv, en de snmpAdmin groep heeft "priv" ingesteld (wat ook verificatie omvat omdat privacy niet zonder kan worden gebruikt).
Het volgende is een voorbeeld van snmpset-opdracht die de kopieertaak activeert. Het is lang als het verschillende objectwaarden moet instellen. Het commando wordt in één regel ingevoerd, maar een backslash kan worden gebruikt als een escape-teken om elk item desgewenst op de eigen regel te scheiden. Dit werd hieronder gedaan om de leesbaarheid te verbeteren. De invoer wordt in blauw weergegeven en de uitvoer in wit.
blake@MintBD:~$ snmpset -v 3 -u snmpuser -l authPriv \
-a SHA -A [authentication_password] \
-x AES -X [privacy_password] -m +CISCOSB-COPY-MIB 192.168.111.253 \
rlCopyOptionsRequestedSsdAccess.1 = include-encrypted \
rlCopyRowStatus.1 = createAndGo \
rlCopySourceLocation.1 = local \
rlCopySourceIpAddress.1 = 0.0.0.0 \
rlCopySourceUnitNumber.1 = 1 \
rlCopySourceFileType.1 = runningConfig \
rlCopyDestinationLocation.1 = tftp \
rlCopyDestinationIpAddress.1 = 192.168.111.18 \
rlCopyDestinationFileName.1 = v3-2.txt \
rlCopyDestinationFileType.1 = backupConfig
CISCOSB-COPY-MIB::rlCopyOptionsRequestedSsdAccess.1 = INTEGER: include-encrypted(2)
CISCOSB-COPY-MIB::rlCopyRowStatus.1 = INTEGER: createAndGo(4)
CISCOSB-COPY-MIB::rlCopySourceLocation.1 = INTEGER: local(1)
CISCOSB-COPY-MIB::rlCopySourceIpAddress.1 = IpAddress: 0.0.0.0
CISCOSB-COPY-MIB::rlCopySourceUnitNumber.1 = INTEGER: 1
CISCOSB-COPY-MIB::rlCopySourceFileType.1 = INTEGER: runningConfig(2)
CISCOSB-COPY-MIB::rlCopyDestinationLocation.1 = INTEGER: tftp(3)
CISCOSB-COPY-MIB::rlCopyDestinationIpAddress.1 = IpAddress: 192.168.111.18
CISCOSB-COPY-MIB::rlCopyDestinationFileName.1 = STRING: v3-2.txt
CISCOSB-COPY-MIB::rlCopyDestinationFileType.1 = INTEGER: backupConfig(4)
Nadat de kopieertaak is uitgevoerd, keert de waarde van rlCopyOptionsRequestedSSDAccess terug naar 4 (standaard).
Het gebruik van symbolische namen voor de objecten en hun waarden wordt mogelijk gemaakt door CISCOSB-COPY-MIB, die in detail wordt beschreven in het bestand "CISCOSB-copy.mib", inclusief de MIB-bestanden op de downloadpagina voor de switch.
In de volgende tabel wordt de symbolische naam van elk object aan de OID gekoppeld.
Symbolische naam |
Objectidentificatiecode (OID) |
rlKopie-optiesTabel |
1.3.6.1.4.1.9.6.1.101.87.12 |
rlKopieeroptiesAangevraagdeSSDaccess |
1.3.6.1.4.1.9.6.1.101.87.12.1.2 |
rlCopyTable |
1.3.6.1.4.1.9.6.1.101.87.2 |
rlCopyRow-status |
1.3.6.1.4.1.9.6.1.101.87.2.1.17 |
rlCopySourceLocation |
1.3.6.1.4.1.9.6.1.101.87.2.1.3 |
rlCopySourceIP-adres |
1.3.6.1.4.1.9.6.1.101.87.2.1.4 |
rlCopySourceUnitNumber |
1.3.6.1.4.1.9.6.1.101.87.2.1.5 |
rlCopySourceFileType |
1.3.6.1.4.1.9.6.1.101.87.2.1.7 |
rlCopyBestemmingslocatie |
1.3.6.1.4.1.9.6.1.101.87.2.1.8 |
rlCopyBestemmingIP-adres |
1.3.6.1.4.1.9.6.1.101.87.2.1.9 |
rlCopyBestemmingBestandsnaam |
1.3.6.1.4.1.9.6.1.101.87.2.1.11 |
rlCopyBestemmingBestandstype |
1.3.6.1.4.1.9.6.1.101.87.2.1.12 |
Als MIB-bestanden niet worden gebruikt, kan het kopiëren van bestanden worden geactiveerd met de OID's in plaats van de symbolische namen, hoewel de invoer en uitvoer minder intuïtief zijn.
blake@MintBD:~$ snmpset -v 3 -u sbscadmin -l authPriv \
-a SHA -A [authentication_password] \
-x AES -X [privacy_password] 192.168.111.253 \
1.3.6.1.4.1.9.6.1.101.87.12.1.2.1 i 1 \
1.3.6.1.4.1.9.6.1.101.87.2.1.17.1 i 4 \
1.3.6.1.4.1.9.6.1.101.87.2.1.3.1 i 1 \
1.3.6.1.4.1.9.6.1.101.87.2.1.4.1 a 0.0.0.0 \
1.3.6.1.4.1.9.6.1.101.87.2.1.5.1 i 1 \
1.3.6.1.4.1.9.6.1.101.87.2.1.7.1 i 2 \
1.3.6.1.4.1.9.6.1.101.87.2.1.8.1 i 3 \
1.3.6.1.4.1.9.6.1.101.87.2.1.9.1 a 192.168.111.18 \
1.3.6.1.4.1.9.6.1.101.87.2.1.11.1 s destination-file.txt \
1.3.6.1.4.1.9.6.1.101.87.2.1.12.1 i 4
iso.3.6.1.4.1.9.6.1.101.87.12.1.2.1 = INTEGER: 1
iso.3.6.1.4.1.9.6.1.101.87.2.1.17.1 = INTEGER: 4
iso.3.6.1.4.1.9.6.1.101.87.2.1.3.1 = INTEGER: 1
iso.3.6.1.4.1.9.6.1.101.87.2.1.4.1 = IpAddress: 0.0.0.0
iso.3.6.1.4.1.9.6.1.101.87.2.1.5.1 = INTEGER: 1
iso.3.6.1.4.1.9.6.1.101.87.2.1.7.1 = INTEGER: 2
iso.3.6.1.4.1.9.6.1.101.87.2.1.8.1 = INTEGER: 3
iso.3.6.1.4.1.9.6.1.101.87.2.1.9.1 = IpAddress: 192.168.111.18
iso.3.6.1.4.1.9.6.1.101.87.2.1.11.1 = STRING: "destination-file.txt"
iso.3.6.1.4.1.9.6.1.101.87.2.1.12.1 = INTEGER: 4
Een simpel "=" symbool werd niet gebruikt om de waarden in te stellen omdat, zonder de MIB, de opdracht expliciet elk objecttype moet instellen ("i" voor integer, "a" voor address, en "s" voor string). De namen voor de waarden ("lokaal", "runningConfig", enzovoort) kunnen ook niet worden gebruikt, omdat ze worden gedefinieerd door de MIB, zodat de gehele getallen die deze opties vertegenwoordigen rechtstreeks moeten worden ingesteld.
SNMP-beheertools kunnen nuttig zijn voor test- en probleemoplossingsdoeleinden. In dit artikel wordt de snmpset-opdracht gebruikt die bij Net-SNMP is inbegrepen, een reeks gratis en opensource SNMP-tools.
Om de switch MIB-bestanden met Net-SNMP te kunnen gebruiken, moet u er eerst voor zorgen dat de eigen MIB-bestanden van Net-SNMP op een locatie worden geplaatst waar Net-SNMP ernaar zal zoeken, bijvoorbeeld $HOME/.snmp/mibs. Zonder de eigen MIB-bestanden van Net-SNMP zullen de switch MIBs niet goed werken.
De switch MIB-bestanden kunnen worden uitgepakt en op dezelfde locatie geplaatst als de MIB-bestanden van Net-SNMP, maar om compatibiliteitsproblemen te voorkomen, moet u de Net-SNMP-versies van alle versies die de twee sets overlappen niet overschrijven.
Zodra alle MIB-bestanden op een geschikte locatie zijn geïnstalleerd, kunnen de relevante MIB(s) worden aangeroepen met behulp van het "-m" argument met de gewenste opdracht.
Voorbeeld:
snmpget -v 3 -u snmpuser -l authPriv \
-a SHA -A [authentication_password] \
-x AES -X [privacy_password] \
-m +CISCO SB-COPY-MIB 192.168.111.253 rlCopyOptionsRequestedSsdAccess.1
"CISCOSB-COPY-MIB" is de naam van de MIB zelf en niet het bestand dat het beschrijft, namelijk CISCOSB-copy.mib.
Zie de documentatie en zelfstudies op de Net-SNMP-website voor meer informatie over het gebruik van de Net-SNMP-tools.
Nu kent u alle stappen om het kopiëren van configuratiebestanden van een Cisco Business switch naar een TFTP-server via SNMP te activeren.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
28-Mar-2025 |
Eerste vrijgave |