autogen user mikrotik
สวัสดีครับ
วันนี้พอดีไปเห็น script สร้าง user mikrotik ทีล่ะเยอะๆในกลุ่ม Mikrotik Tutorial มา
เป็นวิธีที่ง่าย เลยเอามาเขียนไว้เผื่อเป็นประโยชน์ครับ
ในการเพิ่ม user ใน hotspot mikrotik ทีละเยอะๆ
วิธีการแรกที่นึกถึงคือ user-manager ข้อจำกัดมันจะมี level license
เช่น RB750Gr3=Level 4 active ผ่าน user-manager ได้ 20 active
ถ้าใช้ user จาก winbox จะได้สูงสุด ตราบที่ cpu มันทำงานไหว
แต่ในการเพิ่ม ถ้าต้องกด add ทีล่ะ user มันก็ใช้เวลานานพอสมควร
ผมจึงนำเสนอวิธีการนี้ครับ
ตัวอย่าง จะทำเป็นให้ใช้งานได้จำกัด 1 ชม.
อันดับแรกดู IP>Hotspot ไปที่ user profiles ก่อนครับ ในที่นี้ชื่อเป็น uprof1 ถ้าจะกำหนดค่าต่างๆ เช่น timeout ต่างๆ หรือกำหนดความเร็วก็ทำก่อนหรือไว้แก้ทีหลังได้
วิธีการแรกที่นึกถึงคือ user-manager ข้อจำกัดมันจะมี level license
เช่น RB750Gr3=Level 4 active ผ่าน user-manager ได้ 20 active
ถ้าใช้ user จาก winbox จะได้สูงสุด ตราบที่ cpu มันทำงานไหว
แต่ในการเพิ่ม ถ้าต้องกด add ทีล่ะ user มันก็ใช้เวลานานพอสมควร
ผมจึงนำเสนอวิธีการนี้ครับ
ตัวอย่าง จะทำเป็นให้ใช้งานได้จำกัด 1 ชม.
อันดับแรกดู IP>Hotspot ไปที่ user profiles ก่อนครับ ในที่นี้ชื่อเป็น uprof1 ถ้าจะกำหนดค่าต่างๆ เช่น timeout ต่างๆ หรือกำหนดความเร็วก็ทำก่อนหรือไว้แก้ทีหลังได้
ไปที่ System>Script กด+ add script แล้ววาง script ตามนี้
:for i from 1 to 100 do={
/ip hotspot user add limit-uptime=1h profile=uprof1 name=("ngit" . $i) password=("mt" . $i);
:delay 400ms;
/log info "add hotspot ok"
};
อธิบาย
1.01 to 50 คือ เงื่อนไขลำดับในชื่อจะเริ่มที่ 1-50 ถ้าต้องการ 101-200 ก็เปลี่ยนค่าได้
2.uprof1 คือ ชื่อ user profile หากทำหลาย profile ก็เปลี่ยนให้ตรงครับ
3.prefix ของ user ครับ มันจะ gen ชื่อเป็น ngit1 ถ้าต้องการชื่ออื่นก็เปลี่ยน เช่น non
4.prefix ของ password ครับ ถ้าใส่เป็นอันเดียวกันกับ user มันเดาได้
5.เวลาใช้งาน limit-uptime=1h คือใช้งานได้ 1 ชม. จะเพิ่มหรือเอาออกก็ได้ครับ
1.01 to 50 คือ เงื่อนไขลำดับในชื่อจะเริ่มที่ 1-50 ถ้าต้องการ 101-200 ก็เปลี่ยนค่าได้
2.uprof1 คือ ชื่อ user profile หากทำหลาย profile ก็เปลี่ยนให้ตรงครับ
3.prefix ของ user ครับ มันจะ gen ชื่อเป็น ngit1 ถ้าต้องการชื่ออื่นก็เปลี่ยน เช่น non
4.prefix ของ password ครับ ถ้าใส่เป็นอันเดียวกันกับ user มันเดาได้
5.เวลาใช้งาน limit-uptime=1h คือใช้งานได้ 1 ชม. จะเพิ่มหรือเอาออกก็ได้ครับ
กด Run Script แล้วดู Log ว่ามีการ gen user ขึ้นมาไหม
ไปดู user ที่ generate มาครับ
ผมว่าวิธีนี้มันยังง่ายครับ
สมมุติว่าได้ user/password= ngit1/mt1
สามารถเดา user/password ตัวใหม่ได้ เพราะรูปแบบของ password มันง่าย (แต่วิธีนี้ก็เป็นวิธีที่ง่ายที่สุดครับ)
ถ้าต้องการให้ยากขึ้น จะแก้ไข password หรือใช้ตัวแปรเพิ่มเติมแทน password=("mt" . $i);
แบบที่ 2 ครับ เอา password ที่ generate ไว้แล้ว กด
สมมุติว่าได้ user/password= ngit1/mt1
สามารถเดา user/password ตัวใหม่ได้ เพราะรูปแบบของ password มันง่าย (แต่วิธีนี้ก็เป็นวิธีที่ง่ายที่สุดครับ)
ถ้าต้องการให้ยากขึ้น จะแก้ไข password หรือใช้ตัวแปรเพิ่มเติมแทน password=("mt" . $i);
แบบที่ 2 ครับ เอา password ที่ generate ไว้แล้ว กด
แบบนี้เดาไม่ได้ นอกจากว่าจะใช้อันเดียวกันครับ
สุดท้าย ได้ user/password มาแล้ว จะไปเปลี่ยนให้เป็นบัตรหรือคูปองอย่างไร
มีคำแนะนำ คือ ใช้ MikroTik Coupon Print (ผมทำแบบที่2 ไว้ให้แล้วครับ)
สมมุติทำง่ายๆก็ print แบบ A4 แผ่นล่ะ 30 x3 ใบ=90
สมมุติทำง่ายๆก็ print แบบ A4 แผ่นล่ะ 30 x3 ใบ=90
*Mikrotik จะมี Router OS License อยู่
แนะนำเพิ่มแค่ประมาณ 1 เท่าของเดิมที่มันรับได้
เช่น hAP ac² เป็น Level4 active ผ่าน userman ได้ 20 ถ้า user ที่ gen จาก winbox ก็ควรจะพร้อมกันประมาณ 40
อันนี้ขึ้นอยู่กับการจัดการ user ด้วยครับ สังเกตุ CPU ว่าทำงานไหมไหม
แนะนำเพิ่มแค่ประมาณ 1 เท่าของเดิมที่มันรับได้
เช่น hAP ac² เป็น Level4 active ผ่าน userman ได้ 20 ถ้า user ที่ gen จาก winbox ก็ควรจะพร้อมกันประมาณ 40
อันนี้ขึ้นอยู่กับการจัดการ user ด้วยครับ สังเกตุ CPU ว่าทำงานไหมไหม
สำหรับวันนี้ สวัสดีครับ