Comment planifier une restauration VPN d'un routeur avant une modification à distance
Planifiez le chemin de retour vers un routeur avant un changement de VPN distant : testez la page de restauration, prouvez un chemin hors bande et écrivez le déclencheur.
Vous êtes sur le point de modifier le tunnel qui transporte votre propre session, de sorte que le travail qui vous sauve se produit avant le changement, et non pendant le brouillage qui suit. Le filet de sécurité n'est pas sur la page VPN: c'est l'écran de restauration, une console ou un deuxième chemin qui ne passe pas par l'appareil que vous modifiez. Je planifie les trois sur la même interface de routeur que je suis sur le point de modifier, et j'utilise le chemin une fois pendant que tout fonctionne toujours. C'est la procédure pas à pas que je suis, dans l'ordre.
Parcourez le flux de restauration avant d'en avoir besoin
Ouvrez la page qui annulera votre modification. Sur pfSense, c'est Diagnostics > Sauvegarde et restauration; sur OpenWrt, c'est Système > Sauvegarde / Flash Firmware; sur OPNsense, il s'agit de Système > Configuration > Sauvegardes, qui conserve également les révisions précédentes auxquelles vous pouvez revenir sans fichier. Vous ne restaurez rien pour l'instant. Vous vérifiez si cette page s'ouvre à partir du chemin que vous aurez lors du changement, si elle souhaite un redémarrage par la suite et si elle rejette une archive écrite par une version différente du micrologiciel. Netgate documente son propre flux d'exportation et de restauration sur docs.netgate.com.
Une restauration permute toute la configuration, il ne s'agit donc pas d'une annulation d'une règle. L'archive contient les utilisateurs, les certificats, les clés VPN, les règles de pare-feu et les paramètres de l'interface d'administration qui décident qui peut se connecter. C'est pourquoi j'exporte immédiatement avant la modification et nomme le fichier avec la date et le paramètre unique que j'ai l'intention de toucher. La restauration d'un fichier vieux d'un mois restaure également un tunnel vieux d'un mois et une clé vieille d'un mois.
Si la plate-forme ne charge que les archives de la même version, notez-le maintenant: une mise à niveau du micrologiciel et une modification VPN dans une fenêtre vous laissent avec un fichier que le routeur n'acceptera pas.
Prouvez un chemin qui évite le tunnel
Une deuxième session SSH depuis le même ordinateur portable vers la même adresse publique ne constitue pas un deuxième chemin; les deux meurent ensemble. Le chemin indépendant en est un: une console série ou KVM, un hyperviseur ou une console cloud, un VLAN de gestion accessible depuis un hôte qui n'est pas derrière le tunnel, un deuxième modem WAN ou LTE avec sa propre règle d'administration, ou encore une personne sur place.
Testez le chemin choisi pendant que le routeur est sain. Connectez-vous dessus, ouvrez la page VPN et arrêtez-vous avant d'enregistrer. Si une règle de verrouillage lui permet uniquement d'atteindre le tableau de bord, vous avez encore le temps de résoudre ce problème, et la correction doit se situer au-dessus de la règle de refus dans l'ordre des règles.
La plupart des routeurs lient le service d'administration à une interface ou à une famille d'adresses, de sorte qu'une route hors bande doit arriver là où ce service écoute. L'élargissement de la liaison de la fenêtre fonctionne, mais il s'agit en soi d'un changement du chemin dont vous dépendez.
Exportez le fichier et écrivez le déclencheur
Déplacez l'export hors du routeur et hors de la machine qui pourrait perdre son tunnel. Une sauvegarde stockée sur le système de fichiers du routeur disparaît exactement dans l'échec que vous prévoyez, et une sauvegarde sur l'ordinateur portable qui est sur le point de perdre la connectivité est à peine meilleure.
Traitez ce fichier comme un identifiant. Il contient des clés privées, des secrets pré-partagés, des éléments de certificat et des hachages de mots de passe, alors cryptez-les ou stockez-les avec le même soin que la connexion du routeur.
Écrivez ensuite une phrase: si je ne parviens pas à ouvrir une nouvelle session de gestion à partir de [[PATH]] dans les N minutes suivant le changement, je restaure [[FILE]] et redémarre. La phrase force la portée à une seule variable. Les modifications de route, DNS et pare-feu validées ensemble sont rapides à enregistrer et lentes à être divisées en deux lorsque vous obtenez une tentative supplémentaire.
Utilisez un timer de validation là où la plateforme en possède un
Plusieurs plateformes annuleront la modification pour vous si vous ne parvenez pas à la confirmer. Le mode sans échec de RouterOS, entré avec Ctrl+X dans un terminal, annule les modifications apportées dans cette session lorsque la session est interrompue. Junos annule un commit non confirmé confirmé. Les paires Cisco IOS se rechargent avec annulation de rechargement. Les pare-feu d'entreprise organisent généralement les modifications en attente avec un minuteur de retour automatique. OpenWrt et la plupart des micrologiciels grand public n'ont rien d'équivalent, le minuteur doit donc être externe: une restauration planifiée, une tâche cron qui échange un fichier et redémarre le service, ou un redémarrage dans la configuration précédente.
Ne présumez pas qu’une fonctionnalité portant un nom similaire couvre la même portée. Le rétablissement automatique d'un produit peut couvrir uniquement les règles de pare-feu; un autre peut couvrir toute la configuration, y compris la règle de gestion que vous venez de modifier pour rester joignable. Lisez ce que la minuterie rétablit avant de vous y fier.
Une minuterie ne remplace pas un fichier exporté. Cela échoue dans le cas qui compte le plus ici: la session survit, pas le plan de gestion et rien ne déclenche jamais le retour.
Testez une toute nouvelle connexion, pas celle ouverte
Une session établie continue souvent de fonctionner malgré des changements qui bloquent chaque nouvelle poignée de main, car son état existe déjà et la stratégie est évaluée lorsqu'une connexion est créée. Après le changement, créez de nouvelles connexions du côté distant: une nouvelle session SSH, une nouvelle poignée de main VPN d'un client, un chargement de page normal sur l'adresse LAN du routeur.
# run these from the remote machine, in a new shell
ssh -o ConnectTimeout=8 admin@"$ROUTER_WAN"
nc -vz "$ROUTER_WAN" 443
dig +short example.internal "@$ROUTER_LAN"Testez ensuite en aval du tunnel plutôt que sur le tunnel lui-même: la résolution de nom, une connexion TCP à un service interne et l'application que vous utilisez réellement. Un tunnel qui établit mais ne distribue aucun DNS utilisable semble sain dans l'état du client et cassé dans le navigateur, et cette différence décide si vous restaurez le fichier ou corrigez une règle.
Répétez après une déconnexion et une reconnexion forcée, et encore une fois après un redémarrage si la plate-forme réapplique l'état au démarrage. Certaines configurations réussissent tous les tests en direct et échouent au premier démarrage avec les nouvelles règles en place.
Fermez les portes que vous avez ouvertes pour la fenêtre
Supprimez la règle d'administration temporaire de toute source, le compte jetable, la liaison élargie, la règle DNS permissive et la journalisation de débogage. Cette suppression est en elle-même un changement sur le chemin dont vous dépendez, alors réexécutez le test de nouvelle connexion après, depuis le côté distant.
Conservez le fichier exporté jusqu'à ce que la modification ait survécu à un redémarrage et à une reconnexion réelle du client, puis faites pivoter tout ce que vous avez partagé pendant que la fenêtre était ouverte. Une configuration qui fonctionne jusqu'au prochain démarrage est un moyen discret de perdre un routeur une semaine plus tard, lorsque personne ne se souvient quelle règle était temporaire.
Notez la modification là où la personne suivante la regardera: ce qui a été déplacé, quel fichier l'annule, quel chemin atteint la console et quelle règle était temporaire.
Avant d'ouvrir la page VPN, quatre éléments doivent exister: un flux de restauration que vous avez testé, un deuxième chemin que vous avez prouvé, un fichier exporté auquel vous pouvez réellement accéder et un déclencheur écrit. S’il en manque un, corrigez-le d’abord. Le changement peut attendre une heure; un lock-out ne le peut pas.