In diesem Dokument wird beschrieben, wie Sie einen Cisco IOS®-Router als CA-Server (Certificate Authority) konfigurieren. Darüber hinaus wird veranschaulicht, wie ein anderer Cisco IOS-Router registriert wird, um ein Root- und ID-Zertifikat für die IPsec-Authentifizierung vom CA-Server zu erhalten.
Es gibt keine spezifischen Anforderungen für dieses Dokument.
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
Zwei Cisco Router der Serie 2600 mit Cisco IOS Software, Version 12.3(4)T3.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netz Live ist, überprüfen Sie, ob Sie die mögliche Auswirkung jedes möglichen Befehls verstehen.
In diesem Dokument wird die folgende Netzwerkeinrichtung verwendet:
Weitere Informationen zu Dokumentkonventionen finden Sie unter Cisco Technical Tips Conventions (Technische Tipps von Cisco zu Konventionen).
Der erste Schritt besteht darin, das RSA-Schlüsselpaar zu generieren, das vom Cisco IOS CA-Server verwendet wird. Generieren Sie auf dem Router (R1) die RSA-Schlüssel, wie diese Ausgabe zeigt:
R1(config)#crypto key generate rsa general-keys label cisco1 exportable The name for the keys will be: cisco1 Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys. Choosing a key modulus greater than 512 may take a few minutes. How many bits in the modulus [512]: % Generating 512 bit RSA keys ...[OK] R1(config)# *Jan 22 09:51:46.116: %SSH-5-ENABLED: SSH 1.99 has been enabled
Hinweis: Sie müssen den gleichen Namen für das Schlüsselpaar (Key-Label) verwenden, den Sie für den Zertifikatserver verwenden möchten (über den später behandelten Befehl cs-label crypto pki server).
Exportieren Sie die Schlüssel in einen nichtflüchtigen RAM (NVRAM) oder TFTP (je nach Konfiguration). In diesem Beispiel wird der NVRAM verwendet. Je nach Implementierung können Sie einen separaten TFTP-Server verwenden, um Ihre Zertifikatinformationen zu speichern.
R1(config)#crypto key export rsa cisco1 pem url nvram: 3des cisco123 % Key name: cisco1 Usage: General Purpose Key Exporting public key... Destination filename [cisco1.pub]? Writing file to nvram:cisco1.pub Exporting private key... Destination filename [cisco1.prv]? Writing file to nvram:cisco1.prv R1(config)#
Wenn Sie einen TFTP-Server verwenden, können Sie das generierte Schlüsselpaar erneut importieren, wie dieser Befehl zeigt:
crypto key import rsa key-label pem [usage-keys] {terminal | url url} [exportable] passphrase
Hinweis: Wenn Sie nicht möchten, dass der Schlüssel vom Zertifikatserver exportierbar ist, importieren Sie ihn nach dem Exportieren als nicht exportierbares Schlüsselpaar zurück zum Zertifikatserver. Auf diese Weise kann der Schlüssel nicht wieder abgenommen werden.
Geben Sie den Befehl show crypto key mypubkey rsa ein, um das generierte Schlüsselpaar zu überprüfen.
Das Output Interpreter-Tool (OIT) (nur registrierte Kunden) unterstützt bestimmte show-Befehle. Verwenden Sie das OIT, um eine Analyse der show-Befehlsausgabe anzuzeigen.
R1#show crypto key mypubkey rsa % Key pair was generated at: 09:51:45 UTC Jan 22 2004 Key name: cisco1 Usage: General Purpose Key Key is exportable. Key Data: 305C300D 06092A86 4886F70D 01010105 00034B00 30480241 00CC2DC8 ED26163A B3642376 FAA91C2F 93A3825B 3ABE6A55 C9DD3E83 F7B2BD56 126E0F11 50552843 7F7CA4DA 3EC3E2CE 0F42BD6F 4C585385 3C43FF1E 04330AE3 37020301 0001 % Key pair was generated at: 09:51:54 UTC Jan 22 2004 Key name: cisco1.server Usage: Encryption Key Key is exportable. Key Data: 307C300D 06092A86 4886F70D 01010105 00036B00 30680261 00EC5578 025D3066 72149A35 32224BC4 3E41DD68 38B08D39 93A1AA43 B353F112 1E56DA42 49741698 EBD02905 FE4EC392 7174EEBF D82B4475 2A2D7DEC 83E277F8 AEC590BE 124E00E1 C1607433 5C7BC549 D532D18C DD0B7AE3 AECDDE9C 07AD84DD 89020301 0001
Der Cisco IOS CA Server unterstützt nur Registrierungen, die über das Simple Certificate Enrollment Protocol (SCEP) erfolgen. Um dies zu ermöglichen, muss der Router den integrierten Cisco IOS HTTP-Server ausführen. Verwenden Sie den Befehl ip http server, um ihn zu aktivieren:
R1(config)#ip http server
Führen Sie diese Schritte aus:
Beachten Sie, dass der Zertifikatserver denselben Namen wie das Schlüsselpaar verwenden muss, das Sie gerade manuell generiert haben.
Die Bezeichnung entspricht der generierten Schlüsselpaarbezeichnung:
R1(config)#crypto pki server cisco1
Nachdem Sie einen Zertifikatserver aktiviert haben, können Sie die vorkonfigurierten Standardwerte verwenden oder Werte über die CLI für die Funktionalität des Zertifikatservers angeben.
Der Befehl database url gibt den Speicherort an, an dem alle Datenbankeinträge für den CA-Server geschrieben werden. Wenn dieser Befehl nicht angegeben wird, werden alle Datenbankeinträge in Flash geschrieben.
R1(cs-server)#database url nvram:
Hinweis: Wenn Sie einen TFTP-Server verwenden, muss die URL tftp://<ip_address>/directory lauten.
Konfigurieren Sie die Datenbankebene:
R1(cs-server)#database level minimum
Dieser Befehl steuert, welche Datentypen in der Zertifikatregistrierungsdatenbank gespeichert werden:
Minimum - Genügend Informationen werden nur gespeichert, um weiterhin neue Zertifikate ohne Konflikte auszustellen. Der Standardwert
Namen - Zusätzlich zu den Angaben auf der minimalen Stufe, die Seriennummer und den Antragstellernamen jedes Zertifikats.
Complete (Vollständig) - Zusätzlich zu den Informationen in den Minimal- und Namensebenen wird jedes ausgestellte Zertifikat in die Datenbank geschrieben.
Hinweis: Das vollständige Schlüsselwort liefert eine große Menge an Informationen. Wenn es ausgegeben wird, sollten Sie auch einen externen TFTP-Server angeben, auf dem die Daten über den Befehl database url gespeichert werden.
Konfigurieren Sie den Namen des CA-Ausstellers für die angegebene DN-Zeichenfolge. In diesem Beispiel werden die CN (Common Name) von cisco1.cisco.com, L (Locality) von RTP und C (Country) von US verwendet:
R1(cs-server)#issuer-name CN=cisco1.cisco.com L=RTP C=US
Geben Sie die Lebensdauer eines Zertifizierungsstellenzertifikats oder Zertifikats in Tagen an.
Gültige Werte liegen zwischen 1 Tag und 1825 Tagen. Die standardmäßige Lebensdauer des Zertifikats der Zertifizierungsstelle beträgt drei Jahre, die des Zertifikats ein Jahr. Die maximale Lebensdauer des Zertifikats beträgt einen Monat weniger als die Lebensdauer des Zertifizierungsstellenzertifikats. Beispiele:
R1(cs-server)#lifetime ca-certificate 365 R1(cs-server)#lifetime certificate 200
Definieren Sie die Lebensdauer der Zertifikatsperrliste, die vom Zertifikatserver verwendet wird, in Stunden. Der Wert für die maximale Lebensdauer beträgt 336 Stunden (zwei Wochen). Der Standardwert ist 168 Stunden (eine Woche).
R1(cs-server)#lifetime crl 24
Definieren Sie einen Certificate-Revocation-List Distribution Point (CDP), der in den vom Zertifikatserver ausgestellten Zertifikaten verwendet werden soll.
Bei der URL muss es sich um eine HTTP-URL handeln. Unser Server hatte beispielsweise die IP-Adresse 172.18.108.26:
R1(cs-server)#cdp-url http://172.18.108.26/cisco1cdp.cisco1.crl
Führen Sie den Befehl no shutdown aus, um den Zertifizierungsstellenserver zu aktivieren:
R1(cs-server)#no shutdown
Hinweis: Führen Sie diesen Befehl nur aus, nachdem Sie den Zertifikatsserver vollständig konfiguriert haben.
Befolgen Sie dieses Verfahren.
Konfigurieren Sie einen Hostnamen und einen Domänennamen, und generieren Sie die RSA-Schlüssel auf R2.
Verwenden Sie den Befehl hostname, um den Hostnamen des Routers als R2 zu konfigurieren:
Router(config)#hostname R2 R2(config)#
Beachten Sie, dass sich der Hostname des Routers unmittelbar nach der Eingabe des Befehls hostname geändert hat.
Verwenden Sie den Befehl ip domain-name, um den Domänennamen auf dem Router zu konfigurieren:
R2(config)#ip domain-name cisco.com
Verwenden Sie den Befehl crypto key generate rsa, um das R2-Schlüsselpaar zu generieren:
R2(config)#crypto key generate rsa The name for the keys will be: R2.cisco.com Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys. Choosing a key modulus greater than 512 may take a few minutes. How many bits in the modulus [512]: % Generating 512 bit RSA keys ...[OK]
Verwenden Sie diese Befehle im globalen Konfigurationsmodus, um der Zertifizierungsstelle zu deklarieren, dass Ihr Router verwendet werden soll (in diesem Beispiel Cisco IOS-Zertifizierungsstelle), und um die Merkmale für die Vertrauensstelle-Zertifizierungsstelle anzugeben:
crypto ca trustpoint cisco enrollment retry count 5 enrollment retry period 3 enrollment url http://14.38.99.99:80 revocation-check none
Hinweis: Der Befehl crypto ca trustpoint vereinheitlicht den vorhandenen Befehl crypto ca identity und den Befehl crypto ca trusted-root und stellt somit unter einem einzigen Befehl eine kombinierte Funktionalität bereit.
Verwenden Sie den Befehl crypto ca authentication cisco (cisco ist die Bezeichnung für den Vertrauenspunkt), um das Root-Zertifikat vom CA-Server abzurufen:
R2(config)#crypto ca authenticate cisco
Verwenden Sie den Befehl crypto ca enroll cisco (cisco ist die Bezeichnung für Vertrauenspunkte), um sich anzumelden und Folgendes zu generieren:
R2(config)#crypto ca enroll cisco
Nachdem Sie sich erfolgreich beim Cisco IOS CA-Server angemeldet haben, sollten Sie die ausgestellten Zertifikate anzeigen, indem Sie den Befehl show crypto ca-Zertifikate verwenden. Dies ist die Ausgabe des Befehls. Der Befehl zeigt die detaillierten Zertifikatinformationen an, die den im Cisco IOS CA-Server konfigurierten Parametern entsprechen:
R2#show crypto ca certificates Certificate Status: Available Certificate Serial Number: 02 Certificate Usage: General Purpose Issuer: cn=cisco1.cisco.com l=RTP c=US Subject: Name: R2.cisco.com hostname=R2.cisco.com CRL Distribution Point: http://172.18.108.26/cisco1cdp.cisco1.crl Validity Date: start date: 15:41:11 UTC Jan 21 2004 end date: 15:41:11 UTC Aug 8 2004 renew date: 00:00:00 UTC Jan 1 1970 Associated Trustpoints: cisco CA Certificate Status: Available Certificate Serial Number: 01 Certificate Usage: Signature Issuer: cn=cisco1.cisco.com l=RTP c=US Subject: cn=cisco1.cisco.com l=RTP c=US Validity Date: start date: 15:39:00 UTC Jan 21 2004 end date: 15:39:00 UTC Jan 20 2005 Associated Trustpoints: cisco
Geben Sie den folgenden Befehl ein, um den Schlüssel in den permanenten Flash-Speicher zu speichern:
hostname(config)#write memory
Geben Sie den folgenden Befehl ein, um die Konfiguration zu speichern:
hostname#copy run start
Nutzen Sie diesen Abschnitt, um zu überprüfen, ob Ihre Konfiguration ordnungsgemäß funktioniert.
Das Output Interpreter-Tool (OIT) (nur registrierte Kunden) unterstützt bestimmte show-Befehle. Verwenden Sie das OIT, um eine Analyse der show-Befehlsausgabe anzuzeigen.
show crypto ca Certificates (Kryptografiezertifikate anzeigen): Zeigt Zertifikate an.
show crypto key mypubkey rsa: Zeigt das Schlüsselpaar an.
!% Key pair was generated at: 09:28:16 EST Jan 30 2004 !Key name: ese-ios-ca ! Usage: General Purpose Key ! Key is exportable. ! Key Data: ! 30819F30 0D06092A 864886F7 0D010101 05000381 8D003081 89028181 00AF2198 ! C56F1A8F 5AC501FF ADFB1489 1F503F91 CA3C3FA3 9FB2C150 FFCBF815 2AA73060 ! E79AF510 E292C171 C6804B45 0CAAD4AF 5834AB85 B204208B 3960D20D 9B51AF7B ! ACF12D3D F5BC6EAE 77186AE9 1471F5A4 443CE5B5 1336EC33 5FEB3398 002C15EE ! 9F8FD331 83490D8A 983FBBE1 9E72A130 121A3B97 A3ACD147 C37DA3D6 77020301 0001 !% Key pair was generated at: 09:28:17 EST Jan 30 2004 !Key name: ese-ios-ca.server ! Usage: Encryption Key ! Key is exportable. ! Key Data: ! 307C300D 06092A86 4886F70D 01010105 00036B00 30680261 0096456A 01AEC6A5 ! 0049CCA7 B41B675E 5317328D DF879CAE DB96A739 26F2A03E 09638A7A 99DFF8E9 ! 18F7635D 6FB6EE27 EF93B3DE 336C148A 6A7A91CB 6A5F7E1B E0084174 2C22B3E2 ! 3ABF260F 5C4498ED 20E76948 9BC2A360 1C799F8C 1B518DD8 D9020301 0001
crypto pki server ese-ios-ca info crl: Zeigt die Zertifikatsperrliste an.
! Certificate Revocation List: ! Issuer: cn=ese-ios-ca,ou=ESE,o=Cisco Systems Inc,l=Raleigh,st=NC ! This Update: 09:58:27 EST Jan 30 2004 ! Next Update: 09:58:27 EST Jan 31 2004 ! Number of CRL entries: 0 ! CRL size: 300 bytes
crypto pki server ese-ios-ca info requirements: Zeigt ausstehende Anmeldeanfragen an.
! Enrollment Request Database: ! ReqID State Fingerprint SubjectName ! --------------------------------------------------------------
show crypto pki server (Kryptografieserver anzeigen): Zeigt den aktuellen Status des PKI-Servers (Public Key Infrastructure) an.
! Certificate Server status: enabled, configured ! Granting mode is: manual ! Last certificate issued serial number: 0x1 ! CA certificate expiration timer: 10:58:20 EDT Jun 21 2005 ! CRL NextUpdate timer: 09:58:26 EST Jan 31 2004 ! Current storage dir: nvram: ! Database Level: Names - subject name data written as .cnm
crypto pki server cs-label grant { all | transaction-id }: Gewährt alle oder bestimmte SCEP-Anforderungen.
crypto pki server cs-label reject { all | transaction-id }: lehnt alle oder bestimmte SCEP-Anforderungen ab.
crypto pki server cs-label password generate [ minutes ] - Generiert ein einmaliges Kennwort (OTP) für eine SCEP-Anforderung (Minuten - Zeitdauer (in Minuten)), dass das Kennwort gültig ist. Der gültige Bereich liegt zwischen 1 und 1440 Minuten. Der Standardwert ist 60 Minuten.
Hinweis: Es ist jeweils nur ein OTP gültig. Wenn ein zweites OTP generiert wird, ist das vorherige OTP nicht mehr gültig.
crypto pki server cs-label widerrufen certificate-serial-number - Widerruft ein Zertifikat anhand seiner Seriennummer.
crypto pki server cs-label anforderung pkcs10 {url url | terminal} [pem]: Fügt der Anforderungsdatenbank manuell entweder die Registrierungsanforderung für das Base64- oder das PEM PKCS10-Zertifikat hinzu.
crypto pki server cs-label info crl: Zeigt Informationen zum Status der aktuellen Zertifikatsperrliste an.
crypto pki server cs-label info request - Zeigt alle ausstehenden Zertifikatregistrierungsanfragen an.
Weitere Informationen zur Überprüfung finden Sie im Abschnitt Überprüfen des generierten Schlüsselpaars in diesem Dokument.
Informationen zur Fehlerbehebung finden Sie unter IP Security Troubleshooting - Understanding and Using debug Commands.
Hinweis: In vielen Situationen können Sie die Probleme lösen, wenn Sie den CA-Server löschen und neu definieren.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
30-Mar-2004 |
Erstveröffentlichung |