สอบถามเกี่ยวกับ Rahunas ครับ

ผมอยากสอบถามหน่อยว่าเกิดจากอะไรครับ (debian 6.0)
ผมใช้การติดตั้ง cacti จาก apt-get แล้วทำการ patch pa เอง
จึงทำการติดตั้ง patch rahunas ซึ่งในส่วนอื่นทำงานปกติคับ แต่ในหน้า Rahunas Viewer ไม่โชว์ข้อมูลคับ

แต่ใน drupal6 ทำงานปกติ ทุกเมนูครับ อาจมีบักกับ php 5.3 บ้าง แต่ผมแก้หมดแล้วครับพอทำงานปกติ
ในส่วนของ drupal6
ตรงค่า RahuNAS Since First-Use: ใช้กำหนดอะไรครับ
และพวก Max-Daily-Session, Max-Monthly-Session สามารถใช้ได้รึเปล่าครับ

เมนู Hunts
ผมเซ็ตเป็น RAHUNAS-01 192.168.21.254(ลองเปลี่ยนเป็น 127.0.0.1) 0
พอตอนสร้าง Group เวลาเลือก Hunts จะทำให้ไม่สามารถ authen ได้ แต่ถ้าไม่เลือก hunts จะสามารถ authen ได้ปกติ
ตอนนี้พวก shaping ผมทำงานได้ปกติแล้วครับ

