Using CLI Menu on Cisco IOS
ในบางครั้งเวลาทำงาน เพื่อน ๆ เคยเจอปัญหาเช่นนี้บ้างมั้ยครับ คือ บริษัทเรามีการใช้งานเครือข่ายระหว่างสำนักงานใหญ่และสำนักงานสาขา ซึ่งที่สำนักงานสาขานี้ก็อาจที่จะมีหรือไม่มี IT ที่คอยประจำอยู่ หรืออาจจะมีแต่ก็ไม่ถนัดกับการใช้ CLI ของ Cisco นัก เวลาที่มีปัญหาแล้วเราอยากจะให้เขาช่วยดูสถานะนู่นนี่ให้นิดหน่อย(ในกรณีที่เรา remote เข้าไปไม่ได้) ก็แสนจะลำบากเนื่องจากเขาก็ไม่ค่อยคุ้นกับคำสั่งบน CLI ของ Cisco นัก ไอ้เราพอบอกคำสั่งไป เขาก็ใส่ผิดบ้างอะไรบ้าง กว่าจะคุยกันรู้เรื่องว่าจะให้ใส่คำสั่งอะไรก็เล่นเอาซะเหนื่อย
แต่วันนี้ ผมมีวิธีที่จะช่วยในการแก้ปัญหาตรงจุดนี้ให้ครับ นั่นก็คือการสร้างเมนูบน CLI สำำหรับให้ผู้ใช้สามารถเลือกได้เลยว่าจะทำอะไร เช่น ถ้าอยากดูสถานะของอินเทอร์เฟสให้กด 1 เป็นต้น หรือถ้าอยาก ping มายังสำนักงานใหญ่ให้กด 2 เป็นต้น ถ้าใครสนใจอยากรู้รายละเอียดก็เชิญติดตามได้ในบทความนี้เลยครับ
บน Cisco IOS ตั้งแต่ Version 10.0 เป็นต้นมา สามารถที่จะใช้คำสั่ง menu เพื่อที่จะทำการสร้าง เมนูแบบข้อความในหน้า CLI ได้ ซึ่งจะช่วยอำนวยความสะดวกให้แก่ผู้ใช้มากขึ้น เอาล่ะครับ ยังไงมาลองดูตัวอย่างการตั้งค่ากันเลยดีกว่านะครับ
อันดับแรกเราจะต้องเปิดการทำงานของ AAA ก่อนนะครับ (ใครไม่เคยทำ เชิญที่นี่เลยครับ : การทำงานของ AAA) ซึ่งจะใช้ในการพิสูจน์ตัวตนและกำหนดสิทธิในการใช้งานให้กับผู้ใช้ และเมื่อเปิดใช้งาน AAA แล้วก็อย่าลืมเข้าไปตั้งค่าใน line vty และ line con ด้วยนะครับ
ตัวอย่าง
Router(config)#aaa new-model
Router(config)#aaa authentication login running-config local
Router(config)#aaa authorization exec running-config local
Router(config)#aaa authorization console
Router(config)#line vty 0 15
Router(config-line)#login authentication running-config
Router(config-line)#authorization exec running-config
Router(config-line)#exit
Router(config)#line con 0
Router(config-line)#login authentication running-config
Router(config-line)#authorization exec running-config
Router(config-line)#exit
จากนั้นเราก็เริ่มทำการสร้างเมนูกันได้เลยครับ โดยขั้นแรกจะเป็นการสร้าง Title หรือหัวข้อให้กับ เมนูของเราก่อนครับ ซึ่ง Title ที่สร้างขึ้นนี้จะไปปรากฎอยู่ในบรรทัดบนสุดของเมนูเราครับ ในการสร้างนั้นจะต้องมีการกำหนดตัวอักษรที่ใช้บอกเราเตอร์ว่า เมื่อเจอตัวอักษรนี้แสดงว่าข้อความนี้สิ้นสุดแล้ว ซึ่งในตัวอย่างนี้จะใช้ $ นะครับ
ตัวอย่าง
Router(config)#menu remote title $
Enter TEXT message. End with the character '$'.
#### Running-config.blogspot.com ####
$
จากนั้นก็ทำการสร้าง prompt ซึ่งเป็นข้อความที่ใช้สำหรับ บอกให้ผู้ใช้ทำการเลือกข้อที่ต้องการครับ ซึ่ง prompt ที่สร้างขึ้นมานี้จะไปปรากฎอยู่ในบรรทัดล่างสุด เมื่อใช้งานเมนูครับ
ตัวอย่าง
Router(config)#menu remote prompt $
Enter TEXT message. End with the character '$'.
please select an option and press enter : $
เมื่อทำการสร้าง Title และ prompt เรียบร้อยแล้ว ทีนี้ก็ถึงเวลาที่จะต้องทำการสร้างตัวเลือกที่จะให้ผู้ใช้ได้เลือกกันนะครับ โดยจะใช้คำสั่ง menu <name> text <num> เพื่อสร้างข้อความสำหรับแต่ละข้อ และใช้คำสั่ง menu <name> command <command> เพื่อใช้กำหนดถึงคำสั่งสำหรับข้อนั้น ๆ ครับ และยังมีการใช้งาน option เช่น pause เพื่อให้หยุดรอผู้ใช้ ก่อนที่จะแสดงหน้าเมนูขึ้นมาอีกครั้งครับ
ตัวอย่าง
Router(config)#menu remote text 1 Display Status Of Interface
Router(config)#menu remote command 1 show ip int br
Router(config)#menu remote options 1 pause
Router(config)#menu remote text 2 Test Connection To Up link
Router(config)#menu remote command 2 ping 192.168.1.1
Router(config)#menu remote options 2 pause
Router(config)#menu remote text 3 Test Connection To Headquarter
Router(config)#menu remote command 3 traceroute 4.2.2.2
Router(config)#menu remote options 3 pause
Router(config)#menu remote text 4 Display Routing Table
Router(config)#menu remote command 4 show ip route
Router(config)#menu remote options 4 pause
Router(config)#menu remote text 5 Display Log Of Router
Router(config)#menu remote command 5 show logging
Router(config)#menu remote options 5 pause
Router(config)#menu remote text 6 To Command Line Interface
Router(config)#menu remote command 6 menu-exit
Router(config)#menu remote clear-screen
Router(config)#menu remote line-mode
และข้อสำคัญ อย่าลืมใส่ username ลงไปบนอุปกรณ์นะครับ ซึ่งเมื่อสร้าง username แล้ว ก็สามารถที่จะกำหนดให้ เมื่อมีการ login เข้ามาโดยใช้ username นี้ จะใช้คำสั่ง menu <name> ขึ้นมาโดยอัตโนมัติ เพื่อให้เวลาที่ผู้ใช้ login เข้ามา จะแสดงหน้าเมนูขึ้นมาทันทีครับ
ตัวอย่าง
Router(config)#username user01 privilege 7 secret ****
Router(config)#username user01 autocommand menu remote
Router(config)#exit
และเมื่อมีการ login เข้ามาจากผู้ใช้ จะแสดงหน้าเมนู ดังนี้ครับ
ตัวอย่าง
User Access Verification
Username: user01
Password:
#### Running-config.blogspot.com ####
1 Display Status Of Interface
2 Test Connection To Up link
3 Test Connection To Headquarter
4 Display Routing Table
5 Display Log Of Router
6 To Command Line Interface
please select an option and press enter :
ซึ่งสามารถที่จะใส่หมายเลขเพื่อที่จะทำการเลือกได้ว่าจะทำอะไรครับ เป็นการช่วยอำนวยความสะดวกให้แก่ผู้ใช้มากยิ่งขึ้นครับ
No comments:
Post a Comment