Install Gluu Flex On Ubuntu Linux#
This is a step-by-step guide for installation and uninstallation of Gluu Flex on Ubuntu Linux
Prerequisites#
- Ensure that the OS platform is one of the supported versions
- VM should meet VM system requirements
- Make sure that if SELinuxis installed then it is put into permissive mode
- If the server firewall is running, make sure you allow https, which is needed for OpenID and FIDO.sudo ufw allow https
- Please obtain an SSA to trial Flex, after which you are issued a JWT that you can use during installation. SSA should be stored in a text file on an accessible path.
Supported Versions#
- Ubuntu 24.04
- Ubuntu 22.04
- Ubuntu 20.04
Install the Package#
Before you install, check the VM system requirements.
- 
Download the GPG key zip file, unzip and import GPG key wget https://github.com/GluuFederation/flex/files/11814579/automation-flex-public-gpg.zipunzip automation-flex-public-gpg.zip;sudo gpg --import automation-flex-public-gpg.asc;
Ubuntu 24.04#
Download the release package from the GitHub FLEX Releases
wget https://github.com/GluuFederation/flex/releases/download/vreplace-flex-version/flex_replace-flex-version-stable.ubuntu24.04_amd64.deb -P /tmp
Verify integrity of the downloaded package by verifying published sha256sum.  
- Go to the Flex Project Releases page and copy the sha256sumvalue for theflex_replace-flex-version-stable.ubuntu24.04_amd64.debfile:
- Replace paste-release-sha256sumin the command below with the actual checksum you copied from the release page, and run the following command:Commandecho 'paste-release-sha256sum flex_replace-flex-version-stable.ubuntu24.04_amd64.deb ' | sed 's/^sha256://' > flex_replace-flex-version-stable.ubuntu24.04_amd64.deb .sha256sum && sha256sum -c flex_replace-flex-version-stable.ubuntu24.04_amd64.deb.sha256sum
- Output similar to below should confirm the integrity of the downloaded package.
    Commandflex_replace-flex-version-stable.ubuntu24.04_amd64.deb: OK
Install the package
apt install -y /tmp/flex_replace-flex-version-stable.ubuntu24.04_amd64.deb
Ubuntu 22.04#
Download the release package from the GitHub FLEX Releases
wget https://github.com/GluuFederation/flex/releases/download/vreplace-flex-version/flex_replace-flex-version-stable.ubuntu22.04_amd64.deb -P /tmp
Verify integrity of the downloaded package by verifying published sha256sum.  
- Go to the Flex Project Releases page and copy the sha256sumvalue for theflex_replace-flex-version-stable.ubuntu22.04_amd64.debfile:
- Replace paste-release-sha256sumin the command below with the actual checksum you copied from the release page, and run the following command:Commandecho 'paste-release-sha256sum flex_replace-flex-version-stable.ubuntu22.04_amd64.deb ' | sed 's/^sha256://' > flex_replace-flex-version-stable.ubuntu22.04_amd64.deb .sha256sum && sha256sum -c flex_replace-flex-version-stable.ubuntu22.04_amd64.deb.sha256sum
- Output similar to below should confirm the integrity of the downloaded package.
    Commandflex_replace-flex-version-stable.ubuntu22.04_amd64.deb: OK
Install the package
apt install -y /tmp/flex_replace-flex-version-stable.ubuntu22.04_amd64.deb
Ubuntu 20.04#
Download the release package from the GitHub FLEX Releases
wget https://github.com/GluuFederation/flex/releases/download/vreplace-flex-version/flex_replace-flex-version-stable.ubuntu20.04_amd64.deb -P /tmp
Verify integrity of the downloaded package by verifying published sha256sum.  
- Go to the Flex Project Releases page and copy the sha256sumvalue for theflex_replace-flex-version-stable.ubuntu20.04_amd64.debfile:
- Replace paste-release-sha256sumin the command below with the actual checksum you copied from the release page, and run the following command:Commandecho 'paste-release-sha256sum flex_replace-flex-version-stable.ubuntu20.04_amd64.deb ' | sed 's/^sha256://' > flex_replace-flex-version-stable.ubuntu20.04_amd64.deb .sha256sum && sha256sum -c flex_replace-flex-version-stable.ubuntu20.04_amd64.deb.sha256sum
- Output similar to below should confirm the integrity of the downloaded package.
    Commandflex_replace-flex-version-stable.ubuntu20.04_amd64.deb: OK
