ผู้เขียน หัวข้อ: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา  (อ่าน 32022 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center

การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา



เนื่องจากมีสมาชิกท่านนึงสอบถามเรื่อง Schedule เข้ามา เรื่องการ Block User ไม่ให้เข้าใช้งาน Internet ตามช่วงเวลา

....อยากจะบอกว่า อุปกรณ์ Mikrotik RouterBoard นอกจากให้ไปซื้อโอเลี้ยงแล้ว น่าจะทำได้หมดครับ  ;D ;D ;D



ตัวอย่างจะเป็นการกำหนด User Profile จำนวน 2 กลุ่ม โดยกลุ่ม 1 ให้เข้าใช้งาน Internet (Login เข้าใช้งาน) ได้เวลา 12.00-13.00น. และกลุ่ม 2 ใช้งานได้ 8.00 - 9.00 และ 12.00 - 13.00 น.


1. สร้าง User Profile ขึ้นมา จากตัวอย่างจะชื่อ userprofile1 และ userprofile2






2. สร้าง User โดยกำหนด Profile จากที่สร้างไว้ ตัวอย่าง
User: yod, user1 จะเป็น Profile: userprofile1 และ User: user2 จะเป็น userprofile2








3. Run script ที่ New Terminal โดยผมจะตั้งชื่อ block-user-grp1, block-user-grp1 เพื่อทำการ Disable/Enable userprof1
และ block-user-grp2, nblock-user-grp2 เพื่อทำการ Disable/Enable userprof2

เพิ่ม Script สำหรับ Delete User ที่ Active หลังจาก Disable ครับ

โค๊ด: [Select]
/system script
add name=block-user-grp1 policy=read,write source="/ip hotspot user disable [find profile=userprof1]\r\
    \n:local i\r\
    \n:foreach i in=[ /ip hotspot user find where disabled=yes ] do={\r\
    \n:local name [/ip hotspot user get \$i name]\r\
    \n[ /ip hotspot active remove [find where user=\$user] ]\r\
    \n#:log info \$name\r\
    \n}"
add name=block-user-grp2 policy=read,write source="/ip hotspot user disable [find profile=userprof2]\r\
    \n:local i\r\
    \n:foreach i in=[ /ip hotspot user find where disabled=yes ] do={\r\
    \n:local name [/ip hotspot user get \$i name]\r\
    \n[ /ip hotspot active remove [find where user=\$user] ]\r\
    \n#:log info \$name\r\
    \n}"

เคาะ enter บรรทัดสุดท้ายด้วยนะครับ




3. ทดสอบ Run script ที่ Menu System --> Script จะมีการ Disable/Enable รายชื่อ User ตามที่กำหนด User profile ไว้




4. สร้าง Schedule สำหนับ Run Script ตามเวลาที่ต้องการ
Star-Date ไม่ต้องแก้ไขอะไรครับ ส่วน Start-Time แก้ไขเวลาตามต้องการได้เลยครับ


โค๊ด: [Select]
system scheduler add name=start-unblock-user-grp1 start-date=nov/06/2012 start-time=12:00:00 interval=1d on-event=unblock-user-grp1 policy=read,write
system scheduler add name=start-block-user-grp1 start-date=nov/06/2012 start-time=13:00:00 interval=1d on-event=block-user-grp1 policy=read,write

system scheduler add name=start-unblock-user-grp2-t1 start-date=nov/06/2012 start-time=08:00:00 interval=1d on-event=unblock-user-grp2 policy=read,write
system scheduler add name=start-block-user-grp2-t1 start-date=nov/06/2012 start-time=09:00:00 interval=1d on-event=block-user-grp2 policy=read,write

system scheduler add name=start-unblock-user-grp2-t2 start-date=nov/06/2012 start-time=12:00:00 interval=1d on-event=unblock-user-grp1 policy=read,write
system scheduler add name=start-block-user-grp2-t2 start-date=nov/06/2012 start-time=13:00:00 interval=1d on-event=block-user-grp1 policy=read,write




ตรวจสอบ Scheduler ที่ Menu --> System --> Scheduler





เรียบร้อยครับ  :D

สามารถใช้หลักการ Scheduler ร่วมกับ Function อื่นๆใน Mikrotik ที่สามารถ Ebable/Disable ได้ทุกๆ Function เลยครับ
« แก้ไขครั้งสุดท้าย: วันที่ 4 พฤศจิกายน 2013, 11:29:42 โดย yod »

yahooz

  • Mikrotik
  • Newbie
  • *****
  • กระทู้: 2
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #1 เมื่อ: วันที่ 11 เมษายน 2013, 04:08:45 »
ผมลองดูแล้ว พอครบกำหนด user จะถูก disable แต่ user ยังสามารถเล่นเน็ตต่อไปได้ ซึ่งผมจะทำยังไงให้พอครบเวลาที่กำหนดเช่นเล่นได้ 12.00-13.00 แล้วมันตัด user ออกไปทำให้เล่นเน็ตไม่ได้

yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #2 เมื่อ: วันที่ 11 เมษายน 2013, 19:09:54 »



เพิ่งเห็นครับ

เมื่อกี้ผมได้ลองเขียน Script เพิ่มขึ้นมาใหม่คร่าวๆครับ จะเป็นการ Remove User ที่ Active อยู่ แต่ได้ถูก Disable ไป

:global i
:foreach i in=[ /ip hotspot user find where disabled=yes ] do={
:local name [/ip hotspot user get $i name]
[ /ip hotspot active remove [find where user=$user] ]
#:log info $name
}

เดี๋ยวพรุ่งนี้มาเรียบเรียงให้อีกทีครับ  ;D ;D

yahooz

  • Mikrotik
  • Newbie
  • *****
  • กระทู้: 2
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #3 เมื่อ: วันที่ 12 เมษายน 2013, 10:14:46 »
ขอบคุณครับ มายืนยันว่าใช้แล้วได้ผลตามที่ต้องการครับ คุณยอด

yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #4 เมื่อ: วันที่ 12 เมษายน 2013, 13:12:52 »

แก้ไข script เรียบร้อยแล้วครับ ทางผมต้องขอโทษที่ไม่ได้ทดสอบให้ละเอียดครับ  :-\

iamwiroj

  • Mikrotik
  • Newbie
  • *****
  • กระทู้: 13
    • อีเมล์
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #5 เมื่อ: วันที่ 9 กรกฎาคม 2013, 15:32:40 »
ผมอ่านแล้ว เห็นว่าพอจะใช้ได้กับ site งานผม ขอถามเพิ่มเติมนะครับ

ผมมีร้านกาแฟ เปิดบริการ 8.00-18.00

ต้องการให้ 1 user เข้าใช้พร้อมกันได้หลาย ๆ เครื่อง แต่กำหนดเวลาการเข้าใช้

user ละ 2 ชม. เดิมที่ผมทำใน userman แต่ต้องมาเคลียร์เวลาทุกวัน

เห็นวิธีนี้แล้วน่าสนใจรบกวนสอบถามสคลิปหน่อยครับต้องแก้และเพิ่มเติมส่วนไหนบ้าง

bobmberman

  • Newbie
  • *
  • กระทู้: 2
    • อีเมล์
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #6 เมื่อ: วันที่ 1 สิงหาคม 2013, 19:15:22 »
การตั้งให้ use ใช้ facebook บล็อคตามช่วงเวลาที่เรากำหนดทำอย่างไรครับ
เช่น
facebook เวลา 09.00-13.30  และ 13.30-15.30
แต่และเสาร์-อาทิตย์ใช้ได้ตลอด
« แก้ไขครั้งสุดท้าย: วันที่ 1 สิงหาคม 2013, 19:17:51 โดย bobmberman »

topim

  • Newbie
  • *
  • กระทู้: 1
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #7 เมื่อ: วันที่ 25 กันยายน 2013, 15:30:02 »
ตัังวันที่ทำงานโดยเข้าไปที่ firewall rule > extra > time เลือก ติ๊กถูกที่วันที่จะให้ script ทำงานครับ

adithep

  • Newbie
  • *
  • กระทู้: 2
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #8 เมื่อ: วันที่ 16 พฤษภาคม 2015, 20:18:54 »
ทำไหมผมทำแล้วมันพอถึงเวลาunblock มันไม่ unblock แต่เวลา block ปกติครับ

yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #9 เมื่อ: วันที่ 17 พฤษภาคม 2015, 16:31:13 »

ลองทดสอบสั่ง run ใน script list หรือยังครับ ถ้า run ผ่าน ลองดูในส่วน schedule ครับ ว่าพิมพ์อะไรผิดหรือเปล่า

yotesak.s@gmail.com

  • Newbie
  • *
  • กระทู้: 8
    • อีเมล์
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #10 เมื่อ: วันที่ 21 พฤษภาคม 2015, 15:51:36 »
Mikrotik 450G ทำได้ไหมครับผม

ขอบคุณครับ

yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #11 เมื่อ: วันที่ 21 พฤษภาคม 2015, 17:39:22 »

อุปกรณ์ Mikrotik Router ทำได้ทุกรุ่นครับ

สองสลึง

  • Newbie
  • *
  • กระทู้: 8
  • หว่านพืชเช่นไร ย่อมได้ผลเช่นนั้น
    • อลคัททูปริยัติ
    • อีเมล์
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #12 เมื่อ: วันที่ 25 กันยายน 2015, 12:48:17 »
โค๊ด: [Select]
/system script
add name=block-user-grp1 policy=read,write source="/ip hotspot user disable [find profile=userprof1]\r\
    \n:local i\r\
    \n:foreach i in=[ /ip hotspot user find where disabled=yes ] do={\r\
    \n:local name [/ip hotspot user get \$i name]\r\
    \n[ /ip hotspot active remove [find where user=\$user] ]\r\
    \n#:log info \$name\r\
    \n}"
add name=block-user-grp2 policy=read,write source="/ip hotspot user disable [find profile=userprof2]\r\
    \n:local i\r\
    \n:foreach i in=[ /ip hotspot user find where disabled=yes ] do={\r\
    \n:local name [/ip hotspot user get \$i name]\r\
    \n[ /ip hotspot active remove [find where user=\$user] ]\r\
    \n#:log info \$name\r\
    \n}"

ตรงนี้เป็นแค่ส่วนของ Code Block หรือป่าวครับ
ในส่วนของ Unblock ต้องทำอีกอัน พอดีมะกี้ผมลองแล้วได้มาเป็นประมาณนี้

โค๊ด: [Select]
/system script
add name=unblock-user-grp1 policy=read,write source="/ip hotspot user enable [find profile=userprof1]\r\
    \n:local i\r\
    \n:foreach i in=[ /ip hotspot user find where disabled=yes ] do={\r\
    \n:local name [/ip hotspot user get \$i name]\r\
    \n[ /ip hotspot active remove [find where user=\$user] ]\r\
    \n#:log info \$name\r\
    \n}"

saichonkaw

  • Newbie
  • *
  • กระทู้: 1
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #13 เมื่อ: วันที่ 23 กุมภาพันธ์ 2017, 13:04:26 »
code ลบ  user ใน profile
-------------------------------------------------------------------------------------------
/ip hotspot user disable [find profile=userprofile1]
:foreach user in=[/ip hotspot user find profile=userprofile1] do={
:foreach activeuser in=[/ip hotspot active find name=$user] do={
/ip hotspot active remove $activeuser
}
/ip hotspot user disable $user
}

------------------------------------------------------------------------------------------------------------------------------------------------





yod

  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1853
    • Sysnet Center
Re: การตั้ง Scheduler ในอุปกรณ์ Mikrotik เพื่อทำการ Block User ตามช่วงเวลา
« ตอบกลับ #14 เมื่อ: วันที่ 24 กุมภาพันธ์ 2017, 14:27:47 »
:foreach user in=[/ip hotspot user find profile=userprofile1] do={
:foreach activeuser in=[/ip hotspot active find name=$user] do={
/ip hotspot active remove $activeuser
}
/ip hotspot user disable $user
}

------------------------------------------------------------------------------------------------------------------------------------------------






ขอบคุณมากๆเลยครับ  :D

akoko

  • Newbie
  • *
  • กระทู้: 2
Re: การเซ็ตให้ mikrotik hAP lite ลบผู้ใชงาน
« ตอบกลับ #15 เมื่อ: วันที่ 3 มิถุนายน 2019, 07:12:04 »
คือผมกำลังทำระบบ hotspot โดยใช้ mikrotik hAP lite  ทำเป็นขายบัตรแบบรายวัน แบบ username และ password มีกำหนดระยะเวลาใช้งาน 24 ชั่วโมง  และต้องการให้ user ที่ใช้งานเมื่อครบเวลา 24 ชั่วโมงแล้วให้ระบบเตะออก  และลบ user  นั้นออกไป
เพราะที่เป็นอยู่ตอนนี้คือ username  สามารถใช้งานซ้ำได้


Share via facebook

xx
ตั้ง Scheduler ให้ Block Mac address ทำยังไงหรอครับ

เริ่มโดย สองสลึง เมื่อ อุปกรณ์ Mikrotik Router

1 ตอบ
2402 อ่าน
กระทู้ล่าสุด วันที่ 7 ตุลาคม 2015, 21:57:00
โดย สองสลึง
xx
การ Block Facebook หรือ Enable/Disable Firewall ตามช่วงเวลา

เริ่มโดย yod เมื่อ อุปกรณ์ Mikrotik Router

5 ตอบ
4009 อ่าน
กระทู้ล่าสุด วันที่ 18 กุมภาพันธ์ 2013, 22:05:03
โดย mithp
xx
Mikrotik block การใช้งาน User แบบนี้ได้ไหมครับ

เริ่มโดย birdonline เมื่อ อุปกรณ์ Mikrotik Router

0 ตอบ
2248 อ่าน
กระทู้ล่าสุด วันที่ 28 เมษายน 2017, 20:10:39
โดย birdonline
xx
Mikrotik ขอวิธี block ip ของ user ไม่ให้ใช้ internet ตามช่วงเวลาหน่อยคครับ

เริ่มโดย birdonline เมื่อ อุปกรณ์ Mikrotik Router

1 ตอบ
2359 อ่าน
กระทู้ล่าสุด วันที่ 19 มิถุนายน 2017, 20:25:06
โดย ruthxx
xx
ทดสอบ Block การเข้า Web สำหรับ User ที่ใช้ Ultrasurf ด้วย Mikrotik

เริ่มโดย yod เมื่อ อุปกรณ์ Mikrotik Router

0 ตอบ
20511 อ่าน
กระทู้ล่าสุด วันที่ 17 เมษายน 2013, 18:19:48
โดย yod
 


Users found this pages searching for: