ว ณ สุราษฎร์ธานี
ได้ยินคำนี้บ่อยๆ ไปลองดูที่เขาแนะนำไว้ เท่าที่ดูก็ใช่ว่าจะยุ่งยากอะไร มากมาย เพราะ DMZ ก็คือการควบคุม จำกัด การเข้าถึงจากภายนอก เปิดบริการเท่าที่จำเป็น และแยกการใช้งานออกจากส่วนอื่นๆ จากภาพข้างล่างแสดงการแยกจาก PF ไปใช้งาน สองส่วน
internet
|
|
PF--------------------->DMZ ( HTTP, FTP, NNTP, SMTP )
|
hub switch
|
(screen lan)
โฮสใน screen lan สามารถออกสู่อินเทอร์เน็ตได้ สามารถเข้าไปยังส่วน bastile host ใน DMZ เพียงบาง โฮสใน DMZ ไม่สามารถออกไปยัง screen และออกสู่ internet ได้เพียงบางส่วน (บาง service)
ดังนั้นการทำ DMZ ก็ไม่น่าจะยุ่งยากอะไร มันขึ้นอยู่กับกฏที่เราจะใส่ใน firewall มากกว่า
kittipong TIPS: Port Redirection บน FreeBSDเราสามารถใช้หลักการนี้ในการ redirect port ตามความต้องการของเราได้ครับ การ config นี้เราจะต้องทำการติดตั้ง NAT Server และ compile ให้เรียบร้อยก่อนนะครับ จากนั้นให้เราทำการแก้ไขไฟล์ /etc/rc.conf ซึ่งดูจากตัวอย่างดังนี้
ก่อนลุย
=====
เมื่อ natd_interface ของเราคือ 192.168.1.10
1. ในไฟล์ /etc/rc.conf ให้เราแก้ไขหรือเพิ่มเติมบรรทัด natd_flags ซึ่งคำสั่งนี้เป็นการเพิ่มเติม option ของ natd service ดังนี้
natd_flags="-redirect_port tcp 192.168.1.2:25 25"
หมายถึง ให้ทำการ redirect port ไปยัง ip : 192.168.1.2 ที่ port 25 ครับ เมื่อมีการเรียกใช้บริการเข้ามายัง ip ของเราคือ 192.168.1.10 ที่ port 25
หรืออีกลักษณะหนึ่งคือ
natd_flags="-redirect_address 192.168.1.2 xxx.xxx.xxx.xxx"
หมายถึง เมื่อที่การขอใช้บริการ all service and all port ให้ทำการ redirect ไปยัง ip 192.168.1.2 ทั้งหมดครับ
*** ความรู้นี้เราสามารถนำไปประยุกต์ใช้ในการทำ DMZ ได้ครับ หรืออีกอย่างเป็น การ redirect หรือบังคับเส้นทางของการทำงานบนเครือข่ายตามที่เราต้องการ
จริง ๆ แล้วก็ใช้เป็นบางโอกาสครับ แต่เห็นว่ามันทำได้ก็มาแนะนำกันครับผม ipf pf ก็แจ๋วนะ
koob natd สำหรับหลายท่านที่ตามหามานาน ผมเคยเจอปัญหากับการ forward port จาก ไอพีจริงไปสู่ ip class C
เมื่อก่อนผมเป็นคอ linux แต่เมื่องได้จับ freebsd ทำให้ติดใจในเรื่องการลงโปรแกรมเร็ว ไม่เปลืองทรัพยากร
================
มาว่าเรื่องการ forward port กันต่อดีกว่า
1. จัดการเจ้าแก่นให้เรียบร้อยซะก่อน ถ้าเคยทำมาแล้วก็ผ่านขั้นตอนนี้ไป
options IPFIREWALL
options IPDIVERT
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFIREWALL_VERBOSE
------------------------
2. จัดการกับเจ้า autoexec.bat เอ้ย ไม่ใช่พิมพ์ผิด เจ้า /etc/rc.conf สังเกตไฟล์ที่ชื่อ natd.conf ให้ดีนะครับเราต้องสร้างและแก้ไขมัน
natd_flags="-f /etc/natd.conf"
------------------------------------------------
3.เพิ่มคำสั่งนี้ลงไปใน /etc/natd.conf จะ forward เท่าไหร่ก็ตามสบาย
redirect_port udp 192.168.0.4:53 53
redirect_port tcp 192.168.0.3:80 80
redirect_port tcp 192.168.0.2:25 25
redirect_port tcp 192.168.0.2:110 110
redirect_port tcp 192.168.0.2:143 143
==============================
จากการใช้งานผลปรากฎว่า
1. เครื่องลูกภายในออกเน็ตได้ปกติ
2. เครื่องภายนอกสามารถเรียกใช้งานได้ตามปกติ เช่น ไฟร์วอล์ ip xx.xx.xx.xx (จริง)หรือ www.xxx.com ก็จะ forward ไปหา ip Class C ได้ปกติ
3. เครื่องลูกไม่สามารถเรียก www.xxx.com ได้อาจจะเป็นเพราะ ipfw ป้องกันไว้(อันนี้ไม่รู้ครับ) วิธีแก้ก็ ทำ DNS เจ้า ip Class C ไว้ครับ เช่น web.xxx.com แทน เวลาเครื่องจะใช้เว็บภายในก็ไม่ต้องเรียกผ่าน www.xxx.com แต่เรียก web.xxx.com แทน
============
สรุปครับ
forward port ได้ผลครับ ติดขัดเล็กน้อยตรงที่เครื่องลูกเรียกผ่านเครื่องไฟร์วอลแล้วมันไม่ตีกลับมาห าเจ้าไอพี Clacc C ให้แค่นั้นแหละครับ
==============
ได้ผลยังไง ก็รายงานด้วยนะครับ
ที่มา :
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=6331
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=5855
http://www.thaibsd.com/webboard/show.php?Category=thaibsd&No=5872