How to install pfSense 2.1 by newbies

04/10/2556
กราบสวัสดีทุกๆท่านอีกครั้งครับ

วันนี้ผมจะมาเขียนเรื่อง วิธีการติดตั้ง pfSense ครับ ซึ่งอธิบายก่อนว่า pfSense คือ application firewall  ที่มีหลากหลาย feature มาก ไอ่ที่บอกว่ามากคือเราสามารถติดตั้งเพิ่มเติมได้นั่นเอง ยกตัวอย่างเช่น ทำ hotspot ,billing , proxy,log ,vpn ,captive portal,radius, ..  ตัว pfSense นั้นเป็น BSD แต่เราแทบไม่ต้องใช้ command กับมันเลยยกเว้นกรณีที่จำเป็นจริงๆ(แก้ไฟล์ระบบ) เพราะทุกอย่าง admin สามารถเข้าไปแก้ไขได้ทั้งหมดผ่านทาง webbrowser  เอาแค่นี้แหละคร่าวๆ วันนี้ผมตั้งใจจะเขียนแค่วิธีติดตั้งให้สามารถออกอินเทอร์เน็ตได้พอ ส่วนวิธีคอนฟิคทำอะไรอย่างอื่น ค่อยมาต่ออีกครั้ง เพราะมันเยอะมาก                  โอเค วันนี้สอนวิธีติดตั้ง pfSense เวอร์ชั้น 2.1 พึ่งออกเลยครับเมื่อวันที่  14 กันยายน 2556  สดๆร้อนๆ เผลอๆ บทความนี้ก็เป็นบทความแรกๆ ของ เวอร์ชั่น 2.1 ของเลยนะเนี่ย.. เอาล่ะครับถ้าพร้อมแล้วมาเริ่มกันเลย

1. เปิดเว็บ  pfSense  และไปโหลด2.1 มาจาก mirror ของผมเลือก mirror ของ NYI.net   ที่     http://files.nyi.pfsense.org/mirror/downloads  เวลาโหลดเลือกแบบ  pfSense-LiveCD-2.1-RELEASE-i386.iso.gz   หรือแบบ  pfSense-LiveCD-2.1-RELEASE-amd64.iso.gz   ก็สุดแล้วแต่ cpu ของแต่ละคนจะรองรับส่วนในนี้ผมขอทดลองโหลดแบบ 32 bit ซึ่งก็คือ i386 นะ

pfSense2

pfSense3 pfSense4

จากนั้นให้โปรแกรม 7zip แตกไฟล์ที่เราดาวน์โหลดมา จะได้ไฟล์  pfSense-LiveCD-2.1-RELEASE-i386-20130911-1815.iso   ซึ่งก็จะสามารถนำไปเขียนแผ่นเพื่อใช้ในการติดตั้ง หรือจะใช้เป็น image เพื่อติดตั้งบน virtualbox  หรือ vmware ก็ได้

2.ติดตั้ง virtualbox โดยไปโหลด virtualbox จากเว็บ ftp://ftp.psu.ac.th/pub/virtualbox

vitualbox

3. จากนั้นเริ่มสร้าง image pfSense ขึ้นมาโดยเลือกชนิดระบบปฏิบัติการเป็น BSD  ใครโหลดแบบ 64 bit มาก็เลือก version เป็น FreeBSD 64 bit นะ ส่วนตัวอย่างผมใช้แบบ 32 bit ก็เลยเลือก FreeBSD

pfSense7

แรมผมกำหนดให้เป็น 1.5 G กันเครื่องช้า

pfSense8

pfSense9

 

 

pfSense10 pfSense11

พื้นที่ใช้ทดลอง ซัก 30 GB. พอครับ

pfSense12ซึ่งจะได้ดังรูปนี้

pfSense13

จากนั้นเมื่อได้ image pfSense  มาเราก็มาเซ็ตค่าให้ pfSense ขอเรามัน boot จาก image เพื่อที่เราจะได้ติดตั้ง pfSense 2.1 ยังไงล่ะ

