การใช้งาน Firewall Filter บน MikroTik เพื่อทำ Access Policy

การกำหนด Access Policy บนอุปกรณ์ MikroTik เพื่อทำ Firewall ขององค์กร

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

จากภาพเน็ตเวิร์คที่ผมวาดผังไว้ด้านล่างนี้ จะเป็นโจทย์หลักของการทำ workshop นี้ครับ

 

 

Workshop_lab1

สมมติว่า

เราเป็น Network Admin ขององค์กร ซึ่งเจ้านายมีโจทย์ให้ดำเนินการปรับปรุงระบบเพื่อสร้างความปลอดภัยของข้อมูลในองค์กร โดย ปัจจจุบันเน็ตเวิร์คขององค์นี้ มีเครื่อง Server ที่ต้องการความปลอดภัย คือ ไม่ใช่ทุกคนที่สามารถเข้ามาใช้งานได้ เฉพาะผู้มีหน้าที่เท่านั้น

จากโจทย์นี้ เพื่อให้ง่าย เราจึงทำการแบ่งเน็ตเวิร์คออกเป็น 2 กลุ่ม คือ 192.168.2.0/24 สำหรับเครื่องคอมพิวเตอร์ทั่วๆ ในองค์กร และอีกกลุ่มคือ 172.30.10.0/24 เป็นกลุ่มเน็ตเวิร์คที่เอาไว้สำหรับกำหนดให้กับอุปกรณ์ Server  (สาเหตุที่ผมแยกแบบนี้เพราะต้องการแยกวงชัดเจน จากนั้นก็เพียงกำหนด Firewall บน MikroTik ให้ทำงานตามที่เราออกแบบไว้

สรุปแนวทางในการดำเนินงาน

  1. แบ่งเน็ตเวิร์คออกเป็น 2 กลุ่ม แยก แลนเน็ตเวิร์ค ทั่วไป กับ กลุ่มสำหรับเครื่องแม่ข่าย
  2. กำหนด firewall filter โดยกำหนดกลุ่ม Address list ไว้ ใครที่อนุญาตให้เข้าใช้งาน ให้อยู่ในกลุ่มที่ชื่อว่า ACCESS POLICY (กำหนดได้มากกว่าหนึ่ง)
  3. หากใครที่ไม่อยู่ในกลุ่ม และปลายทางจะวิ่งไปที่กลุ่มเครื่องแม่ข่าย Server นั้นให้ทำการ Drop ออกให้หมด (คือไม่อนุญาตให้เข้าใช้งานแม้แต่การ ping ก็ตาม)

รายละเอียดการ Configure สามารถดำเนินการได้ตามตัวอย่างด้านล่างนี้

ตั้งชื่อเร้าท์เตอร์ของเราใหม่ ผมใช้ชื่อว่า OTIKFIREWALL

/system identity
set name=OTIKFIREWALL

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

/interface ethernet
set [ find default-name=ether1 ] comment=ISP
set [ find default-name=ether2 ] comment=”SERVER ZONE (DMZ)”
set [ find default-name=ether3 ] comment=”LAN NETWORK”

กำหนดให้อินเตอร์เฟส 1-3 สามารถทำการค้นหาด้วย winbox ได้ (Discovery) จริงๆ ต้องปิดน่ะครับ เพื่อความปลอดภัย

/ip neighbor discovery
set ether1 comment=ISP
set ether2 comment=”SERVER ZONE (DMZ)”
set ether3 comment=”LAN NETWORK”
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik

ระบบทำการสร้าง Pool IP ให้ ซึ่งจะสร้างทั้งหมด 2 วงเน็ตเวิร์ค คือ dhcp_pool1 สำหรับ Server Zone และ dhcp_pool2 สำหรับวงเน็ตเวิร์คทั่วไป

/ip pool
add name=dhcp_pool1 ranges=172.30.10.2-172.30.10.254
add name=dhcp_pool2 ranges=192.168.2.2-192.168.2.254

เริ่มทำการสร้าง DHCP Server เพื่อแจกไอพีให้ลูกข่าย

/ip dhcp-server
add address-pool=dhcp_pool1 disabled=no interface=ether2 lease-time=1d10m \
name=DHCP-DMZ
add address-pool=dhcp_pool2 disabled=no interface=ether3 lease-time=1d10m \
name=DHCP-LAN

กำหนดค่าไอพีเน็ตเวิร์คให้กับ อินเตอร์เฟส โดยกำหนด 2 เน็ตเวิร์ค

/ip address
add address=172.30.10.1/24 comment=DMZ interface=ether2 network=172.30.10.0
add address=192.168.2.1/24 comment=”LAN NETWORK” interface=ether3 network=\
192.168.2.0

กำหนดการรับอินเตอร์เน็ตด้วย dhcp-client มาจาก router isp ที่ให้มา

/ip dhcp-client
add disabled=no interface=ether1

กำหนด dhcp server เน็ตเวิร์ค

/ip dhcp-server network
add address=172.30.10.0/24 gateway=172.30.10.1
add address=192.168.2.0/24 gateway=192.168.2.1

กำหนด DNS สำหรับใช้งาน เลือกใช้ ของ google

/ip dns
set allow-remote-requests=yes servers=8.8.8.8
set allow-remote-requests=yes servers=8.8.4.4

หัวใจสำคัญสำหรับการทำ firewall access policy ส่วนนี้กำหนด Address list เพื่อกำหนดว่าใครจะเข้าได้บ้าง โดยกำหนดชื่อไว้ชื่อว่า ACCESS POLICY สังเกตุมีไอพีแค่ 3 หมายเลขนี้เท่านั้นที่จะเข้า Server ได้

/ip firewall address-list
add address=192.168.2.253 comment=”ACCOUNTING 1″ list=”ACCESS POLICY”
add address=192.168.2.252 comment=”ACCOUNTING 2″ list=”ACCESS POLICY”
add address=192.168.2.251 comment=”ACCOUNTING 3″ list=”ACCESS POLICY”

กำหนดกฎ Firewall ว่า หากไอพีต้นทาง ที่ไม่มีอยู่ใน Addess List ชื่อ ACCESS POLICY แล้วจะวิ่งไปที่ปลายทางเน็ตเวิร์ค 172.30.10.0/24 (ทั้งวงเน็ตเวิร์ค) ให้ทำการ หยุดการทำงาน Drop 

/ip firewall filter
add action=drop chain=forward dst-address=172.30.10.0/24 src-address-list=\
“!ACCESS POLICY”

ตรงนี้กำหนดกฎไว้เพื่อให้เครื่องลูกข่ายสามารถออกสู่อินเตอร์เน็ตได้

/ip firewall nat
add action=masquerade chain=srcnat comment=MASQ-NETWORK out-interface=ether1

ตรงนี้เป็นเพียงแค่ตัวอย่างในการดำเนินงานครับ มาดูผลกัน

F1

ตัวอย่างภาพการกำหนด Address List ชื่อ ACCESS POLICY

F2

ตัวอย่างการสร้าง Firewall Filter

F3

หากต้นทางไม่ได้มาจาก ACCESS POLICY ให้ Drop ให้หมด

F4

Drop ให้หมดครับ ตรงนี้

F5

ลองทดสอบ Client ไอพีหมายเลข 192.168.2.3 จะสามารถเข้าใช้งานได้ เพราะอยู่ในกลุ่ม ACCESS POLICY

F6

ไอพีเครื่อง SERVER 172.30.10.2 ที่เรากำหนดไว้

F7

กรณีเครื่อง Client เป็นไอพีอื่นๆ จะไม่สามารถเข้าใช้งานได้ สังเกตุแม้แต่ ping ก็ไม่ได้

F8

ทดสอบ Workshop นี้ด้วย VirtualBox ครับ

F10

คิดว่าแนวคิดนี้น่าจะเป็นประโยชน์สำหรับผู้ที่กำหนดสนใจทำระบบความปลอดภัยในองค์กร นี่เป็นเพียงแค่ส่วนหนึ่งเท่านั้น

ท่านใดสนใจยินดีให้คำปรึกษา ติดต่อ 02-5384378 095-5499819 ได้เลยครับ

Leave a Reply

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *