System Requirements
Icarus must be set up by a user with admin privileges.
Launching an instance of Icarus will require opening two ports ( 80 and 443 by default ) to incoming connections.
Registering Icarus as a service ( Optional ) will also require admin privileges.
Icarus only supports 64 bit operating systems.
Supported Operating systems:
Windows 7 or newer
MacOS 10.12 ( Sierra ) or newer *
RHEL/CentOS 7.4 or newer *
Ubuntu 16.04 or newer
* Currently the Icarus 'services' feature is not supported on CentOS/RHEL 8 and MacOS. Icarus will still start and run without
issue when launched with sudo or as a root, but the services library used by Icarus does not support CentOS/RHEL 8 or MacOS. If using Icarus on these operating systems, we recommend writing a script to launch Icarus at startup or to configure a custom service that launches Icarus on startup.
Getting started with Icarus
Learn how to setup an instance of Icarus here.
Icarus and Understand on older operating systems
Older versions of Understand linked OpenSSL dynamically. If Understand is being used on an older operating system, there is a specific requirement to be aware of. The latest version of Icarus requires TLS 1.3. Why is this important? CentOS/RHEL 7 do not have versions of OpenSSL with TLS 1.3 included in their public repositories. Simply updating OpenSSL will not be enough. If you wish to license Understand with Icarus 1.2.X or newer on CentOS 7, you will need to manually upgrade OpenSSL. Here is a compatibility table for which versions of Understand can connect to which versions of Icarus.
Builds of Understand | Builds of Icarus |
934 - 1000 ( TLS 1.0 & 1.1 ) | 1.1.58 and older |
1001 - 1077 ( TLS 1.2 ) | 1.1.69 and older |
1078 - Current ( TLS 1.3 ) | All versions |
Understand builds older that 934 cannot connect to Icarus. All versions of Icarus support TLS 1.3, so any version of Understand newer than 1078 can use any version of Icarus. One last note, the need to upgrade OpenSSL is only for Understand, not Icarus. Icarus links OpenSSL statically, so even if Icarus 1.2.X is installed on CentOS/RHEL 7, Icarus will still use TLS 1.3 without the need to update OpenSSL.
Using the access list feature
Simply create a text file that has one username per line and then upload that file to the Icarus GUI using the 'Add User Whitelist' button. Usernames must be alphanumeric. If a username has special characters, remove those characters before adding the username to the whitelist. For example, the user name User_Account would need to be shortened to UserAccount.
Securing the web GUI
The web UI of Icarus can now be secured with a username and password. We can do this by adding two new key:value pairs to the settings.dat file. The first is AuthName and second is either AuthPass or AuthHash: Both must be added to the settings.dat file for this feature to work. If Icarus is registered as a service, the settings.dat file can be found here:
Windows: C:\Windows\System32\config\systemprofile\AppData\Roaming\SciTools\Icarus
Linux: /root/.config/SciTools/Icarus
Mac: /Library/Application Support/SciTools/Icarus
After updating the settings.dat file, restart Icarus. Now, when Icarus is opened in a web browser, Icarus will prompt the user for a username and password. These values are case sensitive. When using this feature, it is recommended to access the web GUI using 'Port' instead of 'Webport'. If the web GUI is accessed using 'Webport', the user name and password will be transmitted in plain text. Do not use both AuthPass and AuthHash, use one or the other. If using AuthHash, the hash should be a Sha256 hash of the password to be entered.
Troubleshooting Icarus
Icarus is developed under the same live service model as Understand. If you are experiencing an issue with Understand or Icarus, consider upgrading to the latest versions. The issue may already be fixed. A note for upgrading Icarus, when incrementing a minor version number ( e.g. 1.1.X to 1.2.X ) you will likely need a new license file. Please work with your Understand distributor during this upgrade process.
Technical Support
If you run into any issues or have any questions, please feel free to reach out to us at [email protected]