วิธีนี้ผมใช้กับระบบจัดการ User ที่ผมเขียนขึ้นมาใช้เอง แต่ผมเห็นส่วนใหญ่ จะใช้ของ ม.บูรพา ก็ใช้การตั้งค่านี้ได้เหมือนกัน แต่วิธีนี้ไม่จำเป็นต้องเคลียร์ไฟล์ radtump radwtmp ลองใช้วิธีนี้ดูครับ
เปิดไฟล์ขึ้นมาแก้ไขตามนี้
#nano /etc/freeradius/sites-available/inner-tunnel
# Session database, used for checking Simultaneous-Use. Either the radutmp
# or rlm_sql module can handle this.
# The rlm_sql module is *much* faster
session {
#radutmp
#
# See "Simultaneous Use Checking Queries" in sql.conf
sql
}
#nano /etc/freeradius/sites-available/default
# Session database, used for checking Simultaneous-Use. Either the radutmp
# or rlm_sql module can handle this.
# The rlm_sql module is *much* faster
session {
#radutmp
#
# See "Simultaneous Use Checking Queries" in sql.conf
sql
}
# or rlm_sql module can handle this.
# The rlm_sql module is *much* faster
session {
#radutmp
#
# See "Simultaneous Use Checking Queries" in sql.conf
sql
}
#nano /etc/freeradius/sql/mysql/dialup.conf
เอา # ออกให้เป็นแบบนี้
# Uncomment simul_count_query to enable simultaneous use checking
simul_count_query = "SELECT COUNT(*) \
FROM ${acct_table1} \
WHERE username = '%{SQL-User-Name}' \
AND acctstoptime IS NULL"
simul_count_query = "SELECT COUNT(*) \
FROM ${acct_table1} \
WHERE username = '%{SQL-User-Name}' \
AND acctstoptime IS NULL"
แล้วก็สั่ง restart Freeradius แล้วแต่ว่าใครใช้ Linux ตัวไหนนะ แต่ผมใช้ Ubuntu
#/etc/init.d/freeradius restart
วิธีนี้เป็นการใช้ฐานข้อมูล radacct แทนไฟล์ radutmp เวลาเราสั่งเตะจากตัวจัดการ ยังไง ๆ ก็เตะออกแน่นอน เพราะถ้าเตะจาก ตัวจัดการของ ม.บูรพา radacct จะถูกอัพเดต acctstoptime และสามารถปรับแต่งหน้าล็อกอิน ให้ตรวจสอบ User ที่ค้างอยู่ แล้วก็เตะ ก่อนล๊อกอินได้
หลาย ๆ ท่านอาจมีวิธีที่ต่างกันไปนะครับ แต่ที่ผมเคยเห็นส่วนใหญ่จะเคลียร์ไฟล์ radutmp กับ radwtmp และก็คำสั่ง #radzap -u <UserName>.... ก็ได้เหมือนกัน แต่ก็ต้องใช้ commandline
ไม่มีความคิดเห็น:
แสดงความคิดเห็น