In diesem Dokument werden die Schritte zum Konfigurieren von Secure Copy (SCP) beschrieben, um Protokolle in Secure Web Appliance (SWA) automatisch auf einen anderen Server zu kopieren.
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:
Cisco empfiehlt Folgendes:
Dieses Dokument ist nicht auf bestimmte Software- und Hardware-Versionen beschränkt.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Das Verhalten von Secure Copy (SCP) ähnelt dem von Remote Copy (RCP), das aus der Berkeley r-tools Suite (Berkeley University Own Set of Networking Applications) stammt, mit der Ausnahme, dass SCP aus Sicherheitsgründen auf Secure Shell (SSH) basiert. Darüber hinaus muss die AAA-Autorisierung (Authentication, Authorization, Accounting) gemäß SCP konfiguriert werden, damit das Gerät feststellen kann, ob der Benutzer über die richtige Privilegstufe verfügt.
Die Methode "SCP auf Remote-Server" (entspricht "SCP Push") kopiert regelmäßig Protokolldateien auf einen Remote-Server, indem SCP auf einen Remote-SCP-Server angewendet wird. Für diese Methode ist ein SSH-SCP-Server auf einem Remotecomputer mit SSH2-Protokoll erforderlich. Das Abonnement erfordert einen Benutzernamen, einen SSH-Schlüssel und ein Zielverzeichnis auf dem Remotecomputer. Protokolldateien werden basierend auf einem von Ihnen festgelegten Rollover-Zeitplan übertragen.
Sie können für jeden Protokolldateityp mehrere Protokoll-Subscriptions erstellen. Abonnements enthalten Konfigurationsdetails für Archivierung und Speicherung, darunter:
AsyncOS archiviert (rollt über) Protokoll-Subscriptions, wenn eine aktuelle Protokolldatei eine vom Benutzer angegebene maximale Dateigröße oder maximale Zeit seit dem letzten Rollover erreicht.
Diese Archivierungseinstellungen sind in Protokoll-Subscriptions enthalten:
Sie können Protokolldateien auch manuell archivieren (Rollover).
Schritt 1. Wählen Sie Systemverwaltung > Protokoll-Subscriptions.
Schritt 2.Aktivieren Sie das Kontrollkästchen in der Spalte Rollover der zu archivierenden Protokoll-Subscriptions, oder aktivieren Sie das Kontrollkästchen Alle, um alle Subscriptions auszuwählen.
Schritt 3:Klicken Sie auf Jetzt überspielen, um die ausgewählten Protokolle zu archivieren.
Bild - Benutzeroberfläche für Rollover jetzt
Es gibt zwei Hauptschritte für den Protokollabruf auf einem Remote-Server mit SCP von SWA:
Schritt 1: Melden Sie sich bei SWA an, und wählen Sie unter "Systemverwaltung" die Option "Protokoll-Subscriptions".
Bild - Protokollabonnements auswählen
Schritt 2. Wählen Sie auf der Seite Log Subscriptions (Protokollabonnements) die Option Add Log Subscription (Protokollabonnement hinzufügen):
Abbild - Wählen Sie Protokollabonnement hinzufügen.
Schritt 3: Wählen Sie Protokolltyp aus. In diesem Beispiel wurde Zugriffsprotokoll ausgewählt.
Schritt 4: Geben Sie einen Namen für Ihr Protokoll-Abonnement ein.
Schritt 5. (Optional) Sie können den Rollover nach Dateigröße ändern.
Schritt 6: Wählen Sie unter Retrieval method (Abrufmethode) die Option SCP on Remote Server (SCP auf Remote-Server).
Schritt 7. Geben Sie diese Informationen für Ihre Remote-Server ein:
Bild: Protokollparameter konfigurieren
Anmerkung: In diesem Beispiel lautet der Benutzername wsascp, und der Remote-Server ist das Betriebssystem Microsoft Windows. Ein Ordner wurde im Ordner c:\users\wccpscp erstellt (dies ist der Benutzerprofilordner in Microsoft).
Tipp: Sie können einfach den Namen des Ordners eingeben. In diesem Beispiel ist es wsa01.
Schritt 8: Änderungen übermitteln.
Schritt 9: Speichern Sie den SSH-Schlüssel in einer Textdatei zur weiteren Verwendung im Konfigurationsabschnitt des Remote-SCP-Servers.
Anmerkung: Sie müssen beide Zeilen kopieren, beginnend mit ssh- und endend mit root@<SWA hostname> .
Bild - Speichern Sie den SSH-Schlüssel zur weiteren Verwendung.
Schritt 10: Änderungen bestätigen.
Schritt 11: Um einen Benutzer für den SCP-Dienst zu erstellen, navigieren Sie zu Computer Management:
Anmerkung: Wenn Sie bereits einen Benutzer für die SCP haben, fahren Sie mit Schritt 16 fort.
Schritt 12: Wählen Sie Lokale Benutzer und Gruppen und dann Benutzer aus dem linken Bereich aus.
Schritt 13. Klicken Sie mit der rechten Maustaste auf die Hauptseite und wählen Sie neuen Benutzer.
Image - Erstellen eines Benutzers für den SCP-Service.
Schritt 14: Geben Sie den Benutzernamen und das gewünschte Kennwort ein.
Schritt 15: Wählen Sie Kennwort läuft nie ab.
Schritt 16. Klicken Sie auf Erstellen, und schließen Sie dann das Fenster.
Bild: Geben Sie neue Benutzerinformationen ein.
Schritt 17: Melden Sie sich mit dem neu erstellten Benutzer beim Remote-SCP-Server an, um das Profilverzeichnis zu erstellen.
Anmerkung: Wenn Sie OpenSSL auf Ihrem Remote SCP-Server installiert haben, fahren Sie mit Schritt 19 fort.
Schritt 18. Öffnen Sie PowerShell mit Administratorrechten (Als Administrator ausführen), und führen Sie diesen Befehl aus, um die Voraussetzungen zu überprüfen:
(New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Wenn die Ausgabe True ist, können Sie fortfahren. Wenden Sie sich andernfalls an das Microsoft-Supportteam,
Schritt 19: Führen Sie Folgendes aus, um OpenSSH mit PowerShell mit Administratorrechten (Als Administrator ausführen) zu installieren:
# Install the OpenSSH Client
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
# Install the OpenSSH Server
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Hier ein Beispiel für erfolgreiche Ergebnisse:
Path :
Online : True
RestartNeeded : False
Image: Installation von OpenSSH in PowerShell
Vorsicht: Wenn RestartNeeded auf True festgelegt ist, starten Sie Windows neu.
Weitere Informationen zur Installation auf anderen Versionen von Microsoft Windows finden Sie unter Erste Schritte mit OpenSSH für Windows | Microsoft Lernen.
Schritt 20. Öffnen Sie eine normale (nicht erhöhte) PowerShell-Sitzung, und generieren Sie ein Paar RSA-Schlüssel mithilfe des folgenden Befehls:
ssh-keygen -t RSA
Wenn der Befehl beendet ist, sehen Sie, dass der Ordner .ssh Ihr Benutzerprofilverzeichnis erstellt hat.
Bild - RSA-Schlüssel generieren
Schritt 21. Starten Sie den SSH-Dienst von PowerShell mit Administratorrechten (Ausführen als Administrator) aus.
Start-Service sshd
Schritt 22. (Optional, aber empfohlen) Ändern Sie den Dienststarttyp in Automatisch mit Administratorrechten (Als Administrator ausführen).
Set-Service -Name sshd -StartupType 'Automatic'
Schritt 23: Bestätigen Sie, dass die Firewall-Regel erstellt wurde, um den Zugriff auf den TCP-Port 22 zuzulassen.
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}
Schritt 24: Bearbeiten Sie die SSH-Konfigurationsdatei unter: %programdata%\ssh\sshd_config im Editor, Entfernen des # für RSA und DSA.
HostKey __PROGRAMDATA__/ssh/ssh_host_rsa_key
HostKey __PROGRAMDATA__/ssh/ssh_host_dsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ecdsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ed25519_key
Schritt 25: Bearbeiten Sie die Verbindungsbedingungen in %programdata%\ssh\sshd_config. In diesem Beispiel gilt die Listen-Adresse für alle Schnittstellen-Adressen. Sie können diese Einstellung an das Bereitstellungsdesign anpassen.
Port 22
#AddressFamily any
ListenAddress 0.0.0.0
Schritt 26. Markieren Sie diese beiden Zeilen am Ende der Datei %programdata%\ssh\sshd_config, indem Sie # am Anfang jeder Zeile hinzufügen:
# Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
Schritt 27. (Optional) Bearbeiten Sie die strikten Modi in %programdata%\ssh\sshd_config. Dieser Modus ist standardmäßig aktiviert und verhindert die auf dem SSH-Schlüssel basierende Authentifizierung, wenn private und öffentliche Schlüssel nicht ordnungsgemäß geschützt sind.
Kommentarlos die Zeile #StrictModes yes entfernen und in StrictModes no ändern:
StrictModes No
Schritt 28. Entfernen Sie das # aus dieser Zeile in %programdata%\ssh\sshd_config, um die Authentifizierung mit öffentlichem Schlüssel zu ermöglichen.
PubkeyAuthentication yes
Schritt 29: Erstellen Sie eine Textdatei authorized_keys im Ordner ".ssh", und fügen Sie den öffentlichen SWA-RSA-Schlüssel ein (der in Schritt 9 erfasst wurde):
Bild - Öffentlicher SWA-Schlüssel
Anmerkung: Kopieren Sie die gesamte Zeile, beginnend mit ssh-rsa und endend mit root@<Ihr_SWA_Hostname>.
Tipp: Da RSA auf dem SCP-Server installiert ist, muss der Schlüssel ssh-dss nicht eingefügt werden.
Schritt 30: Aktivieren Sie den OpenSSH Authentication Agent in PowerShell mit Administrator-Berechtigung (Als Administrator ausführen).
Set-Service -Name ssh-agent -StartupType 'Automatic'
Start-Service ssh-agent
Image: Open SSH Authentication Agent aktivieren
Schritt 31. (Optional) Fügen Sie diese Zeile zu %programdata%\ssh\sshd_config hinzu, um folgende Schlüsseltypen zuzulassen:
PubkeyAcceptedKeyTypes ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa,ssh-dss
Schritt 32: Starten Sie den SSH-Dienst neu. Sie können diesen Befehl in PowerShell mit Administratorrechten (Als Administrator ausführen) verwenden.
restart-Service -Name sshd
Schritt 33: Um zu testen, ob der SCP-Push richtig konfiguriert ist, führen Sie ein Rollover der konfigurierten Protokolle durch, und zwar über die GUI oder die CLI (rollovernow-Befehl):
WSA_CLI> rollovernow scpal
Anmerkung: In diesem Beispiel lautet der Protokollname scpal.
Sie können bestätigen, dass die Protokolle in den definierten Ordner kopiert werden, der in diesem Beispiel c:/Users/wsascp/wsa01 lautete.
Falls Sie die Protokolle auf ein anderes Laufwerk als C übertragen müssen, erstellen Sie einen Link vom Benutzerprofilordner zum gewünschten Laufwerk. In diesem Beispiel werden die Protokolle an D:\WSA_Logs\WSA01 weitergeleitet.
Schritt 1: Erstellen Sie die Ordner im gewünschten Laufwerk.
Schritt 2: Öffnen Sie die Eingabeaufforderung mit Administratorrechten (Ausführen als Administrator).
Schritt 3. Führen Sie diesen Befehl aus, um den Link zu erstellen:
mklink /d c:\users\wsascp\wsa01 D:\WSA_Logs\WSA01
Bild - SYM-Link erstellen
Anmerkung: In diesem Beispiel ist SWA so konfiguriert, dass die Protokolle an den Ordner WSA01 in C:\Users\wsascp weitergeleitet werden. Der SCP-Server hat den Ordner WSA01 als symbolischen Link zu D:\WSA_Logs\WSA01.
Weitere Informationen zu Microsoft Symbol Link finden Sie unter: mklink | Microsoft - Lernen
Prüfen Sie zur Fehlerbehebung beim SCP-Protokoll-Push die Fehler in:
1. CLI > zeigtWarnungen an
2. System_logs
Anmerkung: Um system_logs zu lesen, können Sie den Befehl grep in der CLI verwenden. Wählen Sie die mit system_logs verknüpfte Nummer und beantworten Sie die Frage im Assistenten.
Sie können die SCP-Serverprotokolle in der Microsoft Ereignisanzeige unter Anwendungs- und Dienstprotokolle > OpenSSH > Betriebsbereit lesen:
Bild - PreAuth fehlgeschlagen
"Fehler bei der Überprüfung des Hostschlüssels."
Dieser Fehler weist darauf hin, dass der öffentliche Schlüssel des SCP-Servers, der in SWA gespeichert ist, ungültig ist.
Nachfolgend finden Sie ein Beispiel für einen Fehler bei der Ausgabe von displayAlerts in der CLI:
02 Jan 2024 16:52:35 +0100 Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22:
Last message occurred 68 times between Tue Jan 2 15:53:01 2024 and Tue Jan 2 16:52:31 2024.
Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: Host key verification failed.
Last message occurred 46 times between Tue Jan 2 16:30:19 2024 and Tue Jan 2 16:52:31 2024.
Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: lost connection
Last message occurred 68 times between Tue Jan 2 15:53:01 2024 and Tue Jan 2 16:52:31 2024.
Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: ssh: connect to host 10.48.48.195 port 22: Operation timed out
Last message occurred 22 times between Tue Jan 2 15:53:01 2024 and Tue Jan 2 16:29:18 2024.
Hier sind einige Beispiele für den Fehler in system_logs:
Tue Jan 2 19:49:50 2024 Critical: Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22:
Tue Jan 2 19:49:50 2024 Critical: Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22: lost connection
Tue Jan 2 19:49:50 2024 Critical: Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22: Host key verification failed.
Um dieses Problem zu beheben, können Sie den Host vom SCP-Server kopieren und ihn in die Abonnementseite der SCP-Protokolle einfügen. Siehe Schritt 7 in SWA konfigurieren, um die Protokolle von der GUI an den SCP Remote-Server zu senden, oder wenden Sie sich an das Cisco TAC, um den Host-Schlüssel vom Backend zu entfernen.
"Berechtigung verweigert (publickey,password,keyboard-interactive)."
Dieser Fehler weist normalerweise darauf hin, dass der in SWA angegebene Benutzername ungültig ist.
Beispiel für ein Fehlerprotokoll in system_logs:
Tue Jan 2 20:41:40 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22:
Tue Jan 2 20:41:40 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: lost connection
Tue Jan 2 20:41:40 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: scp@10.48.48.195: Permission denied (publickey,password,keyboard-interactive).
Beispiel für einen Fehler des SCP-Servers: "Ungültiger Benutzer-SCP von <SWA_IP-Adresse> Port <TCP-Port SWA verbindet sich mit SCP-Server>".
Bild - Ungültiger Benutzer
Um diesen Fehler zu beheben, überprüfen Sie die Rechtschreibung und stellen Sie sicher, dass der Benutzer (der in SWA konfiguriert wurde, um die Protokolle zu übertragen) im SCP-Server aktiviert ist.
"Keine solche Datei oder solches Verzeichnis."
Dieser Fehler zeigt an, dass der im SWA-Protokoll-Abonnementabschnitt angegebene Pfad ungültig ist.
Beispiel für einen Fehler in system_logs:
Tue Jan 2 20:47:18 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22:
Tue Jan 2 20:47:18 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: scp: Userswsascpwsa01/aclog.@20240102T204508.s: No such file or directory
Tue Jan 2 20:47:18 2024 Critical: Log Error: Push error for subscription scpal: SCP failed to transfer to 10.48.48.195:22: Sink: C0660 255 aclog.@20240102T204508.s
Um dieses Problem zu lösen, überprüfen Sie die Rechtschreibung und vergewissern Sie sich, dass der Pfad im SCP-Server richtig und gültig ist.
"SCP konnte nicht übertragen werden."
Dieser Fehler kann ein Hinweis auf einen Kommunikationsfehler sein. Beispiel für einen Fehler:
03 Jan 2024 13:23:27 +0100 Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22:
Verwenden Sie den Befehl telnet in der SWA-CLI, um Probleme mit der Verbindung zu beheben:
SWA_CLI> telnet
Please select which interface you want to telnet from.
1. Auto
2. Management (10.48.48.187/24: SWA_man.csico.com)
[1]> 2
Enter the remote hostname or IP address.
[]> 10.48.48.195
Enter the remote port.
[23]> 22
Trying 10.48.48.195...
In diesem Beispiel ist die Verbindung nicht hergestellt. Der erfolgreiche Verbindungsausgang sieht wie folgt aus:
SWA_CLI> telnet
Please select which interface you want to telnet from.
1. Auto
2. Management (10.48.48.187/24: rishi2Man.calo.lab)
[1]> 2
Enter the remote hostname or IP address.
[]> 10.48.48.195
Enter the remote port.
[23]> 22
Trying 10.48.48.195...
Connected to 10.48.48.195.
Escape character is '^]'.
SSH-2.0-OpenSSH_for_Windows_SCP
Wenn das Telnet nicht verbunden ist:
Nachfolgend finden Sie ein Beispiel für eine erfolgreiche Verbindung mit der Paketerfassung:
Bild - Erfolgreiche Paketerfassung
"Kein übereinstimmender Hostschlüsseltyp gefunden"
Dieser Fehler weist darauf hin, dass die von SWA in der Phase des Client Key Exchange bereitgestellten Host Key Algorithmen im SCP-Server nicht übereinstimmen.
Wed Feb 12 20:21:40 2025 Critical: Log Error: Push error for subscription al: SCP failed to transfer to 10.48.48.192:22:
Wed Feb 12 20:21:40 2025 Critical: Log Error: Push error for subscription al: SCP failed to transfer to 10.48.48.192:22: lost connection
Wed Feb 12 20:21:40 2025 Critical: Log Error: Push error for subscription al: SCP failed to transfer to 10.48.48.192:22: info: Unable to negotiate with 10.48.48.192 port 22: no matching host key type found. Their offer: rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519
Um dieses Problem zu beheben, können Sie wie folgt vorgehen:
Schritt 1: Starten Sie eine Paketerfassung in SWA, und filtern Sie nach der IP-Adresse des SCP-Servers.
Schritt 2: Führen Sie einen Rollover für die Protokolldatei aus, um sicherzustellen, dass die Dateien vom SWA an den SCP-Server gesendet werden.
Schritt 3: Beenden Sie die Paketerfassung, und öffnen Sie die Datei.
Schritt 4: Suchen Sie in der Erfassungsdatei nach einem Paket mit dem Client: Geben Sie im Abschnitt Info die Schlüsselaustauschinitialisierung ein.
Schritt 5: Erweitern Sie das SSH-Protokoll, und navigieren Sie zum Abschnitt Algorithmen.
Schritt 6: Überprüfen Sie die Zeichenfolge server_host_key_algorithms (z. B.: server_host_key_algorithmen Zeichenfolge: SSH-RSA)
Schritt 7: Navigieren Sie zum SCP-Server, und bearbeiten Sie die Datei sshd_config.
Schritt 8: Suchen Sie eine Zeile, die mit HostKeyAlgorithms beginnt, und fügen Sie den in Schritt 6 erwähnten unterstützten Host-Schlüssel zur Datei hinzu. (In diesem Beispiel: HostKeyAlgorithms ssh-rsa)
Schritt 9: Speichern Sie die Änderungen, und starten Sie den SSHD-Dienst neu.
| Überarbeitung | Veröffentlichungsdatum | Kommentare |
|---|---|---|
3.0 |
22-Oct-2026
|
Rezertifizierung - Aktualisierter Alternativer Text und Formatierung. |
2.0 |
13-Feb-2025
|
Formatierung, Interpunktion, Grammatik, Stil, SEO. |
1.0 |
11-Jan-2024
|
Erstveröffentlichung |