Configuration
JumpServer reads its runtime settings from a single environment-style file,
/opt/jumpserver/config/config.txt. The installer generates the file from
config-example.txt, then the containers read the values at start time. This page
explains the file, the main groups of settings, and how to change them safely. The
complete parameter list is outside the scope of this page; the installer's
config-example.txt documents every option.
Configuration file
The default location is:
Settings use the KEY=VALUE form, one per line. The file controls the database and
cache connection, exposed ports, session cookies, logging, component switches,
object storage, and account vault integration. TLS certificate files referenced by
these settings are stored under /opt/jumpserver/config/certs and
/opt/jumpserver/config/nginx/cert.
Apply changes
Configuration is not hot-reloaded. Back up the file, edit it, then restart the services:
For changes that affect database or cache connectivity, stop the services first so that components do not reconnect to a half-written configuration:
The installer also provides a guided editor: ./jmsctl.sh config --help lists the
ntp, init, port, ssl, and env subcommands. See
Command-Line Tools.
Main setting groups
Example: switch to an external database
- Stop the services with
./jmsctl.sh stop. - Edit
DB_ENGINE,DB_HOST,DB_PORT,DB_NAME,DB_USER, andDB_PASSWORDinconfig.txt. - Start the services with
./jmsctl.sh start. - Run
./jmsctl.sh statusand openhttp://<jumpserver-host>/api/health/to confirm that Core is healthy.
Changing the database after data exists does not migrate the records. Move the data first, or use the restore procedure in Backup & Restore.