Install the package
apt install -y /tmp/flex_replace-flex-version-stable.ubuntu22.04_amd64.deb
Run the setup script#
Execute the setup script with command below:
sudo python3 /opt/jans/jans-setup/flex/flex-linux-setup/flex_setup.py
Install Admin UI [Y/n]: y
Verify and Access the Installation#
Verify that installation has been successful and all installed components are accessible using the steps below:
- 
Log in to Text User Interface (TUI) TUI is a text-based configuration tool for Gluu Flex Server./opt/jans/jans-cli/jans_cli_tui.py
- 
Log into Admin-UI using URI below After successful installation of the Admin-UI component, we need to upload the required SSA input as a file path. This should be the SSA or file that was acquired as part of the prerequisite step.https://FQDN/admin
When troubleshooting issues with Admin UI access, it's advisable to check the logs, refer to the FAQ, and review service dependencies for potential solutions.
- Access Casa using URI below
https://FQDN/jans-casa
Enabling HTTPS#
To enable communication with Janssen Server over TLS (https) in a production environment, Janssen Server needs details about CA certificate.
Note
Want to use Let's Encrypt to get a certificate? Follow this guide.
Uninstallation#
Removing Flex is a two step process:
If you have not run the setup script, you can skip step 1 and just remove the package.
Uninstall Gluu Flex#
Use the command below to uninstall the Gluu Flex server
sudo python3 /opt/jans/jans-setup/flex/flex-linux-setup/flex_setup.py --remove-flex
sudo python3 /opt/jans/jans-setup/flex/flex-linux-setup/flex_setup.py --remove-flex
This process is irreversible.
Gluu Flex Components will be removed
Are you sure to uninstall Gluu Flex? [yes/N] yes
Profile was detected as jans.
Log Files:
/opt/jans/jans-setup/logs/flex-setup.log
/opt/jans/jans-setup/logs/flex-setup-error.log
Please wait while collecting properties...
Uninstalling Gluu Casa
  - Deleting /etc/default/casa
  - Deleting /etc/systemd/system/casa.service
  - Removing casa directives from apache configuration
  - Deleting /opt/jans/jetty/jans-auth/custom/libs/casa-config.jar
  - Removing plugin /opt/jans/jetty/jans-auth/custom/libs/casa-config.jar from Jans Auth Configuration
  - Deleting /opt/jans/python/libs/Casa.py
  - Deleting /opt/jans/python/libs/casa-external_fido2.py
  - Deleting /opt/jans/python/libs/casa-external_otp.py
  - Deleting /opt/jans/python/libs/casa-external_super_gluu.py
  - Deleting /opt/jans/python/libs/casa-external_twilio_sms.py
  - Deleting casa client from db backend
  - Deleting casa client scopes from db backend
  - Deleting casa configuration from db backend
  - Deleting script 3000-F75A from db backend
  - Deleting /opt/jans/jetty/casa
Uninstalling Gluu Admin-UI
  - Deleting Gluu Flex Admin UI Client  2001.e7989c7e-09b5-4e39-a7c9-a78017127cf0
  - Removing Admin UI directives from apache configuration
  - Deleting /opt/jans/jetty/jans-config-api/custom/libs/gluu-flex-admin-ui-plugin.jar
  - Removing plugin /opt/jans/jetty/jans-config-api/custom/libs/gluu-flex-admin-ui-plugin.jar from Jans Config API Configuration
  - Deleting /opt/jans/jetty/jans-config-api/custom/config/log4j2-adminui.xml
  - Deleting /opt/jans/jetty/jans-config-api/custom/config/log4j2.xml
  - Rewriting Jans CLI init file for plugins
  - Deleting /var/www/html/admin
Disabling script A51E-76DA
Restarting Apache
Restarting Jans Auth
Restarting Janssen Config Api
Uninstall Janssen Packages#
The command below removes and uninstall the jans package
python3 /opt/jans/jans-setup/install.py -uninstall
sudo python3 /opt/jans/jans-setup/install.py -uninstall
This process is irreversible.
You will lose all data related to Janssen Server.
Are you sure to uninstall Janssen Server? [yes/N] yes
Uninstalling Jannsen Server...
Removing /etc/default/jans-config-api
Stopping jans-config-api
Removing /etc/default/jans-auth
Stopping jans-auth
Removing /etc/default/jans-fido2
Stopping jans-fido2
Removing /etc/default/jans-scim
Stopping jans-scim
Removing /etc/default/jans-cache-refresh
Stopping jans-cache-refresh
Stopping OpenDj Server
Stopping Server...
[23/Jun/2023:09:10:27 +0000] category=BACKEND severity=NOTICE msgID=370 msg=The backend userRoot is now taken offline
[23/Jun/2023:09:10:28 +0000] category=BACKEND severity=NOTICE msgID=370 msg=The backend site is now taken offline
[23/Jun/2023:09:10:28 +0000] category=BACKEND severity=NOTICE msgID=370 msg=The backend metric is now taken offline
[23/Jun/2023:09:10:28 +0000] category=CORE severity=NOTICE msgID=203 msg=The Directory Server is now stopped
Executing rm -r -f /etc/certs
Executing rm -r -f /etc/jans
Executing rm -r -f /opt/jans
Executing rm -r -f /opt/amazon-corretto*
Executing rm -r -f /opt/jre
Executing rm -r -f /opt/node*
Executing rm -r -f /opt/jetty*
Executing rm -r -f /opt/jython*
Executing rm -r -f /opt/opendj
Executing rm -r -f /opt/dist
Removing /etc/apache2/sites-enabled/https_jans.conf
Removing /etc/apache2/sites-available/https_jans.conf
Remove Gluu Flex Packages:#
List existing Gluu Flex packages with:
sudo apt list --installed | grep flex
sudo apt remove <package name>
Uninstalling Admin UI#
To uninstall the Admin UI from your Flex installation, execute this command:
sudo python3 /opt/jans/jans-setup/flex/flex-linux-setup/flex_setup.py --remove-flex
Updating Admin UI#
To update the Admin UI in an existing Flex installation, execute this command:
sudo python3 /opt/jans/jans-setup/flex/flex-linux-setup/flex_setup.py --update-admin-ui