อีกส่วนผมไม่แน่ใจว่ามันทำงานแบบแยกเครื่องได้รึเปล่าครับ อื่นๆ ที่ยังไม่ทดสอบ
เช่น vlan, กรณีมีหลาย interface เช่น WAN, LAN, WIRELESS (หรือว่าต้องสร้าง vserver หลายๆอัน ฯลฯ

Router --- Rahunas --- Switch --- (CACTI + DRUPAL6 + FREERADIUS)

และในส่วนของ script proxy พอดีเห็นใน folder
ซึ่งตอนนี้ผมติดว่าอยากให้มันส่งชื่อ user ไปให้ proxy server ด้วยครับ เพื่อโชว์ log ip, user ไม่แน่ใจว่าติดตั้งอย่างไงครับ
เพราะตอนนี้ผมใช้การ transparent proxy และ cache peer ไปเครื่อง proxy server แล้วให้เครื่อง proxy ยิ่ง log ออกไปภายนอก แต่ติดไม่โชว์ ชื่อผู้ใช้

สุดท้ายผมต้องขอขอบคุณที่พัฒนาโปรแกรมดีๆให้ใช้ครับ
ชอบของไทยมากกว่าครับ ตอนนี้ผมได้ลองไปติดตั้งให้กับรร. ต่างจังหวัดอยู่ครับ กับทดสอบบน vmware
กำลังทดสอบความนิ่ง ถ้านิ่งอาจอนุญาติ fork โปรเจคในส่วนการจัดการผ่านเว็บ
และก็อาจเปลี่ยนไปใช้บน ubuntu 10.04 ซึ่งชอบมากกว่า และก็อยากให้ support ทั้ง mysql, postgresql แต่ไม่รู้จะทำได้แค่ไหนครับ
และถ้าทดสอบครบหมด ผมว่าจะขออาสามาเขียน document ให้ครับ แต่บางส่วนยังไม่รู้ทั้งหมด

>> ผมใช้การติดตั้ง cacti จาก apt-get แล้วทำการ patch pa เอง
>> จึงทำการติดตั้ง patch rahunas ซึ่งในส่วนอื่นทำงานปกติคับ แต่ในหน้า Rahunas Viewer ไม่โชว์ข้อมูลคับ

ต้องขออภัยด้วยครับ แผนของผม สำหรับ cacti plugin คือ จะไม่ทำต่อแล้วครับ ตอนนี้ เริ่มสร้าง DarkSolar Control Panel
สำหรับใช้ควบคุม RahuNAS และจัดการ Radius users คาดว่าจะทำไปเรื่อย ๆ ตามแต่เวลาจะอำนวยครับ เป้าหมายของ DarkSolar Control Panel คือ จะให้ครอบคลุมการทำงานที่จำเป็นสำหรับการดูแล Authen Box 1 เครื่องครับ

>> แต่ใน drupal6 ทำงานปกติ ทุกเมนูครับ อาจมีบักกับ php 5.3 บ้าง แต่ผมแก้หมดแล้วครับพอทำงานปกติ
>> ในส่วนของ drupal6

drupal6 module ก็เช่นกัน แต่สำหรับ bug ของ module มี patch แล้ว ที่ http://git.rahunas.org/?p=drupal-mod-rahunas;a=commit;h=fbd739b3e7dbf9bc...

>> ตรงค่า RahuNAS Since First-Use: ใช้กำหนดอะไรครับ
>> และพวก Max-Daily-Session, Max-Monthly-Session สามารถใช้ได้รึเปล่าครับ

Since First-Use ใช้กำหนดระยะเวลาที่ user สามารถจะใช้งานได้ตั้งแต่เริ่ม login ครั้งแรก เป็นการกำหนดอายุเหมือนบัตรเติมเงิน ทำให้กำหนดระยะเวลาได้ เช่น กำหนด 30 วัน เมื่อ user login ครั้ง ระบบจะเริ่มนับเวลา เมื่อครบ 30 วันข้างหน้า จะไม่สามารถ login ได้
ค่านี้ RahuNAS กำหนดขึ้นมาเอง โดยใช้ Attributes RahuNAS-Since-First-Use เป็นตัวกำหนดค่า ต้องมีการปรับแต่ง config ของ FreeRADIUS ถ้าติดตั้ง deb จาก rahunas repository จะมีการ patch config ให้แล้ว

Max-Daily-Session, Max-Monthly-Session ใช้สำหรับกำหนดว่า user สามารถ login และใช้งานต่อวัน หรือ ต่อเดือน ได้กี่นาที
ต้องกำหนด counter เพิ่มเองใน config ของ FreeRADIUS ครับ

>> เมนู Hunts
>> พอตอนสร้าง Group เวลาเลือก Hunts จะทำให้ไม่สามารถ authen ได้ แต่ถ้าไม่เลือก hunts จะสามารถ authen ได้ปกติ

หรือ Hunts Group เป็นการกำหนดเฉพาะเจาะจงให้ user ที่กำหนด hunts group สามารถ login ได้เฉพาะ NAS ที่กำหนดเท่านั้น ในกรณีมี NAS เครื่องเดียว Hunts Group ก็ไม่จำเป็น โดยปกติจะไม่ได้ใช้ ตอนทำมี request พิเศษ เลยทำเพิ่มเข้ามาครับ

>> ตอนนี้พวก shaping ผมทำงานได้ปกติแล้วครับ

:)

>> อีกส่วนผมไม่แน่ใจว่ามันทำงานแบบแยกเครื่องได้รึเปล่าครับ อื่นๆ ที่ยังไม่ทดสอบ
>> เช่น vlan, กรณีมีหลาย interface เช่น WAN, LAN, WIRELESS (หรือว่าต้องสร้าง vserver หลายๆอัน ฯลฯ
>> Router --- Rahunas --- Switch --- (CACTI + DRUPAL6 + FREERADIUS)

มีหลาย interfaces ก็ต้องสร้าง vserver ตามนั้นครับ

>> และในส่วนของ script proxy พอดีเห็นใน folder
>> ซึ่งตอนนี้ผมติดว่าอยากให้มันส่งชื่อ user ไปให้ proxy server ด้วยครับ เพื่อโชว์ log ip, user ไม่แน่ใจว่าติดตั้งอย่างไงครับ
>> เพราะตอนนี้ผมใช้การ transparent proxy และ cache peer ไปเครื่อง proxy server แล้วให้เครื่อง proxy ยิ่ง log ออกไปภายนอก
>> แต่ติดไม่โชว์ ชื่อผู้ใช้

RahuNAS มี auth helper สำหรับ squid มาให้ครับ ต้องกำหนดเพิ่มใน squid.conf

...
external_acl_type rahunas_ext children=50 ttl=3600 negative_ttl=0 %SRC /usr/bin/squid-auth-helper
acl rahunas_login external rahunas_ext
http_access allow rahunas_login
...

ตัว helper จะช่วยในการตรวจสอบ IP กับ rahunasd เมื่อพบว่า user login ถูกต้อง จะส่ง username กลับมาให้ squid นำ username บันทึกลงใน log file ครับ

>> สุดท้ายผมต้องขอขอบคุณที่พัฒนาโปรแกรมดีๆให้ใช้ครับ
>> ชอบของไทยมากกว่าครับ ตอนนี้ผมได้ลองไปติดตั้งให้กับรร. ต่างจังหวัดอยู่ครับ กับทดสอบบน vmware
>> กำลังทดสอบความนิ่ง ถ้านิ่งอาจอนุญาติ fork โปรเจคในส่วนการจัดการผ่านเว็บ
>> และก็อาจเปลี่ยนไปใช้บน ubuntu 10.04 ซึ่งชอบมากกว่า และก็อยากให้ support ทั้ง mysql, postgresql แต่ไม่รู้จะทำได้แค่ไหนครับ
>> และถ้าทดสอบครบหมด ผมว่าจะขออาสามาเขียน document ให้ครับ แต่บางส่วนยังไม่รู้ทั้งหมด

ยินดีครับ อยากได้คนทดสอบใน Ubuntu เหมือนกันครับ ส่วนเรื่องทำ interface ถ้าไม่รังเกียจ ร่วมพัฒนา DarkSolar Control Panel ด้วยกันได้นะครับ ผมวางแผนไว้ว่า Opensource 100% และจะใช้กับ Commercial Support ที่ขาย Service ออกไปให้โรงเรียนต่าง ๆ บ้างแล้วครับ

ขอบคุณครับสำหรับคำตอบ จิงๆ หลังจากที่ถามไปก็ทดสอบจนได้หมดแล้วครับ

ผมยินดีช่วยเหลือการพัฒนานะครับ แต่ผมเองก็ไม่ค่อยเก่งเท่าไหร่ แต่สามารถเขียน php พอได้ครับ
จิงๆ ท่าน neutron น่าจะเปิดโปรเจคและหาคนอาสามาร่วมกันพัฒนานะครับ โดยอาจโฆษณาที่ linuxthai เป็นต้น

ซึ่งเดิมที่ผมเองก็ใช้ rahunas มาตั้งนานแล้ว โดยรวมถือว่าโอเคและตอบโจทย์ของผม ที่พวก coovachilli ทำไม่ได้
แต่สิ่งที่ผมคิดว่าจะต่อยอดคือ การทำ web management ที่ใช้ง่ายกว่า cacti และ drupal นี้และครับ

ในส่วนของการทดสอบบน ubuntu 10.04 สามารถใช้งานได้นะครับ แต่ผมใช้การ compile เอาเอง หรือ build deb ใหม่ เนื่องจากใน debian 6.0 ใช้ libgda เวอร์ชั่นใหม่กว่านิดนึง แต่เท่าทดลองสามารถทำงานได้ปกติครับ
และผมได้ลองทดสอบติดตั้งทำงานกับ freeradius-mysql ซึ่งแก้เองบางส่วนก็สามารถทำงาน authen ได้ปกติ
ในส่วนของ drupal กับ mysql ก็สามารถทำงานได้ยกเว้นในหน้า report ซึ่ง sql ใช้ไม่เหมือนกันกับ mysql เลยทำให้ผมยังแก้ไม่ผ่าน เนื่องจากไม่ชำนาญ sql ของ postgre

ในส่วนบักที่ผมเจอ บางครั้งผมก็งงว่าทำไมถึงเป็น บางครั้งถึงได้
- shapping บางที่ก็ขึ้น not complete ซึ่งผมก็งงว่าเกิดจากอะไร
- ข้อมูลไม่อัตเดตเข้า sqlite แต่ข้อมูลในส่วนของ vserver เข้าปกติ ซึ่งผมก็คิดว่าท่านแก้แล้ว http://git.rahunas.org/?p=rahunas;a=commit;h=0fe3338bb0575f76a17fae81826... เลยทำให้ไม่เข้าใจว่าทำไมไม่อัตเดต

นอกเหนือจิงๆก็ไม่เกี่ยวแต่ผมก็ไล่ทดสอบไปเรื่อย เพื่อให้ warning ตอนคอนไพล์หายไป เช่น
- ไฟล์ rh-task-dbset.c ผมเพิ่ม #include
- ไฟล์ rh-utils.c แก้ open(filename, O_WRONLY | O_APPEND | O_CREAT, S_IRWXU | S_IRWXG | S_IRWXO);
- ไฟล์ rh-config.c แก้ strncat(conf_file, conf_dir, sizeof(conf_file)-1);

สุดท้ายถ้าเปิดเป็น opensource 100% ผมสนับสนุน 1 เสียงครับ
ขอบคุณครับ

>> ขอบคุณครับสำหรับคำตอบ จิงๆ หลังจากที่ถามไปก็ทดสอบจนได้หมดแล้วครับ

:)

