Score:0

เป็นไปได้หรือไม่ที่จะเข้ารหัสการรับส่งข้อมูลระหว่างเว็บเซิร์ฟเวอร์ภายในโดยใช้ Load Balancer

ธง cn

ขณะนี้ฉันใช้ Let's Encrypt เพื่อรับใบรับรองเซิร์ฟเวอร์สำหรับเซิร์ฟเวอร์แบ็กเอนด์ประมาณ 100+ ตัว ทุกๆ 90 วัน ฉันต้องทำงานร่วมกับทีมอื่นเพื่อต่ออายุใบรับรองผ่านการทดสอบ DNS-01 ฉันพบวิธีแก้ปัญหาเกี่ยวกับ Load Balancer ที่ดูเหมือนว่าฉันต้องทำ DNS-01 challenge เท่านั้นใน load balancer จากนั้นทราฟฟิกทั้งหมดจะถูกเข้ารหัส:

การยกเลิก SSL เข้ารหัสทราฟฟิกภายนอกหน้าโหลดบาลานเซอร์ หากเราต้องการเข้ารหัสทราฟฟิกระหว่างโหลดบาลานเซอร์กับเว็บเซิร์ฟเวอร์ภายใน เราอาจมี SSL pass-through แต่การรับส่งข้อมูลระหว่างเว็บเซิร์ฟเวอร์ภายในของเรา (เซิร์ฟเวอร์ส่วนหลัง) เป็นอย่างไร

หากฉันใช้โหลดบาลานเซอร์ตรงกลาง เป็นไปได้ไหมที่จะเข้ารหัสการรับส่งข้อมูลระหว่างเว็บเซิร์ฟเวอร์ภายในหากเราตัดสินใจใช้การสิ้นสุด SSL หรือ SSL pass-through

ฉันยังใหม่กับ Load Balancer ความช่วยเหลือใด ๆ ก็ชื่นชม!

in flag
คุณหมายถึงอะไรโดย "การรับส่งข้อมูลระหว่างเว็บเซิร์ฟเวอร์ภายใน"
ITnewbie avatar
cn flag
@GeraldSchneider ขออภัยสำหรับความสับสน ฉันหมายถึงเซิร์ฟเวอร์ภายในของเราที่อยู่เบื้องหลังโหลดบาลานเซอร์ พวกมันอยู่ใน LAN ของเราและอาจอยู่ใน VLAN เดียวกัน
in flag
อืม ... ใช้ HTTPS เหรอ? สิ่งนี้เกี่ยวข้องกับโหลดบาลานเซอร์หรือไม่
cn flag
เว็บเซิร์ฟเวอร์ภายในสื่อสารกันอย่างไร?
ITnewbie avatar
cn flag
@GeraldSchneider ขออภัยสำหรับความสับสน ฉันได้อัปเดตคำถามของฉันแล้ว ฉันต้องการทราบว่าฉันจะจัดการกับทราฟฟิกระหว่างเซิร์ฟเวอร์แบ็กเอนด์ได้อย่างไร หากฉันมีใบรับรอง SSL แบบไวด์การ์ดที่มีโหลดบาลานเซอร์เท่านั้น
ITnewbie avatar
cn flag
@Charm_quark HTTPS พร้อม FQDN และพอร์ต 443 เราไม่อนุญาตให้ใช้ที่อยู่ IP
Score:2
ธง za

คุณสามารถเข้ารหัสทราฟฟิกระหว่างระบบใด ๆ ที่เป็นของกลุ่มที่กำหนดได้เสมอ โหมดการขนส่ง IPsec ถูกสร้างขึ้นมาเพื่อการนั้นโดยเฉพาะ ไม่สำคัญว่าเซิร์ฟเวอร์เหล่านั้นจะรับบทบาทใด แบ็กเอนด์ ฟรอนต์เอนด์ ฯลฯ เป็นเพียงโหนด IP ในกรณีนี้ พิจารณาว่านี่เป็นโซลูชันทั่วไปที่ทำให้ "ใช่ เป็นไปได้" เป็นคำตอบที่ถูกต้องสำหรับคำถามทั้งหมด เช่น "เป็นไปได้ไหมที่จะเข้ารหัสทราฟฟิกระหว่าง A และ B" อย่างไรก็ตามบางครั้งก็ไม่สะดวกและมักมีตัวเลือกอื่น


ขึ้นอยู่กับตัวเลือกอื่น ๆ เพื่อจุดประสงค์ใด คุณต้องการการเข้ารหัสนี้ อย่าตอบว่า "เพียงเพื่อความปลอดภัย" ไม่มีสิ่งที่เรียกว่า "เพียงเพื่อความปลอดภัย" มีรูปแบบภัยคุกคามและมีรูปแบบความปลอดภัยที่รับมือกับภัยคุกคามที่กำหนดไว้เหล่านั้น ตัวอย่างเช่น พูดง่ายๆ ว่ารูปแบบภัยคุกคามสำหรับ HTTP คือมนุษย์ที่อยู่ตรงกลางที่สามารถดักฟังและแทรกข้อมูลของตัวเอง ปลอมตัวเป็นเซิร์ฟเวอร์ที่ถูกต้องและ/หรือไคลเอ็นต์ที่ถูกต้อง HTTPS ได้รับการออกแบบมาเพื่อทำให้สิ่งนี้เป็นไปไม่ได้โดยการเข้ารหัสและเซ็นชื่อการสื่อสารทั้งหมด MitM สามารถส่งผ่านทราฟฟิกทั้งหมดโดยไม่สามารถดักฟังหรือรบกวนการสื่อสารโดยสิ้นเชิง ดังนั้นอะไร คุณ กำลังป้องกันภัยคุกคามของคุณคืออะไร?

