ฉันพยายามเรียนรู้ด้วยตนเองในหัวข้อต่อไปนี้บน Linux (ควรเป็น Fedora):
การเขียนโปรแกรมเครือข่าย (ใช้ sockets API) โดยเฉพาะอย่างยิ่งในพร็อกซีและไฟร์วอลล์
พร็อกซี่ (หลายชนิดเช่นโปร่งใส, http, ถุงเท้า ... ),
ไฟร์วอลล์ (iptables) และความปลอดภัยพื้นฐานของ Linux
SNAT, DNAT
เครื่องมือไฟฟ้าการจัดการเครือข่าย: nc, socat (พร้อมตัวเลือกทั้งหมด), ssh, openssl ฯลฯ
เป็นต้น
ตอนนี้ฉันรู้แล้วว่าเป็นการดีที่สุดถ้าฉันมีจำนวนโหนดทางกายภาพและอุปกรณ์เครือข่ายทางกายภาพเพียงพอ (เราเตอร์สวิตช์และอื่น ๆ ) สำหรับการฝึกด้วยตนเองนี้ แต่เห็นได้ชัดว่าไม่มีงบประมาณหรือพื้นที่ทางกายภาพและไม่ต้องการสิ้นเปลืองโดยเฉพาะอย่างยิ่งเมื่อสิ่งต่าง ๆ สามารถจำลอง / จำลองในสภาพแวดล้อม Linux
ฉันมีเวิร์คสเตชั่นส่วนตัวหนึ่งเครื่องซึ่งเป็นเดสก์ท็อป Fedora ที่มีหน่วยความจำ 4GB, ดิสก์ 200+ GB และ CPU แบบ 4 คอร์ ฉันอาจจะได้เวิร์คสเตชั่ต่ำสุดของ Fedora 3 ถึง 4 เครื่อง แต่สิ่งเหล่านี้รวมถึงของฉันจะยังคงอยู่หลังไฟร์วอลล์องค์กรของเราอย่างเคร่งครัด :-(
ตอนนี้ฉันรู้ว่าฉันสามารถใช้โหนดเสมือนที่ใช้ VirtualBox แต่ไม่รู้ว่ามีทางเลือกอื่นที่ดีกว่าดิสก์และหน่วยความจำหรือไม่
คุณจะสามารถให้คำแนะนำหรือคำแนะนำเกี่ยวกับวิธีเริ่มต้นตั้งงบประมาณเล็ก ๆ น้อย ๆ นี้และพื้นที่ จำกัด เสมือนจริงของฉันได้หรือไม่ ตัวอย่างเช่นฉันจะสร้างเราเตอร์เสมือนจริงได้อย่างไร
มีบางคนเคยลองทำสิ่งนี้มาก่อน: กล่าวคือสร้างห้องปฏิบัติการเครือข่ายเสมือนจริงหลังไฟร์วอลล์ขององค์กรเพื่อการเรียนรู้ / พัฒนา / ทดสอบ
ฉันหวังว่าคำถามของฉันจะไม่คลุมเครือหรือเปิดกว้างเกินไป โดยพื้นฐานแล้วตอนนี้ฉันไม่รู้ว่าจะใช้ประโยชน์จากสภาพแวดล้อมของ Linux ได้อย่างไรและ 'สารพัด' ที่มาพร้อมกับและการซื้ออุปกรณ์ทางกายภาพก็ต่อเมื่อจำเป็นเท่านั้น