>> ผมยินดีช่วยเหลือการพัฒนานะครับ แต่ผมเองก็ไม่ค่อยเก่งเท่าไหร่ แต่สามารถเขียน php พอได้ครับ
>> จิงๆ ท่าน neutron น่าจะเปิดโปรเจคและหาคนอาสามาร่วมกันพัฒนานะครับ โดยอาจโฆษณาที่ linuxthai เป็นต้น

โปรเจ็ค เป็น opensource ตั้งแต่เกิดนะครับ ส่วนเรื่องอาสาสมัคร จะยินดีมากถ้าติดต่อเข้ามา แต่ส่วนใหญ่จะใช้กันเงียบ ๆ ไม่ค่อยได้ยินเสียงหนะครับ
และตอนนี้ยินดีเป็นอย่างยิ่งที่มีเสียงตอบกลับมาครับ

>> ซึ่งเดิมที่ผมเองก็ใช้ rahunas มาตั้งนานแล้ว โดยรวมถือว่าโอเคและตอบโจทย์ของผม ที่พวก coovachilli ทำไม่ได้
>> แต่สิ่งที่ผมคิดว่าจะต่อยอดคือ การทำ web management ที่ใช้ง่ายกว่า cacti และ drupal นี้และครับ

WebUI เป็นงานที่ผมไม่ถนัด ต้องใช้เวลาในการเรียนรู้อย่างมาก และยิ่งจะทำให้ออกมาดูดี ยิ่งยากขึ้นไปอีกครับ
เริ่มต้นที่ใช้ Drupal ก็เพราะคิดว่าไม่ต้องเริ่มสร้างใหม่จากศูนย์ และที่สำคัญคนที่ลงมือเขียน ก็เป็นเจ้าดิว น้องชายผม ผมก็ลอยตัว รอดู
ส่วน Cacti ก็อีกนั่นหละครับ เพราะกำลังเห่อ Cacti และเห็นว่าตอนติดตั้งให้ ม.ข. ก็ใช้ Cacti ก็เลยละเลงเลย ก็ได้ออกมาอย่างที่เห็นหนะครับ

>> ในส่วนของการทดสอบบน ubuntu 10.04 สามารถใช้งานได้นะครับ แต่ผมใช้การ compile เอาเอง หรือ build deb ใหม่ เนื่องจากใน debian 6.0 ใช้ libgda
>> เวอร์ชั่นใหม่กว่านิดนึง แต่เท่าทดลองสามารถทำงานได้ปกติครับ

