Mise à jour d’une ancienne version d’un FW Cisco asa

 

Il peut parfois être problématique de passer d’une ancienne version d’ios vers une plus récente.
En effet nous pouvons rencontrer certaines incompatibilités : matériel (manque de ram), logiciel (l’ancienne configuration n’est plus compatible).
Ici je vais vous expliquer la procédure que j’ai suivie lors de la migration d’un firewall Cisco asa en version 8 vers la version 9.

La version 9 a besoin pour fonctionner de 512 mo de ram cependant le FW à migrer ne disposait que de 256 mo. Il a donc fallu partir sur un FW neuf, sauvegarder, implémenter et mettre à jour l’ancienne configuration sur le nouveau FW.

Voici un petit exemple de firewall cisco asa :

asa5505

Etape 1 : Sauvegarde de la configuration

 

FW1 : Ancien Firewall
FW2 : Nouveau Firewall

On commence par sauvegarder la configuration du FW1 en TFTP :

[sh]copy system:running-config tftp://192.168.1.110[/sh]

Cette commande va générer et stocker un fichier .cfg sur notre serveur TFTP, celui-ci  contient la configuration de notre FW1.

Renommer votre fichier .cfg en startup-config (sans extention)

Etape 2 : Preparation à la migration du seconde FW

La version flash et asdm du FW1 ne sont pas identiques à celles du FW2 il va falloir donc le downgrade FW2 avant d’appliquer la configuration sauvegarder précédemment.

Pour connaitre la version de la flash :

[sh]show version | include bin[/sh]

Pour connaitre la version de l’asdm

[sh]show asdm image[/sh]

On récupère ensuite les deux .bin (asdm et flash) sur le site de cisco qu’on place à la racine de notre serveur tftp.

Sur notre FW2 on exécute la commande pour copier la nouvelle version de la flash

[sh]copy tftp disk0[/sh]

Address or name of remote host ? IP_SRV_TFTP

Source filename ? VERSION_FLASH_OS (.bin)

Destination filename ? Laisser par défaut

On précise maintenant quelle version d’ios utiliser au FW au prochain reboot

[sh]boot system disk0:/VERSION_FLASH_OS (.bin)[/sh]

on sauvegarde les modifications

[sh]write memory[/sh]

et on redémarre le FW :

[sh]reload noconfirm[/sh]

On vérifie maintenant que la version à bien été downgrade.

[sh]show version | include bin[/sh]

Faite la même chose pour copier le .bin de l’asdm et exécuter la commande suivante pour préciser la version d’asdm à utiliser par le FW au prochain reboot

[sh]asdm image disk0:/VERSION_FLASH_ASDM (.bin)[/sh]

on sauvegarde les modifications

[sh]write memory[/sh]

et on redémarre le FW :

[sh]reload noconfirm[/sh]

Etape 3 : Restauration de la configuration du FW1 vers FW2

 

On va maintenant restaurer la configuration du FW2 avec la configuration du FW1

Pour se faire on upload notre startup-config sur le FW2 en TFTP

[sh]copy tftp disk0[/sh]

Address or name of remote host ? IP_SRV_TFTP

Source filename ? startup-config

Destination filename ? startup-config

On copie maintenant le fichier startup-config contenu dans la flash vers l’espace mémoire dédié à la startup. Lorsque le FW redémarrera il chargera la configuration contenu dans l’espace mémoire de la startup.

[sh]copy flash:/startup-config startup-config[/sh]

On redémare le FW

[sh]reload noconfirm[/sh]

on sauvegarde les modifications

[sh]write memory[/sh]

Etape 4 : Mise à jour de la version

 

Maintenant que notre FW2 dispose de la même configuration que notre FW1 nous allons le mettre à jour dans la dernière version d’ios.

Pour se faire il faut télécharger la dernière version sur le site de cisco et répéter la procédure réaliser toute à l’heure grâce aux commandes suivantes :

[sh]copy tftp disk0[/sh]

[sh]boot system disk0:/VERSION_FLASH_iOS (.bin)[/sh]

[sh]no boot system disk0:/OLD_VERSION_FLASH_iOS (.bin)[/sh]

[sh]reload noconfirm[/sh]

Lors d’un changement majeur de version vous devriez avoir pas mal d’erreur au boot du FW.

Pour le debug vous avez un fichier de log enregistré sur la flash :

[sh]INFO : MIGRATION -Saving the startup errors to file ‘flash:upgrade_startup_errors[/sh]

Vous pouvez le récupérer en tftp avec la commande suivante

[sh]copy disk0:/upgrade_startup_errors_xxxxxxxxx.log tftp:/[/sh]

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.