ฉันมีอินสแตนซ์ ec2 ( proxy) ซึ่งใช้เป็นพร็อกซีเซิร์ฟเวอร์ http มีบางโฮสต์อื่น ( hostA, hostB, hostC) ฉันต้องการให้พร็อกซีเซิร์ฟเวอร์อนุญาตการเชื่อมต่อจากโฮสต์เหล่านั้นเท่านั้น

สำหรับสิ่งนี้ฉันเปลี่ยนกลุ่มความปลอดภัยและเพิ่มโฮสต์เหล่านั้นเป็นแหล่งที่มาและ80เป็นพอร์ต

Port     |  Source
---------+----------
80(HTTP) |  hostA/32
80(HTTP) |  hostB/32
80(HTTP) |  hostC/32

ณ จุดนี้ไม่มีโฮสต์อื่น ๆ กว่าhostA, hostBและสามารถเข้าถึงได้hostCProxy

แต่ถ้ามีคนจากเครื่อง aws อื่นสร้างแพ็กเก็ต IP ปลอมด้วยที่อยู่ต้นทางปลอม อินเทอร์เฟซ ( eth0) จะยอมรับหรือไม่

มีมาตรการรักษาความปลอดภัยอื่นใดที่ฉันควรทำนอกเหนือจากการตั้งค่ากลุ่มความปลอดภัยหรือไม่

answer

But what if someone from other aws machine creates a fake IP packet with fake source address. Will the interface (eth0) to accept it?

ได้ แต่เนื่องจากพวกเขาจะไม่ได้รับแพ็กเก็ตตอบกลับ พวกเขาจึงไม่สามารถดำเนินการ handshaks และสร้างการเชื่อมต่อ TCP ได้ ดังนั้นพวกเขาจึงไม่ควรส่งข้อมูลจริงไปยังพร็อกซี

แม้ว่าพวกเขาสามารถเดาหมายเลขลำดับ สร้างการเชื่อมต่อ TCP และรับข้อมูลบางส่วนไปยังพร็อกซีได้อย่างถูกต้อง พวกเขายังคงประสบปัญหาสองประการ:

  1. พวกเขาจะไม่ได้รับข้อมูลใด ๆ เนื่องจากการตอบกลับจะไม่ถูกส่งไปยังพวกเขา

  2. การเชื่อมต่อของพวกเขาจะถูกปิดในไม่ช้าโดยเครื่องที่ใช้ที่อยู่ IP นั้นจริง เนื่องจากมันตอบสนองต่อแพ็กเก็ต "เอเลี่ยน" ที่มี RST โดยถือว่าใช้งานได้