Applies to platform: UTM 2.5
Updated on: 04 June 2014
Applies to platform: UTM 3.0
Updated on: 04 June 2014
This article introduces you to the steps needed to put your Endian UTM Appliance in demo mode. You can find it helpful if for example you want to showcase a certain configuration (like, e.g., a particular firewall setup), so that prospective users can try it out, without the changes they make from the GUI remaining active.
Before starting, it is strongly suggested to make a backup of the current configuration. Go to Menubar > System > Backups and click on Create new backup. Include at least the current configuration and add a remark (we will refer to this backup as BackupPriorDemo).This backup contains the all settings, including those that you want to showcase and is needed in case you want to restore the "showcased" appliance after some changes has been done to the configuration.
The BackupPriorDemo file name will look like backup-20130808133146-demo.localdomain-settings.tar.gz, since it was created in GUI on 2013-08-08 (YYYY-MM-DD) at 13:13:46 (HH-MM-SS), in this example (see screenshot below). This is a standard naming on Endian Appliances.
Enable the demo mode
From the command line, execute the following command to install the demo package:
root@endian:~ # smart install efw-demo
This command also takes care of creating all the necessary infrastructure for the demo to work (e.g., files, directories, and so on).
State of the appliance
Once demo mode is enabled any modification that is made from the Graphical User Interface won't take effect. The reason for this is that the underlying components, in particular the jobsengine, will ignore any change. To check this functionality, you could issue a job request to the engine, whose output should be the one shown below:
root@endian:~ # jobcontrol restart emi
232 Nothing happened
Disable the demo mode
There are two methods to disable the demo mode. The first one requires the removal of the efw-demo package which will erase also the configuration files:
root@endian:~ # smart remove efw-demo
The second option is to keep the package installed and to turn off the demo mode by changing its activation flag to off, which is managed by the /var/efw/demo/settings file. This file does not exist by default, so you need to create it. Launch an editor using the command below and write in the file the line
then exit the editor and check that the file has been correctly saved:
root@endian:~ # nano /var/efw/demo/settings
root@endian:~ # cat /var/efw/demo/settings
Demo configuration restored every boot
In some situation you need or want to keep intact the demo configuration over reboots.
In order to make sure you always have this configuration, you can simply take the file BackupPriorDemo, change its name in demo.tar.gz and place it in the /var/efw/factory folder, then, at every reboot will clean up all the configuration made through the GUI.
root@endian:~ # ls /var/backups/backup-20130808133146*.tar.gz
Copy in factory folder under demo.tar.gz archive name:
root@endian:~ # cp /var/backups/backup-20130808133146-demo.localdomain-settings.tar.gz /var/efw/factory/demo.tar.gz
Daily restoration of demo configuration
After you created the demo.tar.gz backup, if you want to clean up the configuration over the time, you could just force a daily reboot, this will assure that all GUI changes will be restored to the demo configuration every night.
You can accomplish this task by creating a script named reboot in the /etc/cron.daily/ directory using an editor:
root@endian:~ # nano /etc/cron.daily/reboot
And by using the reboot command the system will restart itself on a daily basis when the cronjob will be executed. Paste the following lines in the cron.daily reboot script:
At this point you have to make sure that permissions are correctly set for the script. To do so, you have to execute the following command to set the correct access rights:
root@endian:~ # chmod 755 /etc/cron.daily/reboot
When the system will reboot each day it will restore the demo.tar.gz archive with your saved settings from /var/efw/factory directory.