MenuTermSrv
From FrogspawnWiki
If you have implemented a terminal server then you might have noticed a couple of problems
- Knowing what's connected where, especially if there are several administrators
- Catering for people who shouldn't necessarily have access to the terminal server CLI
- Just plain ease of use
To make your terminal server more accessible you could implement a menu system.
With a menu system you are
- Listing what is where (assuming it's kept up to date)
- Giving users a fixed list of tasks that they can perform
- Making your terminal server (arguably) easier to use
If you're sold on setting up a menu then here's how you do it.
Basic Menus
Your start point for this is the Terminal Server config.
To add menus add the following..
menu conn-menu title ^C Select device or line from below. Use 'ctrl+shift+6' then 'x' to return to menu ^C menu conn-menu text 1 Connect to line 1 menu conn-menu command 1 resume line1 /connect telnet line1 menu conn-menu text 2 Connect to line 2 menu conn-menu command 2 resume line2 /connect telnet line2 menu conn-menu text 3 Connect to line 3 menu conn-menu command 3 resume line3 /connect telnet line3 menu conn-menu text 4 Connect to line 4 menu conn-menu command 4 resume line4 /connect telnet line4 menu conn-menu text 5 Connect to line 5 menu conn-menu command 5 resume line5 /connect telnet line5 menu conn-menu text 6 Connect to line 6 menu conn-menu command 6 resume line6 /connect telnet line6 menu conn-menu text 7 Connect to line 7 menu conn-menu command 7 resume line7 /connect telnet line7 menu conn-menu text 8 Connect to line 8 menu conn-menu command 8 resume line8 /connect telnet line8 menu conn-menu text 9 Connect to line 9 menu conn-menu command 9 resume line9 /connect telnet line9 menu conn-menu text 10 Connect to line 10 menu conn-menu command 10 resume line10 /connect telnet line10 menu conn-menu text 11 Connect to line 11 menu conn-menu command 11 resume line11 /connect telnet line11 menu conn-menu text 12 Connect to line 12 menu conn-menu command 12 resume line12 /connect telnet line12 menu conn-menu text 13 Connect to line 13 menu conn-menu command 13 resume line13 /connect telnet line13 menu conn-menu text 14 Connect to line 14 menu conn-menu command 14 resume line14 /connect telnet line14 menu conn-menu text 15 Connect to line 15 menu conn-menu command 15 resume line15 /connect telnet line15 menu conn-menu text 16 Connect to line 16 menu conn-menu command 16 resume line16 /connect telnet line16 menu conn-menu text R Return to main menu menu conn-menu command R menu-exit ! Clear the screen before displaying the menu menu conn-menu clear-screen ! Specify a default option to be taken if the user just hits enter menu conn-menu default R ! line-mode requires the user to press enter after making a selection - essential if you have two character options menu conn-menu line-mode
It's possible to call a menu from within a menu, so for example we can have a top level "welcome" menu and the user will drill down below that to connect or disconnect a device, exit to CLI or logout of the terminal server altogether.
menu termserver title ^C Lab Access Server. ^C menu termserver prompt ^C Make your selection: ^C menu termserver text C Connect to Devices menu termserver command C menu conn-menu menu termserver text D Disconnect Sessions menu termserver command D menu disco-menu menu termserver text S Show Current Sessions menu termserver command S show sessions ! after showing active sessions, wait for the user to hit a key with the pause option menu termserver options S pause menu termserver text E Exit to CLI menu termserver command E menu-exit menu termserver text L Log Out menu termserver command L exit menu termserver clear-screen
When you use menu-exit within a sub-menu it backs out to the higher level menu.
Unlike the first menu we used I have not enabled line mode for this menu. This means that you don't have to press enter to make a selection on this menu - you just hit the appropriate key.
The disconnect menu to go with above...
menu disco-menu title ^C Select line to disconnect: ^C menu disco-menu text 1 Disconnect line 1 menu disco-menu command 1 disconnect line1 menu disco-menu text 2 Disconnect line 2 menu disco-menu command 2 disconnect line2 menu disco-menu text 3 Disconnect line 3 menu disco-menu command 3 Disconnect line3 menu disco-menu text 4 Disconnect line 4 menu disco-menu command 4 Disconnect line4 menu disco-menu text 5 Disconnect line 5 menu disco-menu command 5 Disconnect line5 menu disco-menu text 6 Disconnect line 6 menu disco-menu command 6 Disconnect line6 menu disco-menu text 7 Disconnect line 7 menu disco-menu command 7 Disconnect line7 menu disco-menu text 8 Disconnect line 8 menu disco-menu command 8 Disconnect line8 menu disco-menu text 9 Disconnect line 9 menu disco-menu command 9 Disconnect line9 menu disco-menu text 10 Disconnect line 10 menu disco-menu command 10 Disconnect line10 menu disco-menu text 11 Disconnect line 11 menu disco-menu command 11 Disconnect line11 menu disco-menu text 12 Disconnect line 12 menu disco-menu command 12 Disconnect line12 menu disco-menu text 13 Disconnect line 13 menu disco-menu command 13 Disconnect line13 menu disco-menu text 14 Disconnect line 14 menu disco-menu command 14 Disconnect line14 menu disco-menu text 15 Disconnect line 15 menu disco-menu command 15 Disconnect line15 menu disco-menu text 16 Disconnect line 16 menu disco-menu command 16 Disconnect line16 menu disco-menu text R Return to main menu menu disco-menu command R menu-exit menu disco-menu clear-screen menu disco-menu default R menu disco-menu line-mode ! menu discco-menu clear-screen
Automatically use the Menu
To have the Menu run automatically when the user logs in you need to add an autocommand to the vty lines
line vty 0 4 autocommand menu termserver
This is where it becomes important to have the escape to CLI option in one of your menus, without it you will only ever get the menu and can never actually configure the router!