Inhoud

Inleiding

Voorwaarden

Een configuratie-bestand-back-up van een applicatie in cluster automatiseren of scripts

Back-ups van geavanceerde geautomatiseerde of aangepaste configuratie

Gerelateerde informatie

Inleiding

Dit document beschrijft hoe u batchopdrachten kunt gebruiken om een configuratie uit een apparaat op te slaan in een cluster van de Cisco e-mail security applicatie (ESA). Dit kan worden gebruikt bij alle versies van AsyncOS voor het ESA.

Vóór AsyncOS versie 8.5 konden geclusterde apparatuur geen bruikbare configuratie opslaan om een configuratie op een Cisco ESA te herstellen. Om een bruikbare configuratie van het apparaat te krijgen, moet u het apparaat uit een cluster verwijderen en de configuratie als een standalone apparaat opslaan.

Voorwaarden

Opmerking: Dit artikel is een bewijs van het concept, dat als voorbeeld dient. Hoewel deze stappen met succes zijn getest, is dit artikel voornamelijk bedoeld voor demonstratie- en illustratiedoeleinden. Aangepaste scripts zijn buiten het bereik en de supportabiliteit van Cisco. Het Cisco Technical Assistance Center zal op geen enkel moment aangepaste externe scripts schrijven, bijwerken of problemen oplossen.  Voordat u probeert en alle scripts bouwt, zorg er dan voor dat u de scripting kennis hebt wanneer u het laatste script bouwt.

Verzamel deze informatie van de ESA's in cluster:

- IP-adressen en/of hostname

- Cluster naam

- Cluster groepnaam (indien van toepassing)

Raadpleeg de CLI Reference Guide voor uw versie van AsyncOS voor e-mail security, aangezien er CLI batchwijzigingen zijn die afhangen van de herziening van uw ESA-run.

Lees en begrijp deze TechNotes:

- Hoe kan ik de back-ups van het configuratiebestand automatiseren of afschroeven?

- Hoe kunt u SSH-verificatie configureren voor inloggen op de ESA zonder wachtwoord

Een configuratie-bestand-back-up van een applicatie in cluster automatiseren of scripts

Voor AsyncOS versies eerder dan versie 8.5, wanneer u probeert de configuratie op te slaan terwijl in cluster met het opdracht saveconfig of mailfig, genereert ESA deze waarschuwing:

WARNING: Clustered machines do not support loadconfig. Your configuration file has

complete  data for the entire cluster, but cannot be used to restore a configuration.

In AsyncOS versie 8.5 en hoger bevatten de opgeslagen configuraties nu zowel de configuratie op computerniveau als de clusterconfiguratie. Dit wordt uitvoerig behandeld in versie 8.5 en de latere gebruikershandleiding. Raadpleeg de eindgebruikershandleidingen voor meer informatie.

In een cluster hoeft geen back-ups te worden gemaakt van de configuratie van elk apparaat. Er zouden echter meerdere clusters in een netwerk kunnen zijn, met meerdere groepen die voor elke cluster zijn geconfigureerd. Het is vrij moeilijk om elk apparaat uit het cluster te verwijderen en dan de configuratie op te slaan en het cluster opnieuw handmatig aan te sluiten.

Deze opdrachten kunnen worden gebruikt als u zich in het ESA inlogt, het ESA uit cluster verwijdert, de configuratie opslaat of mailt, en zich vervolgens opnieuw bij het cluster aansluiten.

Om te beginnen is het belangrijk de naam van de machine en het serienummer van de ESA's in cluster en de groepsnaam te kennen. Dit kan worden verkregen als u clusterlijst op de CLI invoert:

(Cluster ESA1_ESA2)> clusterconfig list

Cluster esaA_esaB

=====================

Group Main_Group:

