ตอนที่5: การกำหนด User Authentication
pfSense มีคุณสมบัติเพื่อใช้สำหรับกำหนด User Authentication ก่อนการใช้งานเว็บไซต์เรียกว่า Captive Portal, สามารถอนุญาตระบุ MAC Address และ IP Address ใดๆ โดยไม่ต้องทำการ Authen ได้อีกด้วย, หรือจะปรับปรุงหน้า Authen ให้เป็นรูปแบบที่ต้องการก็ย่อมได้เช่นเดียวกัน
ขั้นตอนการติดตั้งและใช้งาน Captive Portal
1. เปิดใช้บริการ โดยไปที่ Service > Captive Portsl
และทำการกำหนดค่าต่างๆ ตามภาพตัวอย่างนี้
คำอธิบายเพิ่มเติม
Interface: เลือก LAN เพื่อเปิดใช้งาน Captive portal
Maximum concurrent connections: จำนวนการ login สูงสุดต่อ user ถ้ากำหนดเป็น 0 = no limite, ถ้าปล่อยว่างไว้จะ connect พร้อมกันได้ 4 Clients
Idle timeout: ถ้า Client ไม่มีการใช้งาน Internet เป็นเวลา xx นาที จะทำการ Disconnect
Hard timeout: บังคับให้ Dicconnect เมื่อครบ xx นาที
Logout popup window: Enable logout popup windows กำหนดให้แสดงหน้าต่างสำหรับ login / logout
Redirection URL: กำหนดให้ redirect ไปยังเว็บไซต์ใดๆ เมื่อ login สำเร็จ
Concurrent user logins: Disable concurrent logins ถ้าเลือกคุณสมบัตินี้ จะส่งผลให้ user ปัจจุบันถูก Disconnect เมื่อมีการ login ด้วย user เดียวกันจากเครื่องอื่นๆ (เกี่ยวข้องกับ Maximum concurrent connections)
Per-user bandwidth restriction: จำกัดการ download / upload ต่อเครื่อง
Authentication: เลือก Local user manager
2. สร้างบัญชีผู้ใช้ โดยไปที่แถบ User และทำการกำหนด Username & password

3. Pass-through MAC ใช้ในกรณีที่ต้องการกำหนดให้ MAC Address ใดๆ สามารถใช้ Internet โดยไม่ต้องผ่านการ Authentication

* 4. Allowed IP Address ใช้ในกรณีที่ต้องการกำหนดให้ IP Address rang ใดๆ ไม่ต้องผ่านการ Authentication

* คุณสมบัติข้อนี้ไม่ได้ผลลัพธ์อย่างที่ควรจะเป็น ถ้าใครลองแล้วได้ผลเป็นอย่างอื่น กรุณาแจ้งด้วยนะครับ
———————————————————————————-
การติดตั้ง freeRADIUS Authentication
ภาคต่อนะครับ เห็นเพื่อนๆ ถามมาเรื่อง freeRADIUS ก็เลยจับภาพมาให้ดูเป็นตัวอย่าง ซึ่งมีขั้นตอนการติดตั้งง่ายๆ ดังตัวอย่างด้านล่างนี้
1. กำหนดค่าในส่วนของ FreeRADIUS – Settings

2. สร้าง Client ขึ้นมา เนื่องจากอยู่บนเครื่องเดียวกัน Client ในที่นี้ก็คือ IP Address ของ pfSense นั่นเอง

3. ตามด้วยการสร้าง User ครับ

4. ที่ Captive Portal เลือก Authentication เป็น RADIUS แล้วใส่ IP Address, Port, Shared Secret ที่ได้สร้างไว้ตามข้อ 2

สามารถนำไปใช้ Authen กับระบบอื่นๆ เช่น PPPoE Server หรือ PPTP VPN ท่านใดทดลองแล้วเห็นว่ามีประโยชน์กรุณาโพสต์วิธีการให้เพื่อนๆ ได้เรียนรู้ด้วยนะครับ






