GNU/Linux >> Znalost Linux >  >> Linux

AWS VPC + IPtables + NAT:Přesměrování portů nefunguje

Konečně jsem to rozlouskl!!!!

Na instanci NAT jsem musel změnit níže uvedený příkaz:

Od:

iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/16 -j MASQUERADE

Komu:

iptables -t nat -A POSTROUTING -j MASQUERADE

A FUNGovalo to!!!!

Takže brzy vytvořím novou otázku na ServerFault, kde se budu ptát, jaké jsou výhody a nevýhody použití výše uvedených dvou příkazů.


  • Ujistěte se, že povolujete port tcp 2222 příchozí z 0.0.0.0/0 na bezpečnostní skupině pro váš nat box
  • Ujistěte se, že máte správně nastavenou tabulku směrování VPC.
  • Alespoň dvě samostatné tabulky (jedna přidružená k soukromé podsíti, jedna přidružená k veřejné podsíti)
  • Vaše 10.0.1.0 (soukromá) podsíť by měla mít pravidlo směrovací tabulky jako:Cíl:0.0.0.0/0 , Cíl:"Nat box"
  • Váš 10.0.0.0 (veřejná) podsíť by měla mít pravidlo směrovací tabulky jako:Cíl:0.0.0.0/0 , Cíl:"Internetová brána"
  • Ujistěte se, že máte deaktivovanou kontrolu zdroje/cíle na NIC pro váš NAT box, žádná legrace s NAT bez něj. (Vím, že to už máte, ale je to opravdu důležité, takže jej zahrnout pro budoucího diváka)

  • Ujistěte se, že odchozí pakety vědí, kam mají jít:

    iptables --table nat --append POSTROUTING --source 10.0.0.0/16 --destination 0.0.0.0/0 --jump MASQUERADE

  • Ujistěte se, že příchozí pakety do 2222 přesměrovat správně:

    iptables --table nat --append PREROUTING --protocol tcp --dport 2222 --jump DNAT --to-destination 10.0.1.243:22


Tyto příspěvky mi hodně pomohly v pochopení AWS NAT. Začal jsem tedy zkoumat, co vytvořilo iptables -t nat -A POSTROUTING -j MASQUERADE fungovalo to.

Odpověď, kterou jsem našel ve výše uvedeném prohlášení, umožňuje NAT boxu získat NAT IP 'LAPTOP' na '10.0.0.54' a zároveň provádět cílový NAT na 10.0.1.243. V tomto okamžiku je soukromá podsíťová schránka ssh požadavkem pouze ze zařízení NAT. Tento příkaz ve skutečnosti snižuje zabezpečení serveru privátní podsítě. K doladění přístupu k privátní podsíti pomocí ssh a NAT boxu, jak je uvedeno níže, se doporučuje použít níže uvedený příkaz;

iptables --table nat --append POSTROUTING --source "INTERNET IP of the Laptop" --destination 10.0.1.243 --jump MASQUERADE

Linux
  1. R 3.5.0 nefunguje na Ubuntu 18.04?

  2. iptables:příkaz nenalezen

  3. sudo nefunguje na určitých příkazech

  1. jps nefunguje

  2. XFS růst nefunguje

  3. Linuxový příkaz 'll' nefunguje

  1. SSH Agent Forwarding nefunguje ani při použití `ssh -A`

  2. Předávání RDP přes počítač se systémem Linux pomocí iptables:Nefunguje

  3. Jak nakonfigurovat iptables tak, aby nechtěný port nebyl hlášen jako filtrovaný