Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit les étapes de configuration de Secure Copy (SCP) pour copier automatiquement les journaux dans Secure Web Appliance (SWA) vers un autre serveur.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Cisco recommande que vous ayez :
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
Le comportement de Secure Copy (SCP) est similaire à celui de la copie distante (RCP), qui provient de la suite Berkeley r-tools (propre ensemble d'applications réseau de l'université Berkeley), à ceci près que SCP s'appuie sur Secure Shell (SSH) pour la sécurité. En outre, la SCP exige que l'authentification, l'autorisation et la comptabilisation (AAA) d'autorisation soient configurées afin que le périphérique puisse déterminer si l'utilisateur a le niveau de privilège correct
La méthode SCP sur le serveur distant (équivalente à SCP Push) envoie périodiquement des fichiers journaux par le protocole de copie sécurisée à un serveur SCP distant. Cette méthode nécessite un serveur SSH SCP sur un ordinateur distant avec le protocole SSH2. L'abonnement nécessite un nom d'utilisateur, une clé SSH et un répertoire de destination sur l'ordinateur distant. Les fichiers journaux sont transférés en fonction d'un calendrier de transfert que vous avez défini.
Vous pouvez créer plusieurs abonnements au journal pour chaque type de fichier journal. Les abonnements incluent les détails de configuration pour l'archivage et le stockage, notamment :
Archive (transfert) AsyncOS des abonnements aux journaux lorsqu'un fichier journal en cours atteint une limite spécifiée par l'utilisateur de taille de fichier maximale ou de temps maximal depuis la dernière substitution.
Ces paramètres d'archivage sont inclus dans les abonnements aux journaux :
Vous pouvez également archiver manuellement les fichiers journaux (de substitution).
Étape 1. Choisissez System Administration > Log Subscriptions.
Étape 2. Cochez la case dans la colonne Survol du journal des abonnements à archiver ou cochez la case Tous pour sélectionner tous les abonnements.
Étape 3. Cliquez sur Rollover Now pour archiver les journaux sélectionnés.
Il existe deux étapes principales pour que la récupération du journal sur un serveur distant avec SCP à partir de SWA :
Étape 1. Connectez-vous à SWA et, dans Administration système, choisissez Log Subscriptions.
Étape 2. Sur la page Inscriptions au journal, choisissez Ajouter une inscription au journal.
Étape 3. Sélectionnez Type de journal. Dans cet exemple, le journal d'accès a été sélectionné
Étape 4. Saisissez un nom pour votre inscription au journal
Étape 5. (Facultatif) Vous pouvez modifier la substitution par taille de fichier
Étape 6. Dans Méthode de récupération, choisissez SCP sur le serveur distant
Étape 7. Entrez les informations relatives à vos serveurs distants :
Remarque : dans cet exemple, le nom d'utilisateur est wsascp et le serveur distant est le système d'exploitation Microsoft Windows. Nous avons créé un dossier wsa01 dans le dossier c:\users\wccpscp (qui est le dossier du profil utilisateur dans Microsoft).
Conseil : vous pouvez simplement taper le nom du dossier, dans cet exemple est wsa01
Étape 8. Soumettre les modifications.
Étape 9. Enregistrez la clé SSH dans un fichier texte pour une utilisation ultérieure dans la section de configuration du serveur SCP distant.
Remarque : vous devez copier les deux lignes commençant par ssh- et se terminant par root@<SWA hostname> .
Étape 10. Valider les modifications.
Étape 10. Pour créer un utilisateur pour votre service SCP, accédez à Gestion de l'ordinateur :
Remarque : si vous avez déjà un utilisateur pour SCP, passez à l'étape 16.
Étape 11. Sélectionnez Utilisateurs locaux et groupe, puis choisissez Utilisateurs dans le volet de gauche.
Étape 12. Cliquez avec le bouton droit de la souris sur la page principale et choisissez nouvel utilisateur.
Étape 13. Saisissez le nom d'utilisateur et le mot de passe souhaité.
Étape 14. Sélectionnez Password Never Expired.
Étape 15. Cliquez sur Créer, puis fermez la fenêtre.
Étape 16. Connectez-vous au serveur Remote SCP avec le nouvel utilisateur pour créer le répertoire de profil.
Remarque : si OpenSSL est installé sur votre serveur Remote SCP, passez à l'étape 19.
Étape 17. Ouvrez PowerShell avec des privilèges d'administrateur ( Exécuter en tant qu'administrateur ) et exécutez cette commande pour vérifier les conditions requises :
(New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Si le résultat est True, vous pouvez continuer. Sinon, contactez l'équipe de support technique Microsoft,
Étape 18. Pour installer OpenSSH à l'aide de PowerShell avec le privilège Administrateur ( Exécuter en tant qu'administrateur ), exécutez :
# 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
Voici un exemple de résultats positifs :
Path :
Online : True
RestartNeeded : False
Attention : si RestartNeeded est défini sur True, redémarrez Windows .
Pour plus d'informations sur l'installation sur d'autres versions de Microsoft Windows, visitez ce lien : Get started with OpenSSH for Windows | Microsoft Learn
Étape 19.Ouvrez une session PowerShell normale (non élevée) et générez une paire de clés RSA à l'aide de la commande suivante :
ssh-keygen -t RSA
Une fois la commande terminée, vous pouvez voir que le dossier .ssh a créé votre répertoire de profil utilisateur.
Étape 20. Démarrez le service SSH à partir de PowerShell avec le privilège Administrateur ( Exécuter en tant qu'administrateur ).
Start-Service sshd
Étape 21. (Facultatif mais recommandé) Remplacez le type de démarrage du service par Automatique, avec le privilège Administrateur ( Exécuter en tant qu'administrateur ).
Set-Service -Name sshd -StartupType 'Automatic'
Étape 22. Vérifiez que la règle de pare-feu autorisant l'accès au port TCP 22 a été créée.
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."
}
Étape 23. Modifiez le fichier de configuration SSH situé dans : %programdata%\ssh\sshd_config dans le bloc-notes et supprimez le # pour RSA et 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
Étape 24. Modifiez les conditions de connexion dans %programdata%\ssh\sshd_config. Dans cet exemple, l'adresse d'écoute est pour toutes les adresses d'interface. Vous pouvez le personnaliser en fonction de votre conception.
Port 22
#AddressFamily any
ListenAddress 0.0.0.0
Étape 25. Marquez ces deux lignes à la fin du fichier %programdata%\ssh\sshd_config en ajoutant # au début de chaque ligne :
# Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
Étape 26.(Facultatif) Modifiez les modes stricts dans %programdata%\ssh\sshd_config. Par défaut, ce mode est activé et empêche l'authentification SSH basée sur des clés si les clés privées et publiques ne sont pas correctement protégées.
Décommentez la ligne #StrictModes yes et changez-la en StrictModes no :
StrictModes No
Étape 27. Supprimez le # de cette ligne dans %programdata%\ssh\sshd_config pour autoriser l'authentification par clé publique
PubkeyAuthentication yes
Étape 28. Créez un fichier texte "authorized_keys" dans le dossier .ssh et collez la clé publique RSA SWA (qui a été collectée à l'étape 9)
Remarque : copiez la ligne entière commençant par ssh-rsa et se terminant par root@<your_SWA_hostname>
Conseil : RSA étant installé sur le serveur SCP, il n'est pas nécessaire de coller la clé ssh-dss
Étape 29. Activez « OpenSSH Authentication Agent » dans PowerShell avec le privilège Administrateur (Exécuter en tant qu'administrateur).
Set-Service -Name ssh-agent -StartupType 'Automatic'
Start-Service ssh-agent
Étape 30.(Facultatif) Ajoutez cette ligne à %programdata%\ssh\sshd_config pour autoriser les types de clés :
PubkeyAcceptedKeyTypes ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa,ssh-dss
Étape 31. Redémarrez le service SSH. Vous pouvez utiliser cette commande à partir de PowerShell avec le privilège Administrateur ( Exécuter en tant qu'administrateur )
restart-Service -Name sshd
Étape 32. Pour vérifier si la transmission SCP est configurée correctement, placez le pointeur sur les journaux configurés, vous pouvez le faire à partir de l'interface graphique utilisateur ou de l'interface de ligne de commande (commande rollovernow) :
WSA_CLI> rollovernow scpal
Remarque : dans cet exemple, le nom du journal est « scpal ».
Vous pouvez confirmer que les journaux sont copiés dans le dossier défini, qui dans cet exemple était c:/Users/wsascp/wsa01
si vous devez pousser les journaux vers un lecteur différent de C:, créez un lien du dossier profil utilisateur vers le lecteur souhaité. Dans cet exemple, les journaux sont envoyés à D:\WSA_Logs\WSA01 .
Étape 1 : création des dossiers dans le lecteur souhaité, dans cet exemple
Étape 2. Ouvrir l'invite de commandes avec le privilège Administrateur ( Exécuter en tant qu'administrateur )
Étape 3. Exécutez cette commande pour créer le lien :
mklink /d c:\users\wsascp\wsa01 D:\WSA_Logs\WSA01
Remarque : dans cet exemple, SWA est configuré pour pousser les journaux vers le dossier WSA01 dans C:\Users\wsascp , et le serveur SCP a le dossier WSA01 comme lien symbolique vers D:\WSA_Logs\WSA01
Pour plus d'informations sur Microsoft Symbol Link, consultez la page : mklink | Microsoft Learn
Pour dépanner la transmission du journal SCP, vérifiez les erreurs dans :
1. CLI > afficher les alertes
2. Journaux_système
Remarque : pour lire system_logs, vous pouvez utiliser la commande grep dans CLI , choisir le numéro associé à system_logs et répondre à la question dans l'assistant.
Vous pouvez lire les journaux du serveur SCP dans Microsoft Event Viewer, dans Applications and Services Logs > OpenSSH > Operational
Cette erreur indique que la clé publique du serveur SCP stockée dans SWA n'est pas valide.
Voici un exemple d'erreur de la sortie de display alerts dans 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.
Voici quelques exemples d'erreurs dans 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.
Pour résoudre ce problème, vous pouvez copier l'hôte à partir du serveur SCP et le coller dans la page d'abonnement aux journaux SCP.
Reportez-vous à l'étape 7 de Configurer SWA pour envoyer les journaux au serveur distant SCP à partir de l'interface utilisateur graphique ou vous pouvez contacter le TAC Cisco pour supprimer la clé d'hôte du serveur principal.
Cette erreur indique généralement que le nom d'utilisateur fourni dans SWA n'est pas valide.
Voici un exemple de journal d'erreurs dans 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).
Voici un exemple d'erreur du serveur SCP : Utilisateur non valide SCP du port <adresse_IP_SWA> <port TCP SWA se connecte au serveur SCP>
Pour résoudre cette erreur, vérifiez l'orthographe et assurez-vous que l'utilisateur (configuré dans SWA pour pousser les journaux) est activé dans le serveur SCP.
Aucun fichier ou répertoire de ce type
Cette erreur indique que le chemin d'accès fourni dans la section d'abonnement aux journaux SWA n'est pas valide,
Voici un exemple d'erreur de 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
Pour résoudre ce problème, vérifiez l'orthographe et assurez-vous que le chemin est correct et valide dans le serveur SCP.
cette erreur peut être un indicateur d'une erreur de communication. Voici un exemple d'erreur :
03 Jan 2024 13:23:27 +0100 Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22:
Pour dépanner la connectivité, utilisez la commande telnet dans l'interface de ligne de commande SWA :
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...
Dans cet exemple, la connexion n'est pas établie. La connexion réussie est la suivante :
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
Si la connexion Telnet n’est pas établie :
[1] Vérifiez si le pare-feu du serveur SCP bloque l'accès.
[2] Vérifiez si des pare-feu bloquent l'accès sur le chemin entre le serveur SWA et le serveur SCP.
[3] Vérifiez si le port TCP 22 est à l'état d'écoute dans le serveur SCP .
[4] Exécutez la capture de paquets dans les serveurs SWA et SCP pour une analyse plus approfondie.
Voici un exemple de capture de paquets d'une connexion réussie :
Recommandations relatives aux meilleures pratiques pour les appareils de sécurité Web Cisco - Cisco
Premiers pas avec OpenSSH pour Windows | Microsoft Learn
Authentification par clé dans OpenSSH pour Windows | Microsoft Learn
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
11-Jan-2024 |
Première publication |