O conjunto de documentação deste produto faz o possível para usar uma linguagem imparcial. Para os fins deste conjunto de documentação, a imparcialidade é definida como uma linguagem que não implica em discriminação baseada em idade, deficiência, gênero, identidade racial, identidade étnica, orientação sexual, status socioeconômico e interseccionalidade. Pode haver exceções na documentação devido à linguagem codificada nas interfaces de usuário do software do produto, linguagem usada com base na documentação de RFP ou linguagem usada por um produto de terceiros referenciado. Saiba mais sobre como a Cisco está usando a linguagem inclusiva.
A Cisco traduziu este documento com a ajuda de tecnologias de tradução automática e humana para oferecer conteúdo de suporte aos seus usuários no seu próprio idioma, independentemente da localização. Observe que mesmo a melhor tradução automática não será tão precisa quanto as realizadas por um tradutor profissional. A Cisco Systems, Inc. não se responsabiliza pela precisão destas traduções e recomenda que o documento original em inglês (link fornecido) seja sempre consultado.
Este documento descreve as etapas para configurar o Secure Copy (SCP) para copiar automaticamente logs no Secure Web Appliance (SWA) para outro servidor.
A Cisco recomenda que você tenha conhecimento destes tópicos:
A Cisco recomenda que você:
Este documento não se restringe a versões de software e hardware específicas.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
O comportamento do Secure Copy (SCP) é semelhante ao do Remote Copy (RCP), que vem do conjunto de ferramentas r de Berkeley (conjunto próprio de aplicativos de rede da universidade de Berkeley), exceto que o SCP depende do Secure Shell (SSH) para segurança. Além disso, o SCP exige que a autorização de autenticação, autorização e contabilização (AAA) seja configurada para que o dispositivo possa determinar se o usuário tem o nível de privilégio correto
O método SCP no servidor remoto (equivalente ao SCP Push) envia periodicamente arquivos de log pelo protocolo de cópia segura para um servidor SCP remoto. Este método requer um servidor SSH SCP em um computador remoto com o protocolo SSH2. A assinatura requer um nome de usuário, uma chave SSH e um diretório de destino no computador remoto. Os arquivos de log são transferidos com base em uma programação de transferência definida por você.
Você pode criar várias inscrições de log para cada tipo de arquivo de log. As assinaturas incluem detalhes de configuração para arquivamento e armazenamento, incluindo:
O AsyncOS arquiva (faz rollover) assinaturas de log quando um arquivo de log atual atinge um limite especificado pelo usuário de tamanho máximo de arquivo ou tempo máximo desde a última rollover.
Estas configurações de arquivamento estão incluídas nas inscrições de log:
Você também pode arquivar manualmente (rollover) arquivos de log.
Etapa 1. Escolha System Administration > Log Subscriptions.
Etapa 2. Marque a caixa de seleção na coluna Sobreposição das assinaturas de log para arquivamento ou marque a caixa de seleção Todas para selecionar todas as assinaturas.
Etapa 3 .Clique em Rollover Now para arquivar os logs selecionados.
Imagem - GUI Rollover Now
Há duas etapas principais para a recuperação de logs em um servidor remoto com SCP do SWA:
Etapa 1. Faça login no SWA e, em Administração do sistema, escolha Inscrições de log.
Imagem - Escolha Inscrições de Log
Etapa 2. Na página Inscrições de log, escolha Adicionar inscrição de log.
Imagem - Escolha Adicionar Inscrição de Log
Etapa 3. Escolha Tipo de log. Neste exemplo, o Log de acesso foi selecionado
Etapa 4. Insira um nome para sua Inscrição de Log
Etapa 5. (Opcional) Você pode alterar a sobreposição por tamanho do arquivo
Etapa 6. No método de recuperação, escolha SCP no servidor remoto
Passo 7. Insira as informações para seus servidores remotos:
Imagem - Configurar parâmetros de log
Observação: neste exemplo, o nome de usuário é wsascp e o servidor remoto é o sistema operacional Microsoft Windows, criamos uma pasta wsa01 na c:\users\wccpscp (que é a pasta de perfil do usuário na Microsoft).
Dica: você pode simplesmente digitar o nome da pasta, neste exemplo é wsa01
Etapa 8. Enviar alterações.
Etapa 9. Salve a chave SSH em um arquivo de texto para uso posterior na seção de configuração do servidor SCP remoto.
Observação: você precisa copiar as duas linhas, começando com ssh- e terminando com root@<SWA hostname> .
Imagem - Salve a chave SSH para uso posterior.
Etapa 10. Confirmar alterações.
Etapa 10. Para criar um usuário para o serviço SCP, vá até Gerenciamento do Computador:
Observação: se você já tiver um usuário para SCP, vá para a Etapa 16.
Etapa 11. Selecione Usuários locais e grupo e escolha Usuários no painel esquerdo.
Etapa 12. Clique com o botão direito do mouse na página principal e escolha novo usuário.
Imagem - Criar um usuário para o serviço SCP.
Etapa 13. Digite o nome de usuário e a senha desejada.
Etapa 14. Escolha Password Never Expired.
Etapa 15. Clique em Criar e feche a janela.
Imagem - Insira as informações do novo usuário.
Etapa 16. Faça login no servidor SCP Remoto com o usuário recém-criado para que o diretório de perfil seja criado.
Observação: se você tiver o OpenSSL instalado em seu servidor SCP Remoto, vá para a etapa 19.
Etapa 17. Abra o PowerShell com privilégios de Administrador ( Executar como Administrador ) e execute este comando para verificar os pré-requisitos:
(New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Se a saída for True, você poderá continuar. Caso contrário, verifique com a equipe de suporte da Microsoft,
Etapa 18. Para instalar o OpenSSH usando o PowerShell com privilégio de Administrador ( Executar como Administrador ), execute :
# 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
Aqui está um exemplo de resultados bem-sucedidos:
Path :
Online : True
RestartNeeded : False
Imagem - Instalar o OpenSSH no PowerShell
Cuidado: se RestartNeeded estiver definido como True, reinicialize o Windows .
Para obter mais informações sobre a instalação em outras versões do Microsoft Windows, visite este link: Introdução ao OpenSSH para Windows | Aprender da Microsoft
Etapa 19.Abra uma sessão normal (não elevada) do PowerShell e gere um par de chaves RSA usando o comando:
ssh-keygen -t RSA
Após a conclusão do comando, você poderá ver que a pasta .ssh criou seu diretório de perfil de usuário.
Imagem - Gerar chave RSA
Etapa 20. Inicie o serviço SSH do PowerShell com privilégio de Administrador ( Executar como Administrador ).
Start-Service sshd
Etapa 21. (Opcional, mas recomendado ) Alterar o tipo de inicialização do serviço para Automático, com privilégio de Administrador ( Executar como Administrador ).
Set-Service -Name sshd -StartupType 'Automatic'
Etapa 22. Confirme se a regra de firewall para permitir o acesso à porta TCP 22 foi criada.
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."
}
Etapa 23. Edite o arquivo de configuração SSH localizado em : %programdata%\ssh\sshd_config no bloco de notas e remova o # para RSA e 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
Etapa 24. Edite as condições de conexão em %programdata%\ssh\sshd_config. Neste exemplo, o endereço de escuta é para todos os endereços de interfaces. Você pode personalizá-lo devido ao seu design.
Port 22
#AddressFamily any
ListenAddress 0.0.0.0
Etapa 25. Marque essas duas linhas no final do %programdata%\ssh\sshd_config adicionando # no início de cada linha:
# Match Group administrators
# AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
Etapa 26.(Opcional) Edite os Modos Estritos em %programdata%\ssh\sshd_config. Por padrão, esse modo está habilitado e impede a autenticação baseada em chave SSH se as chaves privadas e públicas não estiverem adequadamente protegidas.
Descomente a linha #StrictModes sim e altere-a para StrictModes no:
StrictModes No
Etapa 27. Remova o #desta linha para %programdata%\ssh\sshd_config para permitir a autenticação de chave pública
PubkeyAuthentication yes
Etapa 28. Crie um arquivo de texto "authorized_keys" na pasta .ssh e cole a chave RSA pública do SWA (que foi coletada na etapa 9)
Imagem - Chave pública SWA
Observação: copie a linha inteira começando com ssh-rsa e terminando com root@<your_SWA_hostname>
Dica: como o RSA está instalado no servidor SCP, não há necessidade de colar a chave ssh-dss
Etapa 29. Habilite o "OpenSSH Authentication Agent" no PowerShell com privilégio de Administrador (Executar como Administrador).
Set-Service -Name ssh-agent -StartupType 'Automatic'
Start-Service ssh-agent
Imagem - Habilitar o Open SSH Authentication Agent
Etapa 30.(Opcional) Adicione esta linha a %programdata%\ssh\sshd_config para permitir tipos de chave:
PubkeyAcceptedKeyTypes ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa,ssh-dss
Etapa 31. Reinicie o serviço SSH. Você pode usar este comando do PowerShell com privilégio de Administrador ( Executar como Administrador )
restart-Service -Name sshd
Etapa 32. Para testar se o envio de SCP está configurado corretamente, role os logs configurados, você pode fazer isso a partir da GUI ou da CLI (comando rollovernow):
WSA_CLI> rollovernow scpal
Observação: neste exemplo, o nome do log é "scpal".
Você pode confirmar que os logs são copiados para a pasta definida, que neste exemplo era c:/Users/wsascp/wsa01
caso seja necessário enviar os logs para uma unidade diferente de C:, crie um link da pasta de perfil do usuário para a unidade desejada. Neste exemplo, os logs são enviados para D:\WSA_Logs\WSA01 .
Etapa 1. criar as pastas na unidade desejada, neste exemplo
Etapa 2. Abrir Prompt de Comando com privilégio de Administrador ( Executar como Administrador )
Etapa 3. Execute este comando para criar o link:
mklink /d c:\users\wsascp\wsa01 D:\WSA_Logs\WSA01
Imagem - Criar link SYM
Observação: neste exemplo, o SWA é configurado para enviar os logs para a pasta WSA01 em C:\Users\wsascp e o servidor SCP tem a pasta WSA01 como link simbólico para D:\WSA_Logs\WSA01
Para obter mais informações sobre o Microsoft Symbol Link, visite : mklink | Aprender da Microsoft
Para solucionar problemas do envio de registro SCP, verifique os erros em:
1. CLI > exibealertas
2. System_logs
Observação: para ler system_logs, você pode usar o comando grep na CLI , escolher o número associado a system_logs e responder à pergunta no assistente.
Você pode ler os logs do servidor SCP no Visualizador de Eventos da Microsoft, em Logs de Aplicativos e Serviços > OpenSSH > Operacional
Imagem - Falha de PreAuth
Este erro indica que a chave pública do servidor SCP armazenada em SWA é inválida.
Aqui está um exemplo de erro da saída displayalerts na 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.
Aqui estão alguns exemplos de erro em 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.
Para resolver esse problema, você pode copiar o Host do servidor SCP e colá-lo na página de inscrição de logs SCP.
Consulte a etapa 7 em Configurar o SWA para Enviar os registros para o servidor remoto SCP da GUI ou entre em contato com o TAC da Cisco para remover a chave do host do back-end.
Esse erro geralmente indica que o nome de usuário fornecido em SWA é inválido.
Aqui está um exemplo de log de erros em 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).
Aqui está um exemplo de erro do servidor SCP: SCP de usuário inválido da porta <SWA_IP address> <TCP port SWA conecta-se ao servidor SCP>
Imagem - Usuário inválido
Para resolver esse erro, verifique a ortografia e se o usuário (configurado no SWA para enviar os logs) está habilitado no servidor SCP.
O arquivo ou diretório não existe
Este erro indica que o caminho fornecido na seção de inscrição de logs SWA não é válido,
Aqui está um exemplo de erro 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
Para resolver esse problema, verifique a ortografia e se o caminho está correto e válido no servidor SCP.
esse erro pode ser um indicador de um erro de comunicação. Aqui está um exemplo de erro:
03 Jan 2024 13:23:27 +0100 Log Error: Push error for subscription scp: SCP failed to transfer to 10.48.48.195:22:
Para solucionar problemas de conectividade, use o comando telnet na CLI do 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...
Neste exemplo, a conexão não é estabelecida. A conexão de saída bem-sucedida é como:
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
Se o telnet não estiver conectado:
[1] Verifique se o firewall do servidor SCP está bloqueando o acesso.
[2] Verifique se há algum firewall no caminho do SWA para o servidor SCP bloqueando o acesso.
[3] Verifique se a porta TCP 22 está em um estado de escuta no servidor SCP.
[4] Execute a captura de pacotes em ambos os servidores SWA e SCP para análise posterior.
Aqui está um exemplo de Captura de Pacotes de conexão bem-sucedida:
Imagem - Captura de pacote de conexão bem-sucedida
Diretrizes de práticas recomendadas do Cisco Web Security Appliance - Cisco
Introdução ao OpenSSH para Windows | Aprender da Microsoft
Configurando a autenticação de chave pública SSH no Windows | Hub de SO Windows (woshub.com)
Autenticação baseada em chave no OpenSSH para Windows | Aprender da Microsoft
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
11-Jan-2024 |
Versão inicial |