Introdução
Este documento descreve conceitos básicos e noções básicas associadas à criação de scripts para um host externo executar e recuperar atualizações em relação a um Cisco Email Security Appliance (ESA).
Observação: este artigo é uma prova de conceito e fornecido como base de exemplo. Embora essas etapas tenham sido testadas com êxito, este artigo destina-se principalmente a fins de demonstração e ilustração. Os scripts personalizados estão fora do escopo e da capacidade de suporte da Cisco. O Cisco Technical Assistance não gravará, atualizará ou solucionará problemas de scripts externos personalizados a qualquer momento.
Pré-requisitos
Requisitos
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Scripts de SO e agendamento de tarefas
- Configuração e procedimentos do par de chaves SSH
Como posso automatizar ou criar scripts de backups de arquivos de configuração?
O arquivo de configuração é gerado dinamicamente ao usar o saveconfig ou o mailconfig da CLI, ou as opções de backup associadas através da GUI (Administração do sistema > Arquivo de configuração). Para ter um backup eficaz que possa ser carregado e aplicado a um ESA, é melhor "desmascarar" as senhas. Isso permite que o equipamento coloque uma forma de hash das senhas das contas administrativas locais no arquivo de configuração. Por esse motivo, não podemos simplesmente copiar um arquivo simples de "configuração atual" do dispositivo. Esse método permite acessar primeiro o dispositivo, emitir um comando para criar dinamicamente a configuração atual e salvar ou enviar por e-mail uma cópia desse arquivo para algum lugar remotamente, sem qualquer intervenção do usuário. Uma vez que isso seja realizado, podemos repetir ou agendar essa tarefa para ocorrer regularmente.
Para fazer backup rápido e automático dos arquivos de configuração com senhas desmascaradas:
- Gere um par de chaves SSH para usar e verifique se você pode acessar seu dispositivo via SSH sem ter que inserir uma senha manualmente.
- Crie um script para fazer login no equipamento, salvar a configuração e copiá-la (ou enviá-la por e-mail).
Observação: uma lógica semelhante pode ser aplicada em qualquer linguagem de script de SO, como VB ou scripts em lote para Windows.
Salvando a configuração em um host especificado usando saveconfig
#! /bin/bash
#
# Simple script to save the ESA config, then copy locally via SCP.
#
# $HOSTNAME can be either FQDN or IP address.
HOSTNAME=[FQDN OR IP ADDRESS]
# $USERNAME assumes that you have preconfigured SSH key from this host to your ESA.
USERNAME=admin
FILENAME=`ssh $USERNAME@$HOSTNAME "saveconfig yes" | grep xml | sed -e 's/\/
configuration\///g' | sed 's/\.$//g' | tr -d "\""`
scp $USERNAME@$HOSTNAME:/configuration/$FILENAME .
Depois de tornar o script executável, você deverá ver algo semelhante ao seguinte:
jsmith@linux_server:~$ ./esa_backup
C000V-564D1A718795ACFED603-1A77BAD60A5A-20140902T222913.xml 100% 158KB 157.9KB/
s 00:00
jsmith@linux_server:~$ ls -la
total 1196
drwx------ 10 jsmith jsmith 40960 Sep 2 22:29 .
drwxr-xr-x 13 root root 4096 Aug 13 22:22 ..
-rw-rw---- 1 jsmith jsmith 161642 Sep 2 22:29 C000V-564D1A718795ACFED603-
1A77BAD60A5A-20140902T222913.xml
A execução do comando ls -la lista o conteúdo do diretório no seu sistema local ou host. Você deve verificar o nome do arquivo, o carimbo de data/hora e o tamanho geral do arquivo XML.
Enviando a configuração por e-mail para um endereço de e-mail usando mailconfig
#! /bin/bash
#
# Simple script to email the ESA config to pre-specified email address.
#
# $HOSTNAME can be either FQDN or IP address.
HOSTNAME=[FQDN OR IP ADDRESS]
# $USERNAME assumes that you have preconfigured SSH key from this host to your ESA.
USERNAME=admin
# $MAILDEST is preconfigured email address
MAILDEST=backups@example.com
ssh $USERNAME@$HOSTNAME 'mailconfig $MAILDEST yes'
Programe sua tarefa para ser executada regularmente (UNIX/Linux)
Use o cron (UNIX/Linux) para iniciar o trabalho regularmente. O Cron é orientado por um arquivo crontab (cron table), um arquivo de configuração que especifica os comandos do shell a serem executados periodicamente em um determinado cronograma. Os arquivos crontab são armazenados onde as listas de trabalhos e outras instruções para o daemon cron são mantidas.
O arquivo de configuração cron do UNIX/Linux normalmente segue este formato:
minuto (0-59), hora (0-23, 0 = meia-noite), dia (1-31), mês (1-12), dia da semana (0-6, 0 = domingo), comando
Assim, um bom exemplo de entrada para executar esse script todos os dias às 2:00 seria:
00 02 * * * /home/jsmith/esa_backup
Como posso automatizar ou gerar scripts de backups de arquivos de configuração a partir de um sistema Windows?
Com o procedimento a seguir, você pode fazer backup do arquivo de configuração regularmente a partir de um sistema Windows.
- Instale o emulador de terminal PuTTY.
- Crie um arquivo de texto chamado "send_config" com o comando mailconfig e um endereço de email válido. (Para simplificar, coloque-o em C:\)
mailconfig example@example.com
- Crie um arquivo de texto chamado "send_config_batch" com o seguinte comando PuTTy. (Para simplificar, coloque-o também em C:\)
C:\putty.exe -ssh hostname -l admin -pw password -m C:\send_config.txt
exit
Observação: certifique-se de alterar o nome do host para FQDN ou endereço IP de seu ESA, e a senha para sua senha real para a conta de administrador.
Programar sua tarefa para ser executada regularmente (Windows)
Usando o Agendador de Tarefas ou uma ferramenta de agendamento semelhante no Windows, localize e adicione "send_config_batch" às tarefas agendadas do Windows.
O arquivo de configuração do ESA será enviado para o endereço especificado no arquivo de texto "send_config", conforme especificado.
Observação: este artigo é uma prova de conceito e fornecido como base de exemplo. Embora essas etapas tenham sido testadas com êxito, este artigo destina-se principalmente a fins de demonstração e ilustração. Os scripts personalizados estão fora do escopo e da capacidade de suporte da Cisco. O Cisco Technical Assistance não gravará, atualizará ou solucionará problemas de scripts externos personalizados a qualquer momento.
Informações Relacionadas