ผมว่าจะหาเวลา ทำ repos ที่ upload โดยใช้ ssh-key ได้ จะได้ให้คุณ rokoman ช่วย upload Ubuntu packages เข้ามา เผื่อมีคนอยากใช้ จะได้สะดวกขึ้นครับ

>> และผมได้ลองทดสอบติดตั้งทำงานกับ freeradius-mysql ซึ่งแก้เองบางส่วนก็สามารถทำงาน authen ได้ปกติ
>> ในส่วนของ drupal กับ mysql ก็สามารถทำงานได้ยกเว้นในหน้า report ซึ่ง sql ใช้ไม่เหมือนกันกับ mysql เลยทำให้ผมยังแก้ไม่ผ่าน เนื่องจากไม่ชำนาญ >> sql ของ postgre

โดยส่วนตัว ผมไม่ค่อยประทับใจ MySQL มากนักครับ ใช้ PostgreSQL มาตลอด แต่ถ้าเป็นไปได้ ก็อยาก support ทั้งสอง DB ครับ แต่ผมไม่ถนัด MySQL เลย maintain ลำบากครับ

>> ในส่วนบักที่ผมเจอ บางครั้งผมก็งงว่าทำไมถึงเป็น บางครั้งถึงได้
>> - shapping บางที่ก็ขึ้น not complete ซึ่งผมก็งงว่าเกิดจากอะไร

จริง ๆ ตอนผมติดตั้งก็เจอครับ แต่ยังไม่ได้ลอง debug ดูครับ จริง ๆ ลองใส่ -x เข้าไปใน script ดูได้ครับ

/usr/sbin/rahunas-bandwidth

#!/bin/sh -x
...
...

>> - ข้อมูลไม่อัตเดตเข้า sqlite แต่ข้อมูลในส่วนของ vserver เข้าปกติ ซึ่งผมก็คิดว่าท่านแก้แล้ว http://git.rahunas.org/?p=rahunas;a=commit;
>> h=0fe3338bb0575f76a17fae81826... เลยทำให้ไม่เข้าใจว่าทำไมไม่อัตเดต

rahunas.db มีการเปลี่ยนแปลง schema ครับ ลองตรวจสอบดูว่า มีอะไรขาดไปไหม

# sqlite3 /var/lib/rahunas/rahunas.db ".schema"
CREATE TABLE dbset (session_id string not null, vserver_id string not null, username string not null, ip string not null, mac string not null, session_start real not null, session_timeout real, bandwidth_slot_id int, bandwidth_max_down real, bandwidth_max_up real, service_class string, service_class_slot_id int, PRIMARY KEY (vserver_id,ip,mac));
CREATE TABLE nas (vserver_id string not null, nas_identifier string not null, PRIMARY KEY (vserver_id));

>> นอกเหนือจิงๆก็ไม่เกี่ยวแต่ผมก็ไล่ทดสอบไปเรื่อย เพื่อให้ warning ตอนคอนไพล์หายไป เช่น
>> - ไฟล์ rh-task-dbset.c ผมเพิ่ม #include
>> - ไฟล์ rh-utils.c แก้ open(filename, O_WRONLY | O_APPEND | O_CREAT, S_IRWXU | S_IRWXG | S_IRWXO);
>> - ไฟล์ rh-config.c แก้ strncat(conf_file, conf_dir, sizeof(conf_file)-1);

ส่ง patch เข้ามาให้ review ได้ครับ จะได้ merge เข้า upstream ครับ

>> สุดท้ายถ้าเปิดเป็น opensource 100% ผมสนับสนุน 1 เสียงครับ

:)

Creative Commons License ลิขสิทธิ์ของบทความเป็นของเจ้าของบทความแต่ละชิ้น
ผลงานนี้ ใช้สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-อนุญาตแบบเดียวกัน 3.0 ที่ยังไม่ได้ปรับแก้