routeros
#define routeros: \
I----------------------------------------------------------------------------------------\
I----------------------------------------------------------------------------------------\
I----------------------------------------------------------------------------------------\
I /$$$$$$$ /$$ /$$$$$$ /$$$$$$ \
I | $$__ $$ | $$ /$$__ $$ /$$__ $$ \
I | $$ \ $$ /$$$$$$ /$$ /$$ /$$$$$$ /$$$$$$ /$$$$$$ | $$ \ $$| $$ \__/ \
I | $$$$$$$/ /$$__ $$| $$ | $$|_ $$_/ /$$__ $$ /$$__ $$| $$ | $$| $$$$$$ \
I | $$__ $$| $$ \ $$| $$ | $$ | $$ | $$$$$$$$| $$ \__/| $$ | $$ \____ $$ \
I | $$ \ $$| $$ | $$| $$ | $$ | $$ /$$| $$_____/| $$ | $$ | $$ /$$ \ $$ \
I | $$ | $$| $$$$$$/| $$$$$$/ | $$$$/| $$$$$$$| $$ | $$$$$$/| $$$$$$/ \
I |__/ |__/ \______/ \______/ \___/ \_______/|__/ \______/ \______/ \
I----------------------------------------------------------------------------------------\
I----------------------------------------------------------------------------------------\
I----------------------------------------------------------------------------------------\
• you guessed it, its an OS for routers
• Linux based
• used in less complex environments compared to what cisco devices/IOS were designed for
— developed by the company "Microtik", which is known for being the company with
the worst software naming in existance:
• OS? -> RouterOS
• System shell? -> CLI
• Network management tool? -> Winbox
DEFAULT_LOGIN:
Username: admin
Password: ¬
• must be changed after the first login
CLI:
• the RouterOS shell, is literally just refered to as CLI
• the shell seems to be using GNU Readline or something close enough
— all arguments follow the form of:
key=value
• ${PS1} := ${current_section}" > "
Tree:
• commands are organized into a tree
• branches are refered to as sections
• leafs are refered to as actions
• actions are executable
• sections are openable
• analogous to directory traversing (i also suspect thats how its implemented)
• multiple segments of the tree may be specified, by separating them with '/'s
• '/' (at the front) referes to the root of the tree
• ".." will traverse the tree upwards
• tab completion represents sections and actions with different colors
# Mikrotik command execution example
> beep # the beep action executes from root
> port/ # the port section is opened
/port > beep # in the port section, beep is not a valid action
bad command name beep (line 1 column 1)
/port > print # the print action inside the port section prints port information
# NAME CHANNELS USED_BY BAUD-RATE
0 serial0 1 Serial Console 9600
/port > /beep # giving the absolute path of beep works from anywhere
/port > .. # we move back to root
>
certificate/ : manages ssl certificates {webfig}
console/
disk/
file/
ip/
ipv6/
log/
mpls/
port/
ppp/
queue/
radius/
routing/
snmp/
special-login/
system/
shutdown
task/
tool/
user/ : user management; multiple users are allowed; after setup, deleting "admin" is recommended
add
remove
beep
quit
redo
undo
password : interactively configure login credentials
ping
import
export file=<path> : same the current configuration as a CLI script to <path>;
accessable from any section;
saves only the configuration of the invoking section
and its subsections
Webfig:
• webadmin
• available over http by default, quickly setting up ssl is recommended
• as capable as the cli