Score:0

iptables: NAT Instance จัดการกับการรับส่งข้อมูลจากการเชื่อมต่อที่เริ่มต้นจากภายนอกอย่างไร

ธง ph

ป้อนคำอธิบายรูปภาพที่นี่

AWS อนุญาตให้นักพัฒนาสร้างอินสแตนซ์ NAT ในซับเน็ตสาธารณะ และให้ซับเน็ตส่วนตัวสามารถเข้าถึงอินเทอร์เน็ตได้

นี่คือขั้นตอนในการสร้างอินสแตนซ์ NAT สำหรับการกำหนดค่า iptables เป็นการเปลี่ยนแปลงเพียงบรรทัดเดียว

ในคอนโซล EC2 ให้ปิดใช้งานการตรวจสอบต้นทาง/ปลายทางโดยคลิกขวาที่อินสแตนซ์ที่คุณต้องการใช้สำหรับ NAT แล้วเลือก "เปลี่ยนการตรวจสอบต้นทาง/ปลายทาง"
สร้างกลุ่มความปลอดภัยที่มีกฎขาเข้าที่อนุญาต ALL จาก 10.0.0.0/16 และเชื่อมโยงกับอินสแตนซ์ NAT ของคุณ
ในอินสแตนซ์ NAT ให้สร้าง /etc/network/if-pre-up.d/nat-setup เป็น:

#!/bin/sh
เสียงสะท้อน 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A โพสต์ -s 10.0.0.0/16 -j MASQUERADE

chmod +x สคริปต์ จากนั้นเรียกใช้ สคริปต์นี้จะทำงานโดยอัตโนมัติเมื่อเครื่องรีบูต ดังนั้น NAT ของคุณจะอยู่รอดได้เมื่อรีสตาร์ท
ตรวจสอบให้แน่ใจว่าซับเน็ตส่วนตัวทั้งหมดของคุณมีเส้นทางเริ่มต้นเพื่อใช้อินสแตนซ์ NAT เป็นเกตเวย์ (สร้างเส้นทางสำหรับ 0.0.0.0/0 และเชื่อมโยงกับอินสแตนซ์ NAT ของคุณในตารางเส้นทางที่เชื่อมโยงกับซับเน็ตส่วนตัวของคุณ)
ทดสอบ NAT ของคุณด้วยการส่ง Ping บางอย่างจากอินสแตนซ์ EC2 ในซับเน็ตส่วนตัว

การเชื่อมต่อเริ่มต้นจากภายใน

หากการเชื่อมต่อเริ่มต้นจากภายใน ฉันถือว่าอินสแตนซ์ NAT ทำงานในวิธีนี้

  1. EC2 Instance A (ในเครือข่ายย่อยส่วนตัว) ต้องการเข้าถึงเว็บเซิร์ฟเวอร์ C ในอินเทอร์เน็ต

  2. EC2 อินสแตนซ์ A ในซับเน็ตส่วนตัวส่งแพ็กเก็ตไปยัง NAT อินสแตนซ์ B

  3. NAT อินสแตนซ์ B ส่งต่อแพ็กเก็ตและทำงาน SNAT เช่น

    • เปลี่ยน ip ต้นทางในแพ็กเก็ต
    • บันทึกการเชื่อมต่อที่ใช้งานนี้ไปยังตาราง conntrack
  4. แพ็คเก็ตมาถึงเซิร์ฟเวอร์ C ในอินเทอร์เน็ต

  5. เซิร์ฟเวอร์ C ส่งแพ็กเก็ตกลับไปยัง NAT อินสแตนซ์ B

  6. เนื่องจากการเชื่อมต่ออยู่ใน ตาราง conntrack, แพ็คเก็ตทั้งหมดได้รับการยอมรับ

การเชื่อมต่อเริ่มต้นจากภายนอก

ถ้ามีคนในอินเทอร์เน็ตเริ่มต้นการเชื่อมต่อโดยตรงและส่งแพ็กเก็ตไปยังอินสแตนซ์ NAT เช่น การเข้าสู่ระบบ ssh หรือ ping

  1. อินสแตนซ์ NAT จะทำอะไร

  2. iptables ของอินสแตนซ์ NAT จะจัดการการรับส่งข้อมูลตามการกำหนดค่าในย่อหน้าก่อนหน้านี้อย่างไร

อ้างอิง

  1. สาระสำคัญของ Github: การสร้างอินสแตนซ์ AWS NAT
  2. Kabisa: ประหยัดค่าใช้จ่ายด้วยอินสแตนซ์ NAT
  3. AWS: อินสแตนซ์ NAT

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา