การรับส่งข้อมูล "ขาเข้า" และ "ขาออก" หมายถึงอะไร


20

ฉันได้เห็นแหล่งข้อมูลมากมายที่อธิบายถึงวิธีการตั้งค่าไฟร์วอลล์ของเซิร์ฟเวอร์เพื่ออนุญาตการรับส่งข้อมูลขาเข้าและขาออกบนพอร์ตมาตรฐาน HTTP ( 80และ443) แต่ฉันไม่สามารถหาสาเหตุที่ฉันต้องการได้ทั้งสองอย่าง ฉันต้องปลดบล็อคทั้งสองเพื่อให้เว็บไซต์ "ปกติ" ทำงานได้หรือไม่ เพื่อให้ไฟล์อัพโหลดทำงานได้หรือไม่ มีสถานการณ์ที่จะแนะนำให้ปลดบล็อกหนึ่งและปล่อยให้บล็อกถูกบล็อกหรือไม่?

ขออภัยถ้าเป็นคำถามพื้นฐาน แต่ฉันไม่สามารถหาคำอธิบายได้ทุกที่ (เช่นฉันไม่ใช่เจ้าของภาษาอังกฤษ) ฉันรู้ว่าในเว็บไซต์ "ปกติ" ลูกค้ามักเป็นผู้เริ่มต้นคำขอดังนั้นฉันจึงสมมติว่าเว็บเซิร์ฟเวอร์ต้องยอมรับปริมาณข้อมูลขาเข้าบนพอร์ตเหล่านั้นและสามัญสำนึกของฉันบอกฉันว่าเซิร์ฟเวอร์อนุญาตให้ส่งการตอบสนอง โดยไม่ยกเลิกการบล็อกสิ่งอื่นใด (ไม่อย่างนั้นจะไม่มีเหตุผลที่จะมีกฎสองประเภท) ถูกต้องไหม

แต่ปริมาณการใช้งานเว็บ (บริการ) ขาออกคืออะไรและจะใช้งานอย่างไร AFAIK ถ้าเซิร์ฟเวอร์ที่ต้องการที่จะเริ่มต้นการเชื่อมต่อกับเครื่องอื่นให้พอร์ตเฉพาะเรื่องที่เป็นหนึ่งในส่วนอื่น ๆ (เช่นที่พอร์ตปลายทางจะเป็น80) ที่สิ้นสุดของฟรีพอร์ตใด ๆ ที่สามารถนำมาใช้ (คนพอร์ตต้นทางจะเป็นแบบสุ่ม ) ฉันสามารถเปิดการร้องขอ HTTP จากเซิร์ฟเวอร์ของฉัน (โดยใช้wgetตัวอย่าง) โดยไม่ต้องปิดกั้นอะไร ดังนั้นฉันสมมติว่าแนวคิดของ "ขาเข้า" และ "ขาออก" ผิดไปอย่างใด

คำตอบ:


22

"Incoming" และ "outgoing" มาจากมุมมองของเครื่องที่มีปัญหา

"ขาเข้า" หมายถึงแพ็คเก็ตที่มาจากที่อื่นและมาถึงเครื่องในขณะที่ "ขาออก" หมายถึงแพ็คเก็ตที่มาจากเครื่องและมาถึงที่อื่น

หากคุณอ้างถึงเว็บเซิร์ฟเวอร์ของคุณส่วนใหญ่จะยอมรับการเชื่อมต่อขาเข้าไปยังบริการเว็บและส่วนใหญ่เท่านั้น (หรืออาจไม่เคย) ทำการเชื่อมต่อขาออก

หากคุณอ้างถึงเว็บไคลเอ็นต์ของคุณส่วนใหญ่จะทำการเชื่อมต่อขาออกไปยังบริการอื่น ๆ และบางครั้งเท่านั้น (หรืออาจไม่เคย) ยอมรับการเชื่อมต่อขาเข้า

ชัดเจนว่าเป็นโคลนตอนนี้หรือไม่


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

1
ค่อนข้างถูกต้อง แม้ว่าไฟร์วอลล์ stateful ควรจัดการสิ่งนี้โดยอัตโนมัติ
Michael Hampton

1
ดังนั้นเว็บเซิร์ฟเวอร์ของฉันควรยกเลิกการปิดกั้นการเชื่อมต่อขาเข้าบนพอร์ต80และ433ไม่จำเป็นต้องกังวลเกี่ยวกับการเชื่อมต่อขาออกบนพอร์ตเหล่านั้น แต่จำเป็นต้องอนุญาตการเชื่อมต่อขาออกในช่วงพอร์ตไดนามิก / ชั่วคราวชั่วคราวใช่ไหม? และฉันยังสับสนกับสิ่งที่ส่งออก: หากเว็บไคลเอ็นต์พยายามเชื่อมต่อกับไซต์พอร์ตปลายทางจะเป็น80แต่พอร์ตต้นทางอาจเป็นใครก็ได้ พอร์ตใดที่ไฟร์วอลล์ในเครื่องจะพิจารณาเมื่อตัดสินใจบล็อก / ปลดบล็อก
mgibsonbr

@ mgibsonbr ตอนนี้คุณกำลังเบี่ยงเบนทฤษฎี เราชอบคำถามเชิงปฏิบัติที่นี่ :)
Michael Hampton

1
พิจารณาว่าคุณมีความรู้ จำกัด เกี่ยวกับไฟร์วอลล์และปริมาณข้อมูลฉันขอแนะนำให้คุณใช้สคริปต์ตัวสร้างไฟร์วอลล์ UFW เป็นการเริ่มต้นที่ดี เว็บเพจของโครงการคือhelp.ubuntu.com/community/UFWมาดูกันแล้วคุณจะเข้าใจพื้นฐานของไฟร์วอลล์และการจัดการทราฟฟิก หากคุณยังต้องการความช่วยเหลือฉันจะพยายามชี้แจงรายละเอียดให้กับคำถามของคุณ
Hex

6

ในกรณีของคุณคุณจะต้องให้คำขอเข้ามาที่พอร์ต 80 เท่านั้น

เมื่อทำการเชื่อมต่อเสร็จแล้วไฟร์วอลจะปล่อยแพ็กเก็ตกลับไปที่พอร์ตของลูกค้าโดยอัตโนมัติ คุณไม่จำเป็นต้องสร้างกฎสำหรับสิ่งนั้นเพราะไฟร์วอลล์รู้


1
สิ่งนี้ไม่ได้ตอบคำถามทั้งหมดของเขา แต่ใช่ถ้าเขาใช้ไฟร์วอลล์ที่ไม่จำเป็นต้องใช้เพียง 80 และ 443 เท่านั้น
89c3b1b8-b1ae-11e6-b842-48d705

3

หากไม่มีบริบทใด ๆ เกี่ยวกับข้อความที่คุณอ่านหมายความว่าเมื่อพวกเขาอ้างถึงการรับส่งข้อมูล "บริการเว็บขาออก" ฉันจะใช้วิธีที่ง่ายที่สุดในคำตอบของฉัน:

  1. คุณมีไฟร์วอลล์ที่ทางเข้า / ออกของเครือข่ายของคุณ

  2. ไฟร์วอลล์มาในสถานะถูกล็อคอย่างสมบูรณ์และอนุญาตให้ไม่มีการรับส่งข้อมูลขาเข้าหรือขาออก

  3. เพื่อให้ลูกค้าภายในของคุณสามารถเรียกดูเว็บไซต์ภายนอกคุณต้องกำหนดค่ากฎ "บริการเว็บขาออก" ที่อนุญาตให้พวกเขาเชื่อมต่อกับเว็บไซต์ภายนอกดังกล่าว

ในเงื่อนไขที่ง่ายที่สุดกฎจะอ่านดังนี้:

ใด ๆ โฮสต์ภายในใด ๆ โฮสต์ภายนอกใด ๆ ที่ปลายทาง = TCP พอร์ต 80 แล้วอนุญาต


การแสดงออก "การจราจรขาออกบริการเว็บ" มาจากนี้ ในกรณีเฉพาะของฉันฉันพยายามตั้งค่าไฟร์วอลล์ในเซิร์ฟเวอร์อินสแตนซ์ (IBM cloud) การติดตั้งเริ่มต้นมาพร้อมกับสิ่งต่าง ๆ ส่วนใหญ่ที่ถูกบล็อก (ฉันสามารถเรียกใช้ Apache แต่ไม่สามารถเข้าถึงได้จากภายนอก) และฉันต้องการทราบสิ่งที่ผิดทางอาญาที่ฉันควรปลดบล็อกเพื่อให้สามารถแสดงหน้ารับอัปโหลดไฟล์ (จากเบราว์เซอร์ของไคลเอ็นต์) เป็นต้นและฉันไม่สามารถบอกได้ว่าชิ้นส่วนนั้นนำไปใช้กับกรณีของฉันหรือไม่ - เพราะมันบอกเพียงว่าทำไมไม่ใช่
mgibsonbr
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.