IPcop


การใช้งาน IPcop เบื้องต้น
ตัวอย่างการใช้งาน IPCop


บทนำ
IPCop เป็น Linux Open Source ที่พัฒนาขึ้นมาเผยแพร่ภายใต้ GNU General Public License และมีเป้าหมายเน้นทางด้านระบบความปลอดภัยของเครือดังข้อความที่ว่า "The Bad Packets Stop Here" เพราะฉะนั้นจึงเหมาะมากที่จะนำมาพัฒนาเป็น Firewall อย่างไรก็แล้วแต่ สำหรับผู้ใช้ที่ไม่ต้องการเน้นเรื่องของ Firewall มากนักเช่นองค์กรขนาดเล็กที่เน้นเรื่องของการทำ Proxy (Squid) หรือทำ NAT เพื่อให้เครื่องลูกข่ายภายในสำนักงานสามารถใช้งานอินเตอร์เน็ตได้ ผู้เขียนขอแนะนำว่า Linux ตัวนี้น่านำมาใช้มากครับ เพราะมีขนาดเล็ก (40 MB) กินทรัพยากรน้อย การคอนฟิกก็ง่ายมากเพราะสามารถคอนฟิกผ่าน Browser ได้  การเปิดบริการ Proxy ก็ไม่ยุ่งยากเมื่อติดตั้งเสร็จแล้วสามารถใช้งาน Proxy ได้เลย โดยเฉพาะถ้าต้องการใช้งาน Transparent Proxy ก็ง่ายมากเลยแค่คลิ๊กที่เดียวก็สามารถทำได้แล้ว ในส่วนของ NAT ติดตั้งเสร็จก็มีการทำ NAT ไว้ให้แล้วเช่นกัน 

IPCop ได้ออกแบบระบบโดยกำหนด Network Interface เป็นรูปแบบของโทนสีจำนวน 4 สี (4 Network Interface) ดังนี้
    - RED Network Interface เครือข่ายส่วนนี้เป็น Internet หรือ Untrusted Network จุดประสงค์หลักของ IPCop คือเพื่อป้องกันเครือข่าย (คอมพิวเตอร์) ในส่วนที่เป็น GREEN , BLUE และ ORANGE จากทราฟฟิกที่มาจาก RED Network
    - GREEN Network Interface อินเตอร์เฟสนี้เชื่อมต่อกับคอมพิวเตอร์ภายในซึ่งเป็นส่วนที่มีการป้องกันจาก IPCop
    - BLUE Network เครือข่ายส่วนนี้เป็นออพชันให้ผู้ใช้เชื่อมต่อกับอุปกรณ์ที่เป็น Wireless ที่เป็นเครือข่ายแยก (seperate network) ซึ่งคอมพิวเตอร์ในส่วนนี้ไม่สามารถติดต่อกับเครือข่าย GREEN ได้เว้นเสียแต่ถูกควบคุมแบบ "pinhole" หรือผ่าน VPN   ทราฟฟิกที่จะมายังเครือข่ายนี้ถูก route ผ่าน Ethernet NIC

   - ORANGE Network เครือข่ายส่วนนี้เป็นออพชันที่อนุญาตให้ผู้ใช้วางเซิร์ฟเวอร์ที่สาธารณสามารถเข้าถึงได้เป็นแบบแยก (seperate network) คอมพิวเตอร์ในส่วนนี้ไม่สามารถติดต่อกับ GREEN หรือ BLUE ได้ เว้นเสียแต่ถูกควบคุมโดย DMZ pinholes ทราฟฟิกที่เข้ามาเครือข่ายนี้ถูก route ผ่าน Ethernet NIC

