Voglio copiare le regole del firewall su più istanze Amazon Lightsail.
Breve descrizione
Per utilizzare la stessa regola del firewall per più istanze Lightsail, devi modificare le regole per ciascuna istanza. Usa i comandi Lightsail di AWS Command Line Interface (AWS CLI) e le azioni API per recuperare le regole del firewall correnti. Inseriscili in un file .json e poi usa il file .json per copiare tutte le regole in altre istanze di Lightsail.
Risoluzione
Nota: se visualizzi dei messaggi di errore quando esegui i comandi dell'interfaccia della linea di comando AWS, consulta la sezione Risolvere gli errori AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.
-
Per recuperare la configurazione corrente che desideri copiare dall'istanza esistente, esegui il comando get-instance-port-states:
$ aws lightsail get-instance-port-states --instance-name SourceInstanceName --region RegionName | grep -v "state" > firewall.json
**Nota:**il comando precedente genera un file .json con la configurazione del firewall. Sostituisci SourceInstanceName con il nome dell'istanza di origine e RegionName con la regione AWS in cui si trova l'istanza.
-
Apri il file .json, quindi sostituisci portStates con portInfos:
{
"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": []
}
]
}
-
Per aggiungere la stessa configurazione ad altre istanze, esegui il comando put-instance-public-ports:
$ aws lightsail put-instance-public-ports --instance-name DestinationInstanceName --cli-input-json file://firewall.json --region
RegionName
Nota: sostituisci DestinationInstanceName con la tua istanza di destinazione, firewall.json con il tuo nome di file .json e RegionName con la regione in cui si trova l'istanza.