FastX Environment Variables
FastX 4 can use environment variables to override configuration.
Override local variables in $FX_LOCAL_DIR/fastx.env
The variables can also be configured in $FX_CONFIG_DIR/fastx.env
Order of merge environment variable, $FX_LOCAL_DIR/fastx.env, $FX_CONFIG_DIR/fastx.env
# This file is an .env file. Any setting in this file can be overridden by an environment variable of the same name
# mail to send admin notifications to
ADMIN_EMAIL=
# send admin a notification when node connects
ADMIN_NOTIFY_NODE_CONNECT=true
# send admin a notification when node disconnects
ADMIN_NOTIFY_NODE_DISCONNECT=true
#end admin a notification when license cannot be reached
ADMIN_NOTIFY_LICENSE_UNREACHABLE=true
# send email when disk space is low
ADMIN_NOTIFY_LOW_DISK_GB=0
# file location of the admin password file.
ADMIN_PASSWORD_FILE=admin.secret
# issuer algorithm
ALGORITHM=
# Announcements. Can be .html or .md (markup) format
ANNOUNCEMENTS_FILE=announcements.html
# search dir for session applications
# see session-application.schema.ini for application.ini format
APPLICATIONS_DIR=apps
# home page when logged out
AUTH_HOMEPAGE=/auth/ssh
# oidc file
AUTH_OIDC_FILE=auth-oidc.ini
# oidc json file from GCP
AUTH_OIDC_GOOGLE_FILE=
# saml file
AUTH_SAML_FILE=auth-saml.ini
# saml file
AUTH_SAML_FILE=auth-saml.ini
# proxy login file
AUTH_PROXY_FILE=auth-proxy.ini
# disable ssh authentication
AUTH_SSH_DISABLE=false
# disable public key authentication
AUTH_SSH_DISABLE_PUBLIC_KEY_AUTHENTICATION=false
# disable launching link daemons
AUTH_SSH_DISABLE_DAEMON=false
# enable the ssh banner
AUTH_SSH_ENABLE_BANNER=false
# hide the manage ssh keys in the login page
AUTH_SSH_HIDE_MANAGE_KEYS=false
# hide the ssh password in the login page
AUTH_SSH_HIDE_PASSWORD=false
# passoword prompt regex to inject the password in on keyboard interactive
AUTH_SSH_PASSWORD_PROMPT_REGEX=^[p|P]assword
# ssh port for authentication
AUTH_SSH_PORT=22
# length in seconds before SSH authentication fails
AUTH_SSH_TIMEOUT=300
# how long for the authtoken to be valid
AUTH_SSH_TOKEN_EXPIRE=5m
# Base Uri for proxies
BASE_URI=
# connect to sessions on server using a bridge
BRIDGE_SESSION=
# server build number
BUILD_NUMBER=
# Webserver certificate authority file
CA_FILE=
# Webserver certificate file
CERT_FILE=
# script to use when you need to change users to launch a session
CHANGE_USER_LAUNCHER_SCRIPT=
# Private key format
CHANGE_USER_SSH_KEY_FORMAT=PEM
# Private key type
CHANGE_USER_SSH_KEY_TYPE=rsa
# Private key size
CHANGE_USER_SSH_KEY_SIZE=2048
# Port to try change user ssh
CHANGE_USER_SSH_PORT=3322
# Maximum time to wait when launching or connecting to a session
CONNECT_TIMEOUT_SECONDS=60
# directory to store session cookies
COOKIES_DIR=cookies
# disable all api calls to update configs
DISABLE_CONFIG_WRITES=true
# disable TLS support on the web server
DISABLE_TLS=false
# HTML file for custom 403 errors
ERROR_403_FILE=403.html
# HTML file for custom 404 errors
ERROR_404_FILE=404.html
# HTML file for custom 500 errors
ERROR_500_FILE=500.html
# search dir for session forms
FORMS_DIR=forms
# forward file
FORWARD_FILE=forward.ini
# Root path for configuration, local paths for configuration will look in this directory
FX_CONFIG_DIR=/etc/fastx
# Root path for storage of fastx data
FX_VAR_DIR=/var/fastx
# Root path of the fastx public web directory
FX_WEB_PUBLIC_DIR=
# Extra https configuration for the web server
HTTPS_FILE=https.ini
# Extra http headers to add to the the URL
HTTP_HEADERS_FILE=headers.ini
# Hostname override
HOSTNAME=
# issuer id for signing tokens
ISSUER=
# search dir for application icons
ICONS_DIR=icons
# Webserver certificate private key file
KEY_FILE=
# script to use to launch sessions
LAUNCHER_SCRIPT=
# comma separated list of arguments to pass to the launcher script
LAUNCHER_ARGS=
# launch as the current user or system user
LAUNCH_AS_CURRENT_USER=
# search dir for licenses
LICENSE_DIR=license
# Built in load balancer (sessions | random | local )
LOAD_BALANCER=
# Custom script to use for load balancing
LOAD_BALANCER_SCRIPT=
# DEPRECATED: Password based local logins
LOCAL_LOGIN_FILE=auth-local.ini
# Disclaimer text to add to the login page
LOGIN_DISCLAIMER=
# Hide the admin button
LOGIN_HIDE_ADMIN_BUTTON=
# Hide the login theme background
LOGIN_THEME_HIDE_BACKGROUND=
# Background to add to the login page
LOGIN_THEME_LOGO_BACKGROUND=
# Logo position on the login page
LOGIN_THEME_LOGO_POSITION=
# Extra middleware files to inject into the web server
MIDDLEWARE_JS_FILES=
# Message of the day file. Can be .html or .md (markup) format
MOTD_FILE=motd.html
# search dir for session performance settings
# ses session-performance.schema.ini
PERFORMANCE_DIR=performance
# Webserver port
PORT=3300
# issuer public key file
PUBLIC_KEY_FILE=
# user issuer public key files
PUBLIC_KEY_DIR=public_keys
# user issuer public key files expire tine
PUBLIC_KEY_EXPIRE_MINUTES=20160
# file for smtp settings
SMTP_FILE=smtp.ini
# Local temp location
FX_TEMP_PATH=
# Theme settings file
THEME_FILE=theme.ini
# Theme logo
THEME_LOGO_FILE=logo.png
# File that holds transporter secrets
TRANSPORTER_FILE=transporter-secret.ini
# Script to run to get the user's groups, uid, gid, shell, home etc
USER_ID_SCRIPT=
# Ini file that holds the user permissions
USER_PERMISSIONS_FILE=user-permissions.schema.ini
# Directory of user storage
USERS_DIR=users
# Default keyboard layout for the user
USER_PREFS_KEYBOARD_LAYOUT=
# Script to run to get the user's default preferences (email)
USER_PREFERENCES_SCRIPT=
# Default connection type for the user
USER_PREFS_CONNECTION_TYPE=
# Array of notifications as the reminder
USER_PREFS_EMAIL_NOTIFY='["admin-terminate", "idle-terminate", "error-terminate"]'
# number of minutes session is disconnected before sending reminder email
USER_PREFS_EMAIL_NOTIFY_DISCONNECT_MINUTES=0
# number of minutes before session terminates to remind user to reconnect
USER_PREFS_EMAIL_NOTIFY_IDLE_TERMINATE_REMINDER_MINUTES=0
# Root directory of the user's file manager
USER_SHARING_ROOT_DIR=$HOME
# Max age of an api token
USER_TOKEN_MAX_AGE=7d
# for integration: disable all dialogs in the web client.
WEBCLIENT_HIDE_ALL_DIALOGS=false
# for integration: disable client menu in the web client.
WEBCLIENT_HIDE_CLIENT_MENU=false
# for integration: disable home button in the web client.
WEBCLIENT_HIDE_HOME_BUTTON=false
# for integration: open home button link in the same window
WEBCLIENT_HOME_BUTTON_SAME_WINDOW=false
# for integration: home button link location
WEBCLIENT_HOME_BUTTON_URL=../
# for integration: do not propagate messages to the parent browser window
WEBCLIENT_STOP_MESSAGE_PROPAGATION=false
# port number sessions connect to when using the weblink
WEBLINK_PORT=3320
# HTML file for custom Welcome page
WELCOME_FILE=welcome.html