คำแนะนำสำหรับหน่วยงานขนาดเล็กที่ต้องการแค่ทำ Proxy และ NAT (หรือจาจจะเพิ่มเติมอย่างอื่นอีกก็ได้)
แม้ว่า IPCop จะเน้นการใช้งานสำหรับการทำ Firewall ที่อาจจะต้องมีการ์ดแลน 3 ถึง 4 การ์ดบนเครื่องที่เป็น Server แต่สำหรับผู้ใช้ที่ไม่ต้องการฟังก์ชันมากขนาดนั้นก็สามารถประยุกต์ใช้งานได้ครับ  เช่นหน่วยงานที่ต้องการทำ Proxy และ NAT ซึ่งสามารถทำได้ด้วยการติดตั้งบน Server ที่มีการ์ดแลนแค่สองการ์ด พอติดตั้งเสร็จท่านก็สามารถใช้งาน NAT ได้เลย ถ้าอยากจะใช้งาน Proxy ก็ให้ทำการ Enable Proxy ผ่าน Browser หรือถ้าจะให้เป็น Tranparent Proxy ก็เช่นกัน หรือถ้าจะใช้งานฟังก์ชันอื่น ๆ อีก ก็สามารถคอนฟิกเพิ่มเติมได้เลย  เช่นการใช้งาน VPN, การทำ DHCP Server, การทำ caching DNS Proxy,Dynamic DNS เป็นต้น 

ในกรณีที่หน่วยงานของท่านมี Proxy Server แยกไปอยู่อีกเครื่องไม่ใช่เครื่อง Gateway ที่กำลังพูดถึงนี้  ก็สามารถสั่งให้เครื่อง Gateway เครื่องนี้ชี้ Proxy ไปหาเครื่องอื่นได้ (Upstream proxy) ซึ่งไม่ต้องใช้โปรโตคอล ICP (3130) นะครับ คือชี้ไปยังเครื่อง Proxy อีกเครื่องโดยระบุพอร์ตที่เป็น http เลย ซึ่งการเซ็ตตรงนี้ก็ง่ายเช่นกัน แค่ระบุชื่อ Proxy Server ปลายทางและพอร์ตที่เป็น http port ที่ทำงานอยู่เท่านั้น


ตัวอย่างการใช้งานจากเว็บของ IPCop
สำหรับตัวอย่างการใช้งานที่ทางเว็บไซต์ของ IPCop ได้แนะนำเอาไว้ก็เป็นดังรูปที่ 1ครับ แต่อย่างที่บอกไปนะครับว่า คนที่มีเครื่องที่มีการ์ดแลนแค่สองใบก็สามารถประยุกต์ใช้งานได่เช่นกัน ไม่ต้องเชื่อมต่อเต็มระบบตามแสดงในรูป


รูปที่ 1 ตัวอย่างการเชื่อมต่อใช้งาน IPCop (มาจากข้อมูลในเว็บของ IPCop)


ตัวอย่างการใช้งานของผู้เขียนเอง
ในการศึกษาของผู้เขียนได้จำลองเครือข่ายขึ้นมาจำนวน 4 เครื่องข่ายดังรูปที่ 2 ซึ่งในการใช้งานจริงของแต่ละหน่วยงานอาจจะไม่ได้เป็นแบบนี้นะครับ เช่นอาจจะมีแค่ 2 หรือ 3 อินเตอร์เฟสก็ได้ สำหรับขั้นตอนของการติดตั้งโปรแกรมผู้เขียนไม่ขอกล่าวถึงนะครับ เพราะติตตั้งได้ไม่ยาก และมีคำแนะนำจาก Document ของ IPCop ให้แล้ว สามารถดาวน์โหลดได้ที่ http://www.ipcop.org/1.4.0/en/install/install-en-1.4.0.pdf.zip โดยในขั้นตอนของการติดตั้ง ในส่วนของการเลือกรูปแบบ ซึ่งขึ้นอยู่กับรูปแบบการเชื่อมต่อและจำนวนการ์ดแลนของแต่ละคน สามารถเลือกรูปแบบการติดตั้งได้ดังต่อไปนี้ :

• GREEN (RED is modem/ISDN)
• GREEN + RED (RED is Ethernet)
• GREEN + ORANGE + RED (RED is Ethernet)
• GREEN + ORANGE (RED is modem/ISDN)
• GREEN + BLUE + RED (RED is Ethernet)
• GREEN + BLUE (RED is modem/ISDN)
• GREEN + BLUE + ORANGE + RED (RED is Ethernet)
• GREEN + BLUE + ORANGE (RED is modem/ISDN)

ซึ่งของผู้เขียนเองเป็นแบบ GREEN + BLUE + ORANGE + RED (RED is Ethernet) โดยอาจจะมีขั้นตอนที่ยุ่งยากนิดหนึ่งในส่วนของการเซ็ต Driver ให้กับการ์ดแลน ซึ่งตรงนี้ขอแนะนำให้อ่านคำแนะนำให้ดี