pfSense14

 

จากนั้นมาเซ็ตค่าเน็ตเวิร์ก โดยส่วนใหญ่แล้วการติดตั้ง pfSense นั้นจะใช้ Network Card  3 ใบ โดยใบแรกใช้เพื่อจำลองเป็น WAN และอีก 2 ใบที่เหลือใช้เป็น LAN และ DMZ (สำหรับวาง Server) ซึ่งจะหากไม่ทำ DMZ  จะใช้ 2 ใบก็ได้    โดยให้เรา Enable Network Adaptor 3 ใบเลยครับ และกดปุ่ม Advance เพื่อดู และจดหมายเลข Mac Address ด้วยนะเวลาติดตั้งเน็ตเวิร์กของ pfSense จะได้รู้ว่าตัวใหน   โดยตัวแรกผมปรับเป็น NAT เพราะว่าใน มหาวิทยาลัยใช้การยืนยันตัวตนผ่านเว็บเบราว์เซอร์ จะได้ไม่ต้องยืนยันตัวตน   แต่สำหรับใครที่นำไปใช้งานที่บ้าน หรือที่หอพัก หรือทำเล่นเอง ที่ไม่ต้องยืนยันตัวตนก่อนใช้งานอินเทอร์เน็ตให้ปรับเป็น Bridge Mode เพื่อที่จะได้รับ IP จาก WAN ของ Router โดยตรงเลย อย่าลืมจดเลข Mac Address ของ Network card ด้วยนะ ของผมเป็นเลข 08:00:27:2c:44:4a

 

pfSense15

จากนั้นก็กดเลือก Adapter 2 เพื่อเลือกใช้งาน Network2  ซึ่งเราจะทำเป็น LAN โดยให้เลือก Attached to: เป็น Internal Network ซึ่ง Network แบบ Internal Network คือ VLAN นั่นแหละ โดยแยกให้ Network วงนี้วิ่งอยู่แค่  intnet1   เปรียบสเหมือน vlan1 ไม่สามารถวิ่งข้ามไปยัง vlan2 ได้  แต่ถ้าหากอยากให้  intnet1 และ intnet2  สามารถส่งข้อมูลหากันได้นั้นเราต้องติดตั้ง  router โดยมีตัวอย่างตามสูตรของพี่วิบูลย์ แกใช้ ubuntu มาทำ router สามารถไปดูรายละเอียดการทำ router เพิ่มเติมได้ที่  http://sysadmin.psu.ac.th/2013/07/09/ubuntu-nat-router/   และ http://opensource.cc.psu.ac.th/Ubuntu_NAT_Router     สำหรับเครื่องลูกข่ายของเรา อย่าลืมจดหมายเลข Mac Address ด้วย ของผมเป็น 08:00:27:29:4a:04

pfSense16

จากนั้นก็กดเลือก Adapter 3 เพื่อเลือกใช้งาน Network3 ซึ่งเราจะทำเป็น DMZ โดยให้เลือกเป็น intnet1 เหมือนกัน สำหรับเครื่องเซิร์ฟเวอร์ของเรา อย่าลืมจดหมายเลข Mac Address ด้วย ของผมเป็น 08:00:27:21:2e:35

pfSense17

4. เมื่อเราตั้งค่า boot จาก image      pfSense-LiveCD-2.1-RELEASE-i386-20130911-1815.iso   ที่แตกไฟล์ และตั้งค่า Network แล้วเราก็กด boot เพื่อเริ่มติดตั้ง pfSense2.1 กันเลย

กดเปิดเครื่องเมื่อเจอหน้านี้ให้ปล่อยให้มัน boot เข้า default option เพื่อทำการติดตั้ง ไม่ต้องกดอะไรเลยครับ

pfSense18

ระบบมันก็จะ boot เข้า default option ของมัน

pfSense19

 

จากนั้นอันดับแรกที่มันจะถามคือ เราจะ  set ค่า VLAN  เลยใหม สังเกตุดูดีๆนะครับมันมีชื่อ Network Card ที่เราสร้างไว้เมื่อกี้ด้วย  เราจดเลข Mac Address มาแล้วใช่ใหม พอเราจดมาแล้วเราก็จะรู้ได้ว่าแต่ละ Network Card เรากำหนดให้มันทำหน้าที่อะไรบ้าง คราวนี้จดชื่อที่ระบบตั้งให้อีกที  ของผมเป็น em0 ,em1 ,em2 แต่ละเครื่องอาจไม่เหมือนกัน ช่างมันยังไงจดไว้ก่อน   จากนั้นเลือกตอบ n ยังไม่ต้อง ตั้งค่า VLAN ตอนนี้ก่อน

pfSense20

 

ต่อมามันจะให้ใส่ว่า Network Card ใดทำหน้าที่เป็นอะไรบ้าง

เช่น Enter the WAN interface name or ‘a’ for auto-detection :   เรารู้แล้วว่าเราจะให้  em0  ทำหน้าที่เป็น WAN เพราะเรา set network card ของ virtualbox ให้เป็น nat เพื่อให้สามารถออกเน็ตได้โดยไม่ต้องผ่านหน้า login ภายใน มอ. ถ้าเป็นภายนอกก็ใช้ network card ใบที่ต่อกับ router modem นั่นแหละครับทำเป็นขา WAN  ก็พิมพ์  em0 แล้วกด enter   แล้ว lan interface ก็พิมพ์ em1 แล้วกด enter  ส่วน dmz ก็พิมพ์ em2 แล้วกด enter จากนั้นมันก็ถามว่าจะเซ็ตค่า network card อื่นอีกป่าว ถ้าไม่มีก็กด enter

pfSense21

 

หากทำเสร็จแล้วก็จะได้ network card 3 อันดังนี้  มันก็จะบอกเลยว่าอันใหนทำเป็น wan อันใหนทำเป็น lan ,dmz จากนั้นตอบ  y แล้วกด enter เพื่อทำการติดตั้ง หากใครกำหนดผิดค่อยกลับไปแก้ใหม่ก็ได้ไม่ต้องเครียดครับ ชิวๆ

pfSense22

สังเกตุได้ว่ามันจะเซ็ต ไอพี ให้เลยโดยอัตโนมัติ หากใครเซ็ตเน็ตเวิร์กเมื่อกี้ผิด ให้เลือกเมนู 1 เพื่อกลับไปแก้ไขใหม่นะ ส่วนใครโอเคแล้วให้เลือกติดตั้ง pfSense ต่อเลยโดยเลือก พิมพ์ 99 แล้วกด enter

pfSense23

มันจะเข้ามาสู่หน้าติดตั้งเลือก accept these setting

pfSense24

จากนั้นเลือก install pfSense

pfSense25

เลือก disk เพื่อทำการติดตั้ง

pfSense26

เลือก format disk เพื่อเตรียมติดตั้ง

pfSense27

 

เลือก Geometry

pfSense28

เลือก format ad0

pfSense29

เลือก partition disk

pfSense30

 

pfSense31

 

pfSense32

 

pfSense33

ติดตั้ง boot block คงเหมือนติดตั้ง grub ใน ubuntu ล่ะมั้งครับ อันนี้ ผมเดาเอานะ

pfSense34ติดตั้ง boot block เสร็จสิ้น

pfSense36

 

เลือก partition สำหรับ ad0

pfSense37

pfSense38

pfSense39

 

จะมีแบ่ง partition ย่อยใหมถ้ามีก็แบ่งนะ

pfSense40

pfSense41

 

หน้านี้ให้เลือกแบบ Symmetric multiprocessing kernel (more than one processor)  นะครับ อย่าไปเลือกอันล่างเหมือนในรูปเดี๋ยวจะ boot ไม่ได้นะครับ หากเลือกอันล่างแล้ว boot ไม่ได้ให้ติดตั้งใหม่เลยครับ

pfSense42

 

จากนั้นมันก็จะทำลายตัวเอง เอ้ยไม่ใช่ reboot ตัวเอง 1 ครั้งเพื่อความเป็นศิริมงคล.

pfSense43

pfSense44

 

จากนั้นก็ไป removed ไฟล์ image  ออก   แล้วก็ boot เครื่อง

pfSense45

จากนั้น boot เครื่องมาจะเห็นว่าไม่มีเมนู 99 ปรากฏแล้วแสดงว่าเราติดตั้ง pfSense สำเร็จ

pfSense46

 

จากนั้นเลือก menu 2 แล้วกด enter เพื่อตั้งค่าหมายเลข ip address

pfSense47

 

จากนั้นก็เลือก Network Card  หากเราจะตั้งค่า LAN ก็ เลือกหมายเลข 2 แล้วกด enter หรือจะตั้งค่า WAN ก็ให้เลือกหมายเลข 1  จะตั้งค่าตรงนี้หรือตั้งข้างทีหลังก็ได้แล้วแต่ความสะดวก แต่ที่ผมพามาตั้งค่า LAN เพราะว่าการจะเข้าไปตั้งค่า pfSense ผ่าน webbrowser นั้นต้องรู้ ip address ของ pfSense ไม่งั้นเราจะเข้าไปตั้งค่าผ่าน browser ไม่ถูก ดูตามรูปเลยก็ได้ครับ  โดย LAN คือ network ที่ถูก NAT มาจาก WAN นะครับหากใช้ภายใน มอ. เน็ตเวิร์กวงนี้ไม่ต้องยืนยันตัวตนเพราะเครื่องผม login แล้วเครื่องที่อยู่ใน virtualbox สามารถวิ่งออกอินเทอร์เน็ตได้เลย โดยสามารถ set ip เป็น ipv6 ได้ด้วยนะครับ

pfSense49

โดยในตอนนี้ผมจะเปิด service dhcp server เพื่อแจก ip ให้กับเครื่องลูกข่ายภานใน  LAN หรือ intnet1  โดยเลือกตอบ y  เพื่อทำการเปิดใช้งาน dhcp server  ipv4 client address range คือ เริ่มจ่าย ip address ตั้งแต่หมายเลขเท่าใด ของผมกำหนดหมายเลขให้เริ่มจ่าย ip address ตั้งแต่หมายเลข 192.168.1.2  โดยให้สิ้นสุดการจ่ายหมายเลข ip address ที่หมายเลข ip address 192.168.1.254  และเลือกตอบ y ตรง revert to http as the web configurator  protocol  และกด enter

pfSense52

 

pfSense53

เมื่อตั้งค่าแล้วลองดูว่า ip address  กับไอ่ที่เราตั้งเมื่อกี้ตรงกันหรือไม่

pfSense54

 

จากนั้นทดลองสร้างเครื่องลูกข่ายใน virtualbox เพิ่มขึ้นมาอีกตัวนึงจะเป็นวินโดวส์หรือ linux ก็ได้ แต่ต้องกำหนดให้ network card เป็นแบบ Attached to : Internal  Network  ชื่อเน็ตเวิร์กเลือกเป็น intnet1 โดยผมทดลองโดยติดตั้งเครื่องลูกข่ายเป็น ubuntu 12.10 นะครับ ลองใช้ดูเล่นๆ

pfSense55

เช็ค ip address ปรากฏว่าอยู่ใน range  ที่ network card แจกตามปกติ

pfSense56

 

ลอง ping ไป  gateway ของ lan ดูซิ ได้เป็นปกติใหม?

pfSense57