ขอโทษครับ พอดี pfsense ของผมเพื่อนมาทำไว้ให้ ดันไม่มี Per-user bandwidth restriction: ทำไงดีครับ เพราะข้อสำคัญคือต้องการ block load bit ครับ ทีแรกไปทำที่ traffic shaper เหมือนกับว่า ในระบบโดยรวม อืด หมดเลยครับ (ตอนนี้ทดลองทำแค่ 2 เครื่องเท่านั้น) ไม่สามารถโหลดบิตได้เลย (เยี่ยม) แต่เข้าเวปหรือเล่นเกมช้ามาก เช็ค speed ไม่ขึ้นเลยครับ ไม่รู้ว่าทำอะไรผิดหรือเปล่า
Per-user bandwidth restriction เป็นคุณสมบัติใหม่ที่เพิ่มมาใน pfSense 1.2.3 RC1 สามารถโหลด New Installs หรือ Ugrade Version ได้จากลิงค์ด้านล่างนี้
http://www.laontalk.com/2009/05/08/954
รบกวนวิธีการ upgrade version ได้ไหมครับ เพราะเพื่อนที่มาทำให้ก็ติดต่อไม่ค่อยได้อยากจะทำเองครับ
.
การ Upgrade Version ของ pfSense
1. ทำการ backup ข้อมูลระบบก่อน โดยไปที่
Diagnostics > Backup/Restore > Backup Confguation เลือก Download Configuration
2. Download ไฟล์สำหรับ Upgrade มาเก็บไว้ที่เครื่องเรา ลิงค์สำหรับ Download หาดูในกระทู้เกี่ยวกับ pfSene 1.2.3 RC1
3. ทำการ Upgrade โดยไปที่ System > Firmware > Enable firmware upload
เลือกไฟล์ pfSense-*.tgz
รอจนกว่าจะดำเนินการเสร็จ แล้ว Restart ระบบอีกครั้งหนึ่ง จากนั้นควรสำรวจค่า configure ต่างๆ ว่าครบถ้วนหรือไม่
ขอบคุณครับ ตรงที่ Per-user bandwidth restriction ตรงนี่ค่าที่กำหนดคือทุกเครื่องเท่ากันหมด แต่ถ้ากำหนดเฉพาะเครื่องหละครับ อย่างเช่า เครื่อง a เป็น50 เครื่อง b เป็น100 จะทำได้ไหมครับ แล้วก็ ตรง Radius authentication คืออะไรครับมันใช้ทำอะไรอ่ะครับ
เท่าที่สำรวจดู ไม่สามารถกำหนด per-user bandwidth ให้แตกต่างกันได้ ถ้ามีก็จะดีไม่น้อยเลยทีเดียว อยากได้อยู่เหมือนกัน
ส่วน RADIUS Authentication ใช้สำหรับร้องขอสิทธิ์การใช้งานไปยัง Radiud Server เช่น Active Directory User บน Windows Server 2003 หรือ FreeRadius ของ Linux
ลองติดตั้ง Package freeradius ของ pfSense ดูนะครับ แล้วเลือกเป็น RADIUS Authentication
ขอบคุณครับ
## รบกวน ช่วนสอน PPPoE เชื่อมกับ FreeRadius หน่อยครับ
เพราะ Authentication ผ่าน PPPoE จะป้องกัน โปรแกรม NetCutได้ ตอนนี้ NetCut ระบาดมาก
ผมลอง PPPoE แล้ว แต่ เก็บ User ที่ FreeRadius ไมได้ ไม่ทราบว่าต้องอยู่คนละเครื่องหรือไม่
แล้วก็ จะใช้ Traffic shapper จำกัด Bandwidth อีกทีนึง แล้วก็จะ เก็บ log ด้วย
กำลังหมายถึง ใช้ Captive Portal Authenticate ไปยัง freeRADIUS แทนที่จะเป็น Local User อย่างนั่นใช่หรือไม่,
หรือว่าต้องการติดตั้ง PPPoE Server แล้วกำหนด Authen ไปยัง freeRADIUS ช่วยอธิบายว่าต้องการทำอะไร ถ้าสามารถโพสต์รูปประกอบได้ก็ดีครับ
ช่วยอธิบาย PPPoE Server หน่อยครับ ทั้งข้อดี และข้อเสีย แตกต่างจาก Captive portsl อย่างไร และใช้อันไหนดีกว่ากัน
PPPoE server มีอยู่แล้ว ใน PFSense ครับ เป็นคนละตัวกับ Captive Portal Authenticate ครับ
รู้สึกว่าจะ เป็นการ Connection แบบ Broadband ใช้คนละ Protocal ที่ใช้กันทั่วไป หรือกับ Netcut , Netcut เลย ไม่สามารถทำอะไรได้
นี่ผมทำรุปมาให้ดูแล้วคับตามลิงค์นี้เลย
http://net-engine.6te.net/pppoe.html
ผมลอง ใช้ Freeradius ควบคู่ไปด้วยแต่ทำไม่ได้ครับ ไม่แน่ใจว่าต้องอยู่คนละเครื่องหรือป่าวครับ
แล้วผมก็ยังไม่เคยลอง ใช้ Captive Portal ควบคู่กับ Freeradius เลยครับ เห็น Config ค่าเยอะไปหนอ่ย เลยยังไม่ได้ลองเลย ครับ
อ้ออ ! ลืมบอกไป ข้อดีข้อเสียของ PPPoE ครับ
- เครื่องไม่มี IP ก็สามารถ Connect ได้ครับ ไม่ต้องการ Gateway ไม่ต้องการ IP
- ระหว่างที่เรา Connect อยู่ เราก็สามารถเปลี่ยน IP ได้ตามอิสระเลย เน็ตไม่หลุด
- รอดพ้นจากเงื่อมมือของ NetCut
- ใช้การ์ดแลนได้ ไม่ต้องใช้ Modem (เห็นในหนังสือ ใช้แต่ Modem ครับ ต่อ PPPoE )
- น่าจะเป็นระบบเดียวกันกับ ISP ที่ใช้คอนเนค ต่อเข้าไปขอใช้บริการ
- ส่วน Bandwidth สูงสุดนี้ไม่แน่ใจครับ แต่ เคยที่ ปล่อย มา 1 Mbps ได้แต่นอน
รู้แค่นี้อ่ะครับ ข้อเสียยังไม่รู้เหมือนกัน
ผมลองใช้การจำกัด bandwidth แค่ 1024/user (ไม่ทราบว่าความเร็วที่ได้นี้ เป็นความเร็วเฉลี่ย หรือต้องปรับอย่างไรครับ) และใช้ traffic shapper ควบคู่ไปด้วยโยตั้งไว้ที่ 256/128 ก็จัดการได้แต่นาน ๆ เข้า เริ่มช้า อยากทราบว่าผมทำอะไรผิดหรือเปล่า หรือว่าควรปรับแต่งตรงไหนถึงจะเหมาะสมครับ รบกวนหน่อยครับ
อยากทราบว่า load balance กับ captive portal เปิดใช้งานมีปัญหาหรือเปล่าคะ เพราะลองทดสอบ เปิด load balance และ captive portal จะไม่เข้าส่วนของหน้า login แต่จะสามารถใช้งานผ่าน port 80 ได้ แต่ port อื่นไม่สามารถใช้งานได้ ถ้าต้องการเข้าหน้า login ต้องเข้าเองโดยผ่าน URL : http://ip-address:8000 ถึงจะเข้าหน้า login ได้ค่ะ และจะใช้งานอินเทอร์เน็ตได้ปกติ แต่ถ้าลองปิด load balance จะเข้าหน้า login ปกติ อยากทราบว่ามีใครพบปัญหาแบบนี้หรือเปล่าคะ อยากใช้ Pfsense เพราะสะดวกในการทำ load balance และจะทำ log พรบ. ด้วย Pfsense น่ะค่ะ ขอความคิดเห็นด้วยค่ะ
K.dangerman การกำหนด bandwidth ของ Captive Portal & Traffic Shaper มีข้อแตกต่างกันตรงที่ Captive Portal กำหนดให้ B/W ต่อ User ส่วน Traffice Shaper จะต้องกำหนดความเร็วสูงสุดที่เรามี
ตัวอย่างเช่น
Speed Internet = 1024/512
Traffice Shaper ต้องเป็น 1024/512
Captive Portal อาจเป็น 256/128
การใช้งานจริงอาจไม่ต้องกำหนด B/W per user เพราะ Traffic Shaper จัดการให้แล้ว หรือไม่ต้องใช้ Traffic Shaper แต่กำหนด B/W per user แทนก็ได้
k.momoru.k ลอง Authen ผ่าน freeRADIUS ตามตัวอย่างด้านบนดูนะครับ ถ้าทำได้แล้วยังไงช่วยทดสอบผ่าน Modem ด้วยก็ดี มีประโยชน์มากเลย
K.LinuxGirl เห็นในเว็บบอร์ดของ pfSense ใช้ Muti-WAN และ Captive Portal จะต้องแก้ไข code บางอย่างตามลิงค์ด้านล่างนี้
http://cvstrac.pfsense.com/chngview?cn=26872
http://cvstrac.pfsense.com/chngview?cn=26873
อ้างอิงกระทู้
http://forum.pfsense.org/index.php/topic,13844.0.html
ขอบคุณนะคะ อาการที่บอกในเรื่อง load balance + captive portal ใช้งานปกติแล้วค่ะ พอดีลอง update firmware ดูค่ะ
ขอบคุณมากนะคะ ^-^
สวัสดีครับทุกท่าน ผมเป็นคนหนึ่งที่อยากลองศึกษาอะไรใหม่ๆเพื่อที่จะได้นำองค์ความรู้ต่างๆ ที่ได้ไปถ่ายทอดและส่งต่อไปเรื่อยๆแบบไม่รู้จบครับ
พอดีมีโอกาสได้อ่านบทความจากเว็บไซต์้เกี่ยวกับตัว PfSense Firewall ซึ่งเป็นบทความที่มีประโยชน์มากครับ แล้วได้ลองทำ PfSense Firewall มาใช้งาน รู้สึกว่ามีความยืดหยุ่นได้ดีและใช้งานค่อนข้างง่ายครับ เพราะ Interface และ Menu แยกประเภทชัดเจน ตามที่เราต้องเข้าไปเซ็ท ในหัวข้อนั้นๆครับ (ง่ายสำหรับคนที่มือใหม่ Linux อย่างตัวผม) ยังไงก็ต้องขอขอบคุณทีมงานอย่างสูงครับที่ได้จัดทำเนื้อหาดีๆ มี VDO ให้ดูเพื่อง่ายแก่การเรียนรู้ครับ ขอบคุณอีกครั้งครับ
ผมมีปัญหาอยากจะเรียนถามทางทีมงานเพิ่มเติมเป็นข้อๆ ดังต่อไปนี้ครับ
1. เกี่ยวกับการทำ User Authen ครับ ไม่ทราบว่า PfSense Firewall สามารถทำ User Authen ผ่านทาง Active Directory ได้หรือเปล่าครับ มีขั้นตอนการทำยังไงครับ
2.การเพิ่มการ์ดแลนทำเป็น Option สามารถเพิ่มได้มากน้อยแค่ไหนครับ
3. การเพิ่ม Option ใช้ทำการแยก Server ต่างๆได้หรือเปล่าครับ
ขอบคุณทางทีมงานและเพื่อนๆทุกท่านมากครับ
ดีใจที่บทความที่นี่มีประโยชน์ครับ ขอบคุณสำหรับคำนิยม ถ้าท่านใดมีแนวคิดดีๆ ก็เสนอมาได้เลยนะครับ ติ-ชมได้ไม่ต้องเกรงใจ ช่วยกันแล้วสังคมจะอุดมปัญญา
สำหรับคำถาม K.Atom007 ขอตอบดังนี้
1. สามารถ Authen ผ่านทาง Active Directory ได้ครับ ตอนนี้อยู่ในระหว่างทดลอง เช่น Captive Portal, PPTP Server ทำการ Authen ไปยัง RADIUS Server (Active Directory)
2. การเพิ่ม LAN Interface ทาง pfSense ไม่ได้ระบุไว้ว่าสูงสุดเท่าไหร เมื่อพิจารณาความน่าจะเป็น นอกจากจะเพิ่ม LAN ทาง PCI Slot แล้วยังสามารถใช้วิธี VLAN ได้อีก คือใช้ Switch ที่รองรับ VLAN แล้วทำการกำหนด VLAN ID ที่ Switch และ pfSense เท่านี้ก็มี LAN เหลือเฟือให้ใช้แล้วครับ
3. หมายถึง DMZ Server ใช่หรือไม่ ถ้าใช่สามารถทำได้ครับ
ส่วนบทความก็จะพยายามทะยอยลงเรื่อง ๆ ตามแต่เวลาจะอำนวย และต้องทดสอบจนแน่ใจก่อนว่าใช้ได้จริง
ขอบคุณทางทีมงานมากครับที่กรุณา
ตัวผมเองก็ไม่ได้มีความรู้พื้นฐานของ Unix,Linux มากครับ ค่อยๆเรียนรู้อย่างช้าๆครับ หากตัวผมมีอะไรพอช่วยได้ ก็ยินดีครับ ถ้าลองแล้วได้ผลยังไง จะแจ้งให้ทราบครับ ขอบคุณครับ
อ่านแล้วได้ความรู้ดีครับ
พอดีผมมีใช้ทั้ง pfsense ที่ร้านเน็ต
แต่ที่บ.ผมใช้ clarck connect ไม่ทราบว่าจะมีบทความ เรื่องนี้หรือเปล่าครับ
แบบว่า ที่นี่อธิบายง่าย และเข้าใจดีครับ
อีกอย่างมีการตอบคำถามตลอดเลยนะครับ
ขอบคุณคับ
อยากทราบว่า เวลาเรา login เข้าไปแล้ว ไม่เห็นมีให้ logout เลยครับ ต้องไป เซต ตรงไหนหรอครับ หรืวว่าไม่มี
ตรง Captive Portal จะมีหัวข้อให้เลือก
Logout popup window: Enable logout popup windows (กำหนดให้แสดงหน้าต่างสำหรับ login / logout)
K.teekaou ความตั้งใจเริ่มแรกที่ทำวีดีโอสอนนะครับ เคยลองเขียนบทความแล้ว แต่จะให้ครอบคลุมทุกประเด็นนั้นทำได้อยากมาก ก็เลยลองทำเป็นวีดีโอซะเลยง่ายกว่าเยอะ
- ต้องการสร้างกระแสการสื่อสารรูปแบบใหม่ ให้คนไทยทำแบบนี้เยอะๆ โดยเฉพาะรัฐบาล ควรทำสื่อการสอนแบบ How to ไม่ใช่สารคดีให้มากๆ คนไทยจะได้เก่งๆ รวมทั้งนักสื่อสารมวลชน ไม่ใช่ทำแค่ Hardware, Software Review กินค่าโฆษณาไปวันๆ
- ต้องการแตกประเด็นออกมา ไม่ให้ซ้ำกับเว็บอื่น ผู้ศึกษาจะได้มีทางเลือกมากขึ้น
- อยากทำวีดีโอสอนทุกอย่างที่สามารถทำได้ แต่ด้วยเวลาและค่าใช้จ่าย ก็เลยต้องทะยอยทำไปเรื่อยๆ แบบนี้แหละครับ เว้นแต่สมาชิกท่านใดอยากลองทำวีดีโอ หรือเขียนบทความมา้แบ่งปันที่นี่ ยินดีเสมอครับ
- เคยลองเล่นมาทุกค่ายแล้วครับ แต่ชอบ pfSense เป็นการส่วนตัวก็เลยติดตามอยู่เรื่อยๆ ทำให้พบว่าจริงๆ แล้วการติดตั้งและใช้งานแทบไม่แตกต่างกันเลย ลองศึกษาให้ถึงแก่นสักอย่างดู ไม่ว่า firewall ค่ายไหนก็ไม่ยากเกินความพยายามครับ
- ผมก็ไม่ได้รู้ทั้งหมดครับ ยังมีคนเก่งกว่าผมมาก (อันนี้รู้ตัวดี)
ปล. ตอบไม่ตรงคำถามเท่าไหร่ 555+
ผมใช้ 1.2.3-rc1 + freeradius+squid3
opt1 + dhcp
authen ผ่าน แต่ option เช่น idle-time, session time ไม่ทำงาน
ผิดพลาดตรงใหนครับ
ทดลองตั้งค่า idle-timeout = 1 minutes แล้วทำการ login จากนั้นปิด Browser ทิ้งไว้สัก 2 นาที หรือปิดเครื่องไปเลยก็ได้
รอจนครบ 2 นาที (เพื่อความชัวร์) แล้วค่อยเปิดเครื่องใหม่ เปิด Browser เพื่อเข้า Internet แล้วหน้าจอ Authentication ขึ้นไหมครับ..
การปิด Browser บางที่อาจไม่ทำให้ idle-timeout หมดเวลา เนื่องจากเครื่องเราอาจจะมี Trojan, Spyware หรือโปรแกรมๆ อื่นๆ ที่ทำหน้าที่เชื่อมต่อกับ Internet ทุกๆ 5-10 นาที
ฉะนั้นเราอาจจะตั้ง idle-timeout ต่ำ ๆ เช่น 5, 10 หรือ 15 นาที หวังผลเวลาที่ User ปิด-เปิดเครื่องใหม่นั่นเอง…
อาจารย์ครับ ผมทำตามที่บอกทุกอย่างแล้วเมื่อก่อนเคยได้ อยู่ดีๆวันนี้ไม่ได้ซะงั้น เมื่อloginได้ เล่นได้อยู่หน้าgoogle หน้าเดียว จะเปิดหน้าเวปอีกที มันกับถามหา username และก็ password บังคับให้ใส่ พอใส่เสร็จมันก็เข้าไปหน้า pfsense configure ต้องไปคลิ๊กเครื่องหมายถูกออกจาก Transparent proxy และก็ Bypass proxy for Private Address Space (RFC 1918) destination ออกไปถึงจะสามารถเล่นอินเตอร์เน็ตได้ตามเดิม และก็ Diagnostics: DHCP leases ก็ไม่โชว์ client list ที่ concurent เข้ามา หน้าSquid user access report ก็ยังโชว์ เป็นของวันที่ 23/09/2009อยู่ ทำยังไงก็ไม่ดีขึ้นครับ
การกำหนดวันหมดอายุของ User Authentication ใน Captive Portal และ freeRADIUS
คือผมติดปัญหาตรงที่ว่า กำหนดวันหมดอายุของ User ใน freeRadius ไปแล้ว พอถึงเวลา ก้อยังสามารถใช้งานต่อได้ ต่อมาก็ได้ ยกเลิก freeRadius ไป แล้วมาใช้ User ใน Captive Portal แล้วกำหนดวันหมดอายุของ User ใน Local User สมุติวันนี้วันที่ 12 เดือน 11 ปี 2009 ผมกดตรงปฏิทินแล้ว เลือก วันที่ปัจจุบัน แล้วทำไมถึงยังสามารถ Login ผ่านครับ
ไม่รู้ว่าผมผิดตรงไหนหรือเปล่า
ขอคำแนะนำด้วยครับ อิอิ
ขอบคุณครับ
ผมกำหนดวันหมดอายุของ user ใน user authentication แต่ปรากฏว่าเมื่อถึงวันดังกล่าวจริง user กับใช้งานได้ปรกติ รบกวนท่านผู้รู้ช่วยด้วยครับ
ขอเวลาทดสอบก่อนนะครับ เดี่ยวว่างๆ จะมาตอบให้ ช่วงนี้งานยุ่งอ่ะครับ
อีกอย่าง pfsense 1.2.3 RC3 ออกแล้วนะครับ มีปรับปรุงเรื่อง captive portal ด้วย
http://blog.pfsense.org/?p=497
ไปลองโหลดมาดูก่อน เผื่อแก้ไขปัญหาดังกล่าวได้
login แล้ว เข้าใช้งานอินเตอร์เนตไม่ได้ (กรณี Enable captive portal) แต่ถ้ายกเลิกใช้เนตได้ไม่รู้ทำงัยดีครับ