Alla fine, l'ho risolto !!!!
Nell'istanza NAT, ho dovuto modificare il comando seguente:
Da:
iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/16 -j MASQUERADE
A:
iptables -t nat -A POSTROUTING -j MASQUERADE
E ha FUNZIONATO!!!!
Quindi, presto creerò una nuova domanda su ServerFault chiedendo quali sono i vantaggi e gli svantaggi nell'usare i due comandi precedenti.
- Assicurati di consentire la porta tcp
2222
in entrata da0.0.0.0/0
sul gruppo di sicurezza per la tua nat box - Assicurati di aver configurato correttamente la "Tabella di instradamento" VPC.
- Almeno due tabelle separate (una associata alla sottorete privata, una associata alla sottorete pubblica)
- Il tuo
10.0.1.0
La sottorete (privata) dovrebbe avere una regola della tabella di instradamento come:Destinazione:0.0.0.0/0
, Target:"Nat box" - Il tuo
10.0.0.0
La sottorete (pubblica) dovrebbe avere una regola della tabella di instradamento come:Destinazione:0.0.0.0/0
, Destinazione:"Gateway Internet" -
Assicurati di avere il controllo di origine/destinazione disattivato sulla scheda NIC per la tua casella NAT, nessun divertimento NAT senza di essa. (So che ce l'hai già, ma è davvero importante, quindi includilo per qualche futuro visualizzatore)
-
Assicurati che i pacchetti in uscita sappiano dove andare:
iptables --table nat --append POSTROUTING --source 10.0.0.0/16 --destination 0.0.0.0/0 --jump MASQUERADE
-
Assicurati di inviare i pacchetti a
2222
essere reindirizzato correttamente:iptables --table nat --append PREROUTING --protocol tcp --dport 2222 --jump DNAT --to-destination 10.0.1.243:22
Questi post mi hanno aiutato molto a comprendere AWS NAT. Così ho iniziato a indagare su cosa ha reso iptables -t nat -A POSTROUTING -j MASQUERADE
ha funzionato.
Bene, la risposta che ho trovato nell'affermazione di cui sopra è consentire alla casella NAT di fornire al NAT l'IP "LAPTOP" su "10.0.0.54" mentre allo stesso tempo esegue il NAT di destinazione su 10.0.1.243. In questo momento la casella di sottorete privata è una richiesta ssh proveniente solo dal dispositivo NAT. Questo comando sta effettivamente riducendo la sicurezza del server della sottorete privata. Si consiglia di utilizzare il comando seguente per ottimizzare l'accesso alla sottorete privata tramite ssh e NAT box come indicato di seguito;
iptables --table nat --append POSTROUTING --source "INTERNET IP of the Laptop" --destination 10.0.1.243 --jump MASQUERADE