ถ้าได้ให้เปิด browser เพื่อทำการ config pfSense กัน  โดย username แบบ default เป็น admin  password เป็น pfsense

pfSense58 pfSense59

 

จากนั้นตั้งชื่อ hostname อะไรก็ได้ , domain อะไรก็ได้ เวลาเปิด captive portal เครื่องลูกจะได้ชื่อนี้ ,ส่วน primary dns   ให้เลือกใช้  primary dns ของ  WAN นะ  โดยใน มอ. เราเป็น 192.100.77.2 , 192.100.77.5  ถ้าอยู่ด้านนอกเป็นมหาวิทยาลัย เช่น ที่บ้านใช้ 3bb primary ของ 3bb คือ  110.164.252.222 ,110.164.252.223  ส่วนถ้าเป็นของเจ้าอื่นก็ลอง google ดูนะครับ

pfSense60

จากนั้นตั้งค่า time server ของผมอยู่ใน มอ. เลยตั้งเป็น time.psu.ac.th   ใครอยู่ข้างนอกจะตั้งเป็น  time2.navy.mi.th  ก็ได้นะครับ

pfSense61

 

หากต้องการปรับเปลี่ยนการตั้งค่า dhcp ของ lan ก็สามารถทำได้ตรงนี้ครับ เมื่อตั้งค่าเสร็จแล้วมันก็จะ ให้รอซักครู่นะครับ หากมันนิ่งๆก็ปิดไปแล้วลอง login เข้ามาอีกครั้งนะครับ

pfSense62

จากนั้น login เข้ามาอีกครั้งระบบจะแสดงหน้า dash board ซึ่งเป็นหน้า status รวมๆรองระบบให้เราทราบว่าใช้ resource ไปเท่าไรแล้ว เราสามารถปรับเพิ่ม หรือ chart ในหน้านี้ได้ด้วยนะ

pfSense65

 

ส่วนเมนูในการดูค่าหรือตั้งค่า network สามารถเลือกเมนูที่ 2 จากซ้ายมือด้านบน ชื่อว่า interfaces  มันจะบอกเลยว่าเรามี network card กี่ใบจะตั้งค่าอะไรบ้าง จะเปิดหรือจะปิด interface ใบใหน ในนี้ก็จัดให้ครบครับ

pfSense66

 

ส่วนหากเราต้องการปรับค่าพื้นฐานตอนที่ใช้ wizard ของ pfSense ตั้งค่าเมื่อกี้ให้เราเข้ามาตั้งค่าได้ที่    system>general setup  นะครับpfSense67

มาเซ็ตค่า routing กันดีกว่าเพื่อการออกอินเทอร์เน็ตกัน ก่อนอื่นเลือกเมนู system > routing  ก็จะเจอหน้า routing table ของ pfSense  หากของใครมีเยอะก็ลบทิ้งบ้างเอาเฉพาะที่จำเป็น จริงๆแล้วผมใช้แค่อันเดียวนะ เซ็นให้เป็น dynamic route เพื่อความสบายใจในการทำงาน  โดยเราสามารถกด edit ได้ที่ icon ด้านขวา นะครับ

pfSense-routing1

pfSense69

เมื่อกดแล้ว ก็เลือกแค่ wan ครับ ตัวอื่นอย่าพึ่งไปเลือก gateway ก็เลือกให้เป็น dynamic ครับ ทำตามรูปเลยก็ได้ครับ

pfSense68

จากนั้น save และ เปิด webbrowser ที่เครื่องลูกลองเข้าเน็ตดู ก็จะเข้าใช้งานเน็ตได้ตามปกติแล้วครับ  เดี๋ยวตอนหน้าจะกลับมาอธิบายเรื่องทำ hotspot และก็ทำ คูปองนะครับ เพื่อใครจะเอาไปประยุกต์ใช้

สำหรับวันนี้เหนื่อยมากเลยครับเขียนตั้งแต่เช้า