Command Line Interface (CLI, LYSH)

We provide Command Line Interface (CLI), the name is LYSH, which is used for configuring, monitoring, and maintaining the imRAD devices. The CLI allows you to directly execute commands, whether using a console(i.e. Serial Communication) or using remote access methods such as Secure Shell (SSH, port 22).

The imRAD device does not allow telnet access.

If you access the console port, the port is located in front of the device and the type is RJ45 connector. And then, configure the terminal emulation software on your PC for 115,200 baud, 8 data bits, no parity, 1 stop bit, and no flow control.

The default or initial Username and Password are ladmin and 1111 respectively.
If you log in with the default, you must change the default password. If not, you can't access the CLI before changing the password.

The CLI has two command line modes: user mode and configuration mode. By default, user mode is where you begin the session with the imRAD devices. The user mode contains commands that you can use to see logs, the status of services, configurations, system variables and information, and so on. You can run some Linux commands in user mode.

The configuration mode enables to have you can do changes on device configuration such as hostname, Database properties, IP address, nameserver, tiemzone, ntp, ufw, failover, etc. To enter the configuration mode, type the configure command in the user mode.

If press the <tab> key at any time, you can complete the command or see the argument of the command, You can also display "help" by input -h or --help at the end of every command,

LYSH@MyHostName# show -h
usage: show [-h] {apache2,command,config,datetime,dci,files,failover,hardware,interface,listen,log,
loghost,multicast,mysql,ntp,php,service,session,system,uptime} ...

 show the system information
positional arguments:
    apache2                             show the status of apache2 service
    command                             show all or related commands
    config                              show config files
    datetime                            show current time and zone    
    .....

If you want to see all commands, enter the show command in the user mode. If you want to find specific commands which include the keyword, enter the show command {keyword}. It shows all commands which contain the keyword.

LYSH@MyHostName# show command		// list all commands
configure                        enable config mode
╠══ database                     Configure database backup or dci property
║   ╠══ backup                   Configure database backup
║   ║   ╠══ disable                  disable database backup scheduler
║   ║   ╠══ enable                   enable database backup scheduler
║   ║   ╠══ hour                     Configure the starting hour of database backup
║   ║   ╠══ interval                 Configure the database backup interval in days
...

LYSH@MyHostName# show command ip	// search commands which contain "ip"
configure fail2ban               Configure the fail2ban(bans IP that makes too many password failures)
configure ip                     Add/Delete an IP address
configure ip add                 add an IP address to an ethernet interface.
configure ip delete              delete an IP address from an ethernet interface
show multicast                   show multicast group membership information

if you execute show command --linux command, you can see allowed Linux commands.

Note that you can not execute commands that are not allowed such as rm, vi, and so on.

LYSH@MyHostName# show command linux
a2dismod        a2enconf        a2dismod        a2enmod         apt             arp             awk
cat             clear           dpkg            grep            gzip            head            ifconfig
ip              journalctl      last            lastb           lshw            lsof            ly_dhcpv4
ly_dhcpv6       ly_failover     ly_logexp       man             more            mysql           mysqldump
mysql_upgrade   netsat          openssl         passwd          php             phpdismod       phpenmod
pidof           ping            ping6           pmap            ps              radcrypt        radiusd
.....

LYSH@MyHostName#  ping 
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=110 time=44.6 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=110 time=44.0 ms
.....