Comment puis-je copier les règles de pare-feu Lightsail existantes vers différentes instances Lightsail ?

Date de la dernière mise à jour : 28/09/2021

Comment puis-je copier les règles de pare-feu vers plusieurs instances Amazon Lightsail ?

Brève description

Les règles de pare-feu sont uniques à chaque instance de Lightsail. Si vous voulez que plusieurs instances disposent des mêmes règles, vous devez modifier les règles pour chacune des instances. Vous pouvez utiliser AWS Command Line Interface (AWS CLI) et les appels d'API pour récupérer les règles de pare-feu existantes, puis les afficher dans un fichier .json. Vous pouvez utiliser le fichier .json pour copier toutes les règles dans une autre instance de Lightsail.

Remarque : vous devez installer et configurer AWS CLI pour effectuer les étapes de résolution suivantes. Si vous recevez des messages d'erreurs lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version la plus récente d'AWS CLI. Vous pouvez également utiliser AWS CloudShell pour effectuer ces étapes.

Résolution

1.    Exécutez la commande suivante pour récupérer les configurations actuelles que vous souhaitez copier à partir de l'instance existante et transmettre dans un fichier .json. Cette opération génère un fichier .json qui inclut la configuration du pare-feu. Dans l'exemple suivant, remplacez SourceInstanceName et RegionName par les informations correctes pour votre instance.

$ aws lightsail get-instance-port-states --instance-name SourceInstanceName --region RegionName | grep -v "state" > firewall.json

2.    Ouvrez le fichier .json, pare-feu.json dans cet exemple, puis remplacez « PortStates » par « PortInfos ». Ce paramètre se trouve au début du fichier, comme illustré dans l'exemple suivant :

{
    "portStates": [
        {
            "fromPort": 80,
            "toPort": 80,
            "protocol": "tcp",
            "cidrs": [
                "0.0.0.0/0"
            ],
            "cidrListAliases": []
        },
        {
            "fromPort": 22,
            "toPort": 22,
            "protocol": "tcp",
            "cidrs": [
                "0.0.0.0/0"
            ],
            "cidrListAliases": []
        },
        {
            "fromPort": 8080,
            "toPort": 8080,
            "protocol": "tcp",
            "cidrs": [
                "11.11.11.0/20",
                "22.22.22.0/20"
            ],
            "cidrListAliases": []
        }
    ]
}

3.    Une fois le paramètre modifié en « portInfos », vous pouvez utiliser le fichier .json pour ajouter les mêmes configurations à d'autres instances. Dans l'exemple suivant, remplacez DestinationInstanceName, pare-feu.json, et RegionName par les informations correspondant à votre instance.

$ aws lightsail put-instance-public-ports --instance-name DestinationInstanceName  --cli-input-json file://firewall.json --region 
RegionName

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?