เครือข่ายของคุณระหว่างแบ็กเอนด์และบาลานเซอร์ไม่น่าเชื่อถือใช่หรือไม่ ทำไม เครือข่ายเหล่านั้นควรรวมเฉพาะบาลานเซอร์และแบ็กเอนด์เท่านั้น และไม่มีอย่างอื่น คุณมีนักแสดงที่ไม่น่าเชื่อถือคนใดบ้าง อย่างไรก็ตาม IPsec ในโหมดการขนส่งเป็นวิธีแก้ปัญหาที่ยอมรับได้ในกรณีนี้ เนื่องจากมันจะเข้ารหัสทุกอย่างบนสาย

คุณยังสามารถใช้ HTTPS ระหว่างบาลานเซอร์และแบ็กเอนด์ (และระหว่างแบ็กเอนด์ด้วยกันเอง) ไม่เป็นไร บาลานเซอร์ของคุณจะยุติ HTTPS ของผู้ใช้ ดูคำขอและตอบกลับเป็นข้อความธรรมดา สามารถจัดการ (เพิ่ม/ลบ/เปลี่ยนส่วนหัว) และสามารถเลือกแบ็กเอนด์และประมวลผลโดยการวิเคราะห์เนื้อหา เช่น เลือกแบ็กเอนด์หนึ่งรายการ สำหรับเนื้อหาแบบคงที่และอื่น ๆ สำหรับเนื้อหาแบบไดนามิก จากนั้นจะจัดตั้งขึ้น อื่น การเชื่อมต่อ HTTPS กับแบ็กเอนด์ ไคลเอ็นต์ HTTPS สำหรับแบ็กเอนด์เท่านั้นที่จะเป็นบาลานเซอร์และแบ็กเอนด์อื่นๆ ดังนั้นจึงไม่สำคัญสำหรับไคลเอนต์เหล่านั้นที่จะใช้ใบรับรองที่ได้รับการยอมรับทั่วโลก (ตัวอย่างเช่น Google Frontends จะไม่ตรวจสอบใบรับรองของแบ็กเอนด์ HTTPS ที่อยู่ภายใน Google Cloud ดังนั้นแม้แต่ใบรับรองที่ลงนามด้วยตนเองก็ยังใช้งานได้) คุณสามารถสร้าง CA ภายในของคุณเอง ออกใบรับรองสำหรับแบ็คเอนด์และบาลานเซอร์ทั้งหมด และทำให้เชื่อถือได้โดยการติดตั้ง ใบรับรอง CA นั้นในร้านค้าของแต่ละระบบ เฉพาะบาลานเซอร์เท่านั้นที่ต้องกำหนดค่าใบรับรองที่ถูกต้องทั่วโลกและเฉพาะในฝั่งไคลเอ็นต์เท่านั้น Let's Encrypt automation น่าจะเป็นหน้าที่ของบาลานเซอร์เช่นกัน เนื่องจากใบรับรองที่ออกจะต้องติดตั้งบนนั้น

คุณไม่เชื่อถือตัวจัดสรรภาระงานของคุณใช่หรือไม่ SSL passthrough สามารถช่วยได้ แต่ก็มีข้อเสียในตัวมันเองเช่นกัน ในการตั้งค่านี้ บาลานเซอร์เป็นหนึ่งในผู้ชายที่อยู่ตรงกลางซึ่ง HTTPS ถูกสร้างขึ้น ดังนั้นจึงไม่สามารถเข้าถึงรายละเอียด HTTP เพื่อปรับสมดุลคำขอได้ แม้จะรู้ค่าส่วนหัวของโฮสต์ http เพื่อแยกความแตกต่างของ vhosts ไม่สามารถแทรกส่วนหัวพร็อกซีเพิ่มเติมเช่น "พร็อกซีสำหรับ" เป็นต้น การเชื่อมต่อได้รับการป้องกันตามที่คาดไว้สิ่งที่ทำได้คือหวังว่าจะติดตามการเชื่อมต่อและส่งต่อแพ็กเก็ตไปยังแบ็กเอนด์แบบสุ่มสี่สุ่มห้า ในกรณีนี้ คุณไม่ได้กำหนดค่าใบรับรองใด ๆ และไม่ได้กำหนดค่าชื่อเซิร์ฟเวอร์ใด ๆ เพียงระบุ IP ของแบ็กเอนด์ นอกจากนี้ ในกรณีนี้ ใบรับรองที่ถูกต้องจะต้องติดตั้งบนแบ็กเอนด์ทั้งหมด เนื่องจากยังไม่ทราบว่าแบ็คเอนด์ใดจะได้รับคำขอนั้น

โพสต์คำตอบ

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