Machine ESA1.local (Serial #: 0000E878109A-G091111)

Machine ESA2.local (Serial #: 0000E878525D-9091111)

Om het apparaat uit cluster te verwijderen, gebruikt u de opdracht clusterconfiguratie removemachine <etsnaam>:

(Cluster ESA1_ESA2)> clusterconfig removemachine ESA1.local

Please wait, this operation may take a minute...

Machine ESA1.local removed from the cluster.

Sla de configuratie met de opdracht Config op met wachtwoorden op het apparaat. Zoals opgemerkt, "Bestanden met gemaskeerde wachtwoorden kunnen niet worden geladen met behulp van de bestandsindeling." Dus, verzeker u ervan om N in te voeren als dit wordt gevraagd:

ESA1.local> saveconfig

Do you want to mask the password? Files with masked passwords cannot be loaded

using loadconfig command. [Y]> n

File written on machine "esaA.local" to the location

"/configuration/C100V-0000E878109A-G091111-20140909T184724.xml".

Configuration saved.

In plaats hiervan kunt u ook mailfig gebruiken om de configuratie naar een geldige e-mailontvanger te e-mailen. Zoals opgemerkt, "Bestanden met gemaskeerde wachtwoorden kunnen niet worden geladen met behulp van de bestandsindeling." Dus, verzeker u ervan om N in te voeren als dit wordt gevraagd:

ESA1.local> mailconfig

Please enter the email address to which you want to send the configuration file.

Separate multiple addresses with commas.

[]> joe@example.com

Do you want to mask the password? Files with masked passwords cannot be loaded

using loadconfig command. [Y]> n

The configuration file has been sent to joe@example.com.

Ten slotte, gebruik het batchcommando in de clusterconfiguratie om het apparaat terug te koppelen naar de cluster:

clusterconfig join [--port=xx] <ip_of_remote_cluster> <admin_username>

<admin_password> <groupname>

Om verder te gaan met het vorige voorbeeld, wordt dit uitgevoerd in deze opdracht:

esaA.local> clusterconfig join --port=22 172.16.6.161 admin ironport Main_Group

Joining a cluster takes effect immediately, there is no need to commit.

(Cluster ESA1_ESA2)>

U merkt de automatische wijziging van de opdrachtmelding in de naam van het cluster-niveau op, zoals in het vorige voorbeeld wordt opgemerkt als "Cluster ESA1_ESA2)".

Back-ups van geavanceerde geautomatiseerde of aangepaste configuratie

Vanuit een externe host (UNIX/Linux/OSX) kunt u de vorige opdrachten gebruiken om het proces te script.

Hier is een voorbeeld van het gehele proces dat in script is geschreven, met de veronderstelling dat de cluster over Secure Shell (SSH), poort 22 loopt:

#! /bin/bash

#

# Script to save the ESA config, then copy locally via SCP. This is assuming you

wish to

# have the cluster in SSH via port 22. This script has been written and tested against

# AsyncOS 9.0.0-390 (01/15/2014).

#

# *NOTE* This script is a proof-of-concept and provided as an example basis. While

these steps have

# been successfully tested, this script is for demonstration and illustration purposes.

Custom

# scripts are outside of the scope and supportability of Cisco. Cisco Technical

Assistance will

# not write, update, or troubleshoot custom external scripts at any time.

#

# <SCRIPT>

#

# $HOSTNAME & $HOSTNAME2 can be either the FQDN or IP address of the ESAs in cluster.

#

HOSTNAME= [IP/HOSTNAME ESA1]

HOSTNAME2= [IP/HOSTNAME ESA2]

#

# $MACHINENAME is the local name for ESA1.

#

MACHINENAME= [MACHINENAME AS LISTED FROM 'clusterconfig list']

#

# $USERNAME assumes that you have preconfigured SSH key from this host to your ESA.

# http://www.cisco.com/c/en/us/support/docs/security/email-security-appliance/

118305-technote-esa-00.html

#

USERNAME=admin

#

# $BACKUP_PATH is the directory location on the local system.

#

BACKUP_PATH= [/local/path/as/desired]

#

# Following will remove ESA1 from cluster in order to backup standalone config.

# "2> /dev/null" at the end of string will quiet any additional output of the

clustermode command.

#

echo "|=== PHASE 1 ===| REMOVING $MACHINENAME FROM CLUSTER"

ssh $USERNAME@$HOSTNAME "clustermode cluster; clusterconfig removemachine

$MACHINENAME" 2> /dev/null

#

# $FILENAME contains the actual script that calls the ESA, issues the 'saveconfig'

command.

# The rest of the string is the cleanup action to reflect only the <model>-

<serial number>-<timestamp>.xml.

#

echo "|=== PHASE 2 ===| BACKUP CONFIGURATION ON ESA"

FILENAME=`ssh -q $USERNAME@$HOSTNAME "saveconfig y 1" | grep xml | sed -e

's/\/configuration\///g' | sed 's/\.$//g' | tr -d "\""`

#

# The 'scp' command will secure copy the $FILENAME from the ESA to specified

backup path, as entered above.

# The -q option for 'scp' will disable the copy meter/progress bar.

#

echo "|=== PHASE 3 ===| COPY XML FROM ESA TO LOCAL"

scp -q $USERNAME@$HOSTNAME:/configuration/$FILENAME $BACKUP_PATH

#

# Following will re-add ESA1 back into cluster.

#

echo "|=== PHASE 4 ===| ADDING $MACHINENAME BACK TO CLUSTER"

ssh $USERNAME@$HOSTNAME "clusterconfig join $HOSTNAME2 admin ironport

Main_Group" 2> /dev/null

#

echo "|=== COMPLETE ===| $FILENAME successfully saved to $BACKUP_PATH"

#

# </SCRIPT>

#

Hier volgt een onderzoek van de belangrijkste opdrachten in het script:

- Verwijder ESA1 uit het cluster:

ssh $USERNAME@$HOSTNAME "clustermode cluster; clusterconfig removemachine

$MACHINENAME" 2> /dev/null

- Zelfstandig configuratie-bestand downloaden:

FILENAME=`ssh -q $USERNAME@$HOSTNAME "saveconfig y 1" | grep xml | sed -e 's/

\/configuration\///g' | sed 's/\.$//g' | tr -d "\""`

- Kopieert de XML van ESA1 naar lokale host:

scp -q $USERNAME@$HOSTNAME:/configuration/$FILENAME $BACKUP_PATH

- Zet ESA1 terug in het cluster.

ssh $USERNAME@$HOSTNAME "clusterconfig join $HOSTNAME2 admin ironport

Main_Group" 2> /dev/null

Een compleet voorbeeld van het script in action moet het volgende opleveren:

my_host$ ./cluster_backup

|=== PHASE 1 ===| REMOVING ESA1.local FROM CLUSTER

Please wait, this operation may take a minute...

Machine ESA1.local removed from the cluster.

|=== PHASE 2 ===| BACKUP CONFIGURATION ON ESA

|=== PHASE 3 ===| COPY XML FROM ESA TO LOCAL

|=== PHASE 4 ===| ADDING ESA1.local BACK TO CLUSTER

Joining a cluster takes effect immediately, there is no need to commit.

|=== COMPLETE ===| C100V-0000E878109A-G091111-20150116T192955.xml successfully

saved to /Users/saved_esa_configurations/

Gerelateerde informatie

- Cisco e-mail security applicatie - eindgebruikershandleidingen

- Technische ondersteuning en documentatie – Cisco Systems