14 สิงหาคม 2553

สร้างไฟร์วอลเล่น

ความจำเป็นอย่างหนึ่งของชีวิตปัจจุบันก็คือ ระบบอินเทอร์เนต คนจำนวนมากวันหนึ่งไม่ได้เช็คเมล์ อัพเดทเฟสบุค เหมือนชีวิตมันขาดอะไรไปอย่าง ทั้งที่บ้านและที่ทำงานต้องมีอินเทอร์เนตไว้ให้ใช้เสมอ บางคนถึงขนาดมีติดตัวไปทุกหนทุกแห่งโดยใช้โทรศัพท์เคลื่อนที่ที่สุดฉลาด (หลายคนเรียกวันว่า สมาร์ทโฟน) เป็นเครื่องมือพร้อมด้วยเครือข่าย GPRS บ้าง EDGE บ้าง หรือ 3G ไปเลยสำหรับในเขตเมืองใหญ่

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

หลังจากค้นหาเอกสารอ่านเกี่ยวกับการสร้างไฟร์วอลอยู่ประมาณ 2 สัปดาห์ ก็ตัดสินใจว่าจะนำเอาคอมพิวเตอร์เก่าเก็บตั้งแต่ปี พ.ศ. 2545 มาใช้เป็นไฟร์วอล สเปกของเครื่องที่ว่านี้คือ
  • Cyrix 333MHz แต่ปรับให้ใช้ที่ 300 MHz
  • RAM 128 MB แชร์ให้จอ 1 MB
  • Harddisk 4 GB (เกือบจะโยนทิ้งไปแล้ว เพราะมันเคยติดตั้ง Windows Me แล้วไม่ผ่าน)
  • Lan card แกะเอามาจากเครื่องที่พังแล้วใช้ compex 10/100 มีอยู่ 2 ใบ พอดี
  • FDD 1.4 MB 
เอามาเป่าด้วยเครื่องเป่าลมจนสะอาดไร้ฝุ่น จากนั้นทดสอบโดยการเสียบปลั๊กไฟฟ้าเข้าไป แล้วกดปุ่มเปิด (เป็นรุ่นที่ใช้ power supply แบบ AT) ไม่มีเสียงดัง "ตี๊ด" เพราะลำโพงมันหลุดหายไปไหนไม่รู้ แต่มีข้อความบนพื้นดำก็โล่งใจ น่าจะใช้ได้ แสดงว่ามันน่าจะทำงานได้

จากนั้นก็สืบค้นหาข้อมูลในอินเทอร์เนต ว่าจะใช้ซอฟท์แวร์ค่ายไหนดี ในการนำมาติดตั้งให้เครื่องเก่าเก็บนี้เป็นไฟร์วอลได้ นี่คือรายการสิ่งที่ค้นหา และคิดว่าจะเป็นตัวเลือกที่นำมาใช้
อ่าน ศึกษาข้อมูลอยู่เกือบ 2 วัน ก็เลือก shorewall เพราะมีความรู้สึกว่า เครื่องเก่าๆ แบบนี้ น่าจะเหมาะกับชุดโปรแกรมที่เป็น text mode ฟีเจอร์ต่างๆ ก็เพียงพอกับสิ่งที่เราต้องการ จึงเริ่มศึกษาค้นคว้าเป็นการใหญ่ ไปดาวน์โหลด Linux มาลงก่อน ซึ่งนี่เป็นงานใหญ่พอควร และรู้สึกว่าจะใหญ่เกินไปกับความต้องการเล็กๆ กับเครื่องที่แสนเก่า แต่ไหนๆ ก็ลุยมาแล้วนี่ ก็ลุยต่อไป

ได้ Linux ของ Debian มาก็ทดลองติดตั้งดู โดยไปขอแกะเอา CD ROM ของเครื่องที่ลูกใช้อยู่มาติดตั้ง ปรากฏว่าไปไม่รอด เพราะว่าเมื่อติดตั้งแล้วต้องปรับคอนฟิกอีกเยอะเลย เพื่อให้มันทำงานเหมาะสมที่จะเป็นไฟร์วอล แล้วจึงค่อยลง shorewall ตามหลัง จบกันทีสำหรับ Debian + Shorewall แต่ก็ได้ความรู้มามากโขอยู่เหมือนกัน


เปิดอ่านข้อมูลตามเว็บต่างๆ อีก เปรียบเทียบนั่นๆ นี่ๆ แล้ว ก็ตัดสินใจว่า เอาล่ะ ลอง pfSense ดูบ้าง ว่ากันว่า freeBSD นี่มันเสถียรมาก (pfSense ใช้ freeBSD เป็นฐานในการสร้าง)

ดาวน์โหลดไฟล์ที่เว็บไซต์ประจำของเขานะแหละ เมื่อได้ไฟล์มาแล้วก็เอามาเขียน CD  CD นี้เรียกว่า Live CD with Installer ซึ่งสามารถนำไปใช้งานได้เลย โดยไม่จำเป็นต้องติดตั้งลงฮาร์ดดิสก์ เพราะไฟร์วอลสามารถทำงานได้บนแรมเพียงอย่างเดียว เมื่อได้โอกาสแล้วก็ลองเล่นเลย ใช้เวลาแป๊บเดียว กับการมั่วทำตามคำสั่งบนจอ ลากสายแลน ที่ต่อออกจากโมเด็มเราท์เตอร์เข้ามาที่แลนการ์ดที่เราเซตไว้เป็น WAN แล้วก็ลากสายแลนไปต่อเข้าคอมพิวเตอร์ ลองต่อเน็ตดูปรากฏว่าได้

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

วันนี้ขอพาลูกไปเที่ยวก่อน