This script enables you to connect to an Eaton Tripp Lite KVM over IP Switch using macOs.
Tested with Tripp Lite series NetCommander 16-port B072-016-1-IP on macOs Sequoia 15.3.1 with Oracle Java Runtime 1.8.0_441 (Java 8) for execution and JDK 23.0.2 (for signing). Other versions may or may not work.
-
macOS
-
Java 8
-
Java Development Kit (any modern version) for the jarsigner tool
-
Tripp Lite IP KVM Switch
-
The Tripp Lite device and the macOS computer should be on the same network
-
make, jarsigner, keytool and a few other tools should be in the PATH.
You can install the JDK from Oracle or using Homebrew:
brew install openjdk- The Tripp Lite KVM over IP Switch is officially only supported on Windows. But the underlying software is written in Java, so with a little configuration, it should work on any Java-enabled computer.
- The device website uses obsolete TLSv1.0 encryption. It is increasingly difficult to connect to such devices from modern browsers. Fortunately, Java still allows you to downgrade the security settings to support TLSv1.0.
- The device website hosts the Java application that allows you to connect. Modern Java runtimes only allow you to run signed applications. The code-signing certificates on the Tripp Lite device have expired. The application needs to be downloaded and re-signed to be able to run.
- The application on the website was originally optimized for running from the browser using Java Web Start. It instinctively knew the IP address of the device. It did not present an option to enter the device IP address. Fortunately, the Windows application proves that the device can be used remotely, with the IP address entered in the application. It just has to be enabled in the configuration.
All these challenges can be resolved by configuring the Java Runtime and the application. The following configuration changes are applied:
- Modify the Java runtime configuration to allow TLSv1.0 (only for this application, not globally).
- Enabled "dev_mode" in the configuration that allows you to enter the IP address of the device in the application.
- Reconfigure the Java Web Start file for TLS1.0 and local (computer, instead of web-browser) execution.
- Download the JAR files and configuration from the device.
- Download the TLSv1.0 web certificate from the device and make the Java Runtime trust it (to avoid security warning pop-ups).
- Generate a Certificate Authority and sign a code-signing key.
- Use the code-signing key to sign all the JAR files.
- Make the Java Runtime trust the Certificate Authority, to avoid security popups during startup.
You will need the IP address of the Tripp Lite device and add it in the IP environment variable, like this:
IP=192.168.0.254 makeThis will create all the necessary configuration. You only need to run this once.
If the device is set for DHCP but it does not get an address, it defaults to 192.168.0.254.
After setup is complete, you can run the application with the following command:
make runThis will start Java Web Start with the application.
If you want to remove all the configuration (including the certificate store keys), you can run:
make cleanIf you want to use your own certificate authority for signing the code-signing key, you can do so by setting the MYCA=1 environment variable:
MYCA=1 IP=192.168.0.254 makeIn this case you will need to run the script twice.
The first time, it will create a code.csr certificate signing request. After you signed this with your Certificate Authority,
place the resulting certificate into the code.crt file in the application folder.
You can re-run the application and the code.crt will be used to sign the JAR files.
It is advised to set a STORE_PASSWORD so the random password generated does not get lost between the subsequent runs.
The files in this repository are under Apache 2.0 license. The files downloaded from the device are copyrighted by Eaton or Tripp Lite.
No copyrighted content is stored in this repository from Eaton or Tripp Lite.
Changes are made to the configuration files, which should be covered in the regular use of the application.
The downloaded JAR files are re-signed for local use only. They are not redistributable. Please do not distribute copyrighted materials without the owner's permissions.