รูปที่ 2 ตัวอย่างการเชื่อมต่อใช้งาน IPCop (จากการทดลองของผู้เขียน)

ตัวอย่างกาาคอนฟิกเพื่อใช้งาน
- การคอนฟิกในส่วนของ GREEN
เมื่อเราติดตั้งเสร็จแล้วก็ให้คอนฟิกผ่าน Browser ของเครื่องที่อยู่ในวง GREEN โดยให้เรียกที่ที่ http://ipcop:81 ซึ่งจะ redirect ไปยัง https://ipcop:445 หรืออาจจะระบุเป็น IP Address ก็ได้ นั่นคือจากรูปที่ 2 สามารถเรียกได้เป็น http://192.168.1.1:81 หรือ https://192.168.1.1:445

โดยการใช้งานในขั้นแรกเครื่องที่อยู่ในวง GREEN สามารถใช้งาน Internet ได้เลยเพราะมีการทำ NAT บน IPCop ไว้แล้ว แต่ถ้าต้องการใช้งานอินเตอร์เน็ตผ่าน Proxy ก็ใำห้ทำการ Enabled on Green โดยไปที่เมนู SERVICES --- PROXY แล้วให้ป้อนยูสเซอร์เป็น Admin และรหัสผ่านตามที่ได้ป้อนเอาไว้ในขั้นตอนการติดตั้ง แล้วจะได้ดังรูปที่ 3


รูปที่ 3 แสดงหน้าต่างการคอนฟิก Proxy

โดยถ้าต้องการให้เครื่อง Client ในวง GREEN สามารถใช้งานผ่าน Proxy (Squid) ที่ติดตั้งอยู่บน Gateway ที่เป็น IPCop ได้ก็ต้องสั่งให้ Enabled on Green โดยการใช้งาน ที่ Browser ของเครื่อง Client ต้องมีการกำหนดให้ชี้ Proxy ไปที่เครื่องที่เป็น IPCop แต่ถ้าให้ลดความยุ่งยากโดยที่ไม่ต้องกำหนดค่าที่ Browser ก็ทำได้ด้วยการสั่งให้ Transparent on green

- การคอนฟิกในส่วนของ BLUE
.ในพื้นที่ของ BLUE ซึ่งเหมาะสมสำหรับเครือข่ายที่เป็น Wireless หรือจะประยุกต์ใช้สำหรับเครือข่ายไม่ใช่ Wireless ก็ได้ เป็นส่วนที่ค่อนข้างจะมีการควบคุม กล่าวคือค่าเริ่มต้นของเครือข่ายในส่วนนี้จะติดต่อไปไปไหนไม่ได้เลย (ยกเว้นเครื่องในพื้นที่ของตัวเอง) ดังนั้นถ้าจะให้สามารถติดต่อไปเครือข่ายอื่นได้ก็ต้องมีการคอนฟิกค่าเพิ่มเติม

ถ้าต้องการจะให้เครือข่าย BLUE สามารถใช้งานอินเตอร์เน็ตได้ รวมถึงการใช้งาน Web Access ไปยัง GREEN หรือ ORANGE ก็ให้คอนฟิกที่เมนู Firewall - Blue Access ให้ป้อนค่าดังรูปที่ 4 โดยมีข้อแม้ว่าสามารถป้อนได้ทีละเครื่องเท่านั้นไม่สามารถกำหนดค่าเป็นเครือข่ายได้ (หรือกำหนดได้ ผู้เขียนยังไ่ม่ทราบเหมือนกัน) และต้องมีการคลิ๊กที่ Enabled ด้วย และถ้าต้องการกำหนดการใช้งานให้มีการตรวจสอบ MAC Address ด้วย ก็สามารถกำหนดได้ แต่ในที่นี้ไม่ได้กำหนดครับ


รูปที่ 4 แสดงการกำหนดให้เครื่องในเครือข่าย Blue สามารถใช้งานอินเตอร์เน็ตได้ (รวมถึงการใช้งาน Web Access ไปยัง Green และ Orange)

ค่าที่เราป้อนเข้าไปจากหน้าต่างดังกล่าวนี้จะเข้าไปอยูในไฟล์ /var/ipcop/wireless/config ของเครื่องที่เป็น IPCop

จากการกำหนดที่ผ่านมาเ่ท่าที่ผู้เขียนไ้ด้เห็นคือเครือข่าย BLUE สามารถติดต่อไปยัง Web Server ในพื้นที่ ของ GREEN และ ORANGE ได้ แต่โปรโตคอลอื่นยังไม่ได้ ซึ่งถ้าจะให้สามารถติดต่อได้ต้องมีการคอนฟิกที่เมนู Firewall - DMZ Pinholes เช่นถ้าจะให้เครื่องใน BLUE ที่มี IP เป็น 192.168.2.10 สามารถ FTP ไปยังเครื่องที่อยู่ใน GREEN ที่มี IP เป็น 192.168.1.10 ก็ให้ทำการเปิดพอร์ต TCP 21 ดังรูปที่ 5 และในการกำหนดค่า Port เราสามารถกำหนดเป็นช่วงได้เช่น
• * หมายถึง 1-65535
• 85-* หมายถึง 85-65535
• *-500 หมายถึง 1-500


รูปที่ 5 ตัวอย่างการทำ Pinholes ให้เครื่องใน BLUE สามารถ FTP ไปยังเครื่องใน GREEN ได้

ในกรณีที่ต้องการให้เครือข่ายใน BLUE สามารถใช้งาน Proxy ได้ก็ให้ทำการ Enabled Proxy หรือจะทำ Transparent Proxy ด้วยก็ได้ ด้วยการเลือกเมนู SERVICES -- PROXY และคลิ๊กรายการ Enabled on Blue และ Transparent on blue ดังรูปที่ 6


รูปที่ 6 แสดงการ Enables Proxy และ Transparent Proxy

-การคอนฟิกในส่วน ORANGE
ในส่วนนี้อาจจะเรียกว่าส่วน DMZ ซึ่งมักจะนิยมวาง Server ที่ต้องการให้สาธารณะสามารถติดต่อได้ เช่น Mail Server , Web Server , FTP Server , DNS Server ฯลฯ การกำหนด IP Address ในส่วนของ DMZ สามารถกำหนดได้ทั้งแบบที่ที่เป็น Public IP หรือ Private IP

การกำหนด Server ใน DMZ เป็น Private IP ก็จะอาศัย Public IP ที่ตัว Gateway แล้วทำการ Forwarding ไปยัง Server จริงที่เป็น Private IP โดยอาศัย Port เป็นตัวแยกความแตกต่าง โดย Server หลาย ๆ ตัวอาจจะใช้ Public IP แค่ IP เดียวก็ได้ หรือถ้าต้องการใช้หลาย IP (IP ที่อยู่ในกลุ่มเดียวกับ RED IP) ก็ทำได้ด้วยการใช้ Alias IP ซึ่งสามารถสร้างได้จากเมนู Network -- Alias นั่นคือเป็นการกำหนดให้การด์แลนที่เป็น Red Interface มีหลาย IP นั่นเอง

การกำหนด Server ในวง DMZ ให้เป็น Public IP ก็ทำได้เหมือนกันสำหรับหน่วยงานที่มี IP มากพอ ซึ่งจะสะดวกสำหรับการบริหารจัดการเครือข่าย โดยในที่นี้ผู้เขียนเองขอยกตัวอย่างเป็นแบบ Public IP แต่การใช้งาน IPCop กับการกำหนดแบบนี้จะมีข้อเสียคือ Server ภายใน DMZ ไม่สามารถทำงานเป็น Server ชนิดเดียวกันมากกว่าหนึ่ง เพราะการ Forwarding ไม่สามารถ Forward พอร์ตเดียวกันไปที่ Server มากว่า 1 ตัวได้

ฉะนั้นการคอนฟิกจากรูปที่ 2 เพื่อให้คนภายนอกสามารถติดต่อมายัง Server ของเราได้ก็ต้องทำการคอนฟิกด้วยการทำ Port Forwarding โดยทำได้ด้วยการเลือกเมนู Firewall -- Port Forwarding ซึ่งจากรูปที่ 2 เราจะต้องทำการ Forwading ดังนี้
• Forward พอร์ต 80 ไปยัง 202.129.49.194 (Web Server)
• Forward พอร์ต 25 ไปยัง 202.129.49.194 (SMTP)
• Forward พอร์ต 110 ไปยัง 202.129.49.194 (POP)
• Forward พอร์ต 143 ไปยัง 202.129.49.194 (IMAP)
• Forward พอร์ต 21 ไปยัง 202.129.49.195 (FTP Server)
• Forward พอร์ต 53 ไปยัง 202.129.49.196 (DNS Server)

ดังแสดงตัวอย่างในรูปที่ 7 ซึ่งจากรูปจะเห็นว่า Alias IP เป็น DEFAULT IP คือเป็น IP ของ Red Interface นั่นเอง ซึ่งถ้ามีการสร้าง Alias (วิธีการทำให้ Red Interface มีหลาย IP ในการ์ดเีีดียว) ก็จะมีรายการของ Alias IP ที่ได้สร้างไว้แสดงให้เห็นด้วย แต่ตอนนี้ไม่มีเพราะเราไม่ได้มีการกำหนดค่าของ Alias IP และรูปที่ 8 เป็นผลจากการทำ Port Forwarding ของ Server ทั้งหมด โดย IPCop ได้มีการสงวนพอร์ตที่ห้ามทำการ Forwarding คือ 67, 68, 81, 222, and 445 ซึ่งเป็นพอร์ตที่ใช้งานบน IPCop Firewall เอง


รูปที่ 7 แสดงตัวอย่างการทำ Port Forwardind ไปยัง Web Server


รูปที่ 8 ตัวอย่างการทำ Port Forwarding ให้กับ Server ชนิดต่าง ๆ

การทำ Forwarding นั้นสามารถทำการ Forwarding เข้าไปยังวงที่เป็น Green ได้เช่นกัน ฉะนั้นถ้าเครื่อง IPCop ของท่านมีการ์ดแลนแค่สองการ์ดคือมี RED กับ GREEN และได้วาง Server ไว้ในวง Green ก็สามารถทำการ Forward เข้าไปยัง Server ที่อยู่ในวง Green ได้เช่นกัน

สำหรับรูปที่ 9 เป็นตัวอย่างการทำ Alias IP ซึ่งทำได้จากเมนู Network -- Aliases ซึ่งจากรูปหมายถึงว่าเราได้กำหนดค่า IP Adderss 202.129.16.28 ให้กับ Interface ที่เป็น RED อีก IP หนึ่ง ซึ่งอาจจะมีประโยชน์สำหรับการ Forwarding ที่มีการใช้ Private IP หรือกรณีอื่น ๆ


รูปที่ 9 แสดงตัวอย่างการทำ Alias IP

การคอนฟิกในส่วนของ Extenal Access
ถ้าคุณต้องการที่จะเข้ามาคอนฟิกเครื่อง IPCop จากระยะำำไกล (IPCop machine remotely) ก็ทำได้ด้วยการเปิดพอร์ต 445 ซึ่งเป็น https ของ IPCop ซึ่งจะทำให้สามารถทำการ Remote config ผ่าน Red Interface ได้ และถ้าต้องการให้สามารถใช้งาน ssh (ssh access) ก็ให้ทำการเปิดพอร์ต 222 ซึ่งเป็น ssh ของ IPCop ดังรูปที่ 10 โดยในส่วนของกาำรกำหนด Source IP เราสามารถระบุเป็นเฉพาะเครื่องใดๆ หรือเฉพาะ Network ได้ แต่ในที่นี้เป็นการเปิดทั้งหมด (All) และถ้าีมีการสร้าง Alias ก็สามารถกำหนด Destination IP เป็น Alias IP ได้

ตั้งแต่เวอร์ชั้น 1.3.0 เป็นต้นมา การทำ External Access จะควบคุมเฉพาะการ Access ไปยัง IPCop box เท่านั้น ซึ่งไม่มีผลต่อเครือข่ายของ Green, Blue และ Orange นั่นคือในปัจจุบันนี้จะถูกควบคุมจากส่วนของ Port Forwarding


รูปที่ 10 ตัวอย่างการทำ External Access เพื่อเปิด https และ ssh สำหรับการทำ Remote

คำสำคัญ (Tags): #ipcop
หมายเลขบันทึก: 106774เขียนเมื่อ 27 มิถุนายน 2007 16:01 น. ()แก้ไขเมื่อ 6 มิถุนายน 2012 11:24 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (0)

ไม่มีความเห็น

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท