系统参数设置
1 功能简介
系统参数写在安装目录的 config.txt 中,控制数据库、Redis、日志、会话 Cookie、认证跳转、Syslog、录像存储等。默认路径:
/opt/jumpserver/config/config.txt
2 前提条件
- 已使用具备服务器权限的账号登录 JumpServer 所在主机。
- 已备份当前
config.txt。 - 修改前须停止 JumpServer 服务,避免写到一半导致组件连不上。
修改前先停止服务
先执行 ./jmsctl.sh stop,改完配置再 ./jmsctl.sh start 或 ./jmsctl.sh restart。命令说明见 命令行工具。
3 编辑配置
- 进入安装目录(常见为
/opt/jumpserver)。 - 停止服务。
- 打开配置文件:
vi /opt/jumpserver/config/config.txt
- 保存后启动或重启服务。
- 执行
./jmsctl.sh status确认组件正常。
也可用 ./jmsctl.sh config env 调整环境变量,效果与直接编辑 config.txt 相同,改完同样需要重启。
4 Core 参数说明
表 1 Core 参数说明
| 参数名称 | 默认值 | 可选项 | 说明 |
|---|---|---|---|
| SECRET_KEY | '' | — | 用于对敏感字段进行加解密的 Key |
| BOOTSTRAP_TOKEN | '' | — | 用于组件向 Core 服务注册使用的 Token |
| DEBUG | false | true false | Debug 模式,如果开启页面请求 API 报错时会显示更多信息 |
| DEBUG_DEV | false | true false | Debug 开发模式,如果开启后端日志会显示更多信息 |
| LOG_LEVEL | DEBUG | DEBUG INFO WARNING ERROR CRITICAL | 日志级别 |
| LOG_DIR | /data/jumpserver/core/logs | — | 日志目录 |
| DB_ENGINE | mysql | — | 数据库引擎 |
| DB_NAME | jumpserver | — | 数据库名 |
| DB_HOST | 127.0.0.1 | — | 数据库地址 |
| DB_PORT | 3306 | — | 数据库端口 |
| DB_USER | root | — | 数据库用户 |
| DB_PASSWORD | '' | — | 数据库用户密码 |
| DB_USE_SSL | false | true false | 数据库启用 SSL 方式 |
| REDIS_HOST | 127.0.0.1 | — | Redis 地址 |
| REDIS_PORT | 6379 | — | Redis 端口 |
| REDIS_PASSWORD | '' | — | Redis 密码 |
| REDIS_USE_SSL | false | true false | Redis 启用 SSL 方式 |
| REDIS_SSL_KEY | null | — | Redis SSL Key |
| REDIS_SSL_CERT | null | — | Redis SSL Cert 证书 |
| REDIS_SSL_CA | null | — | Redis SSL CA Cert 证书 |
| REDIS_SSL_REQUIRED | null | — | Redis SSL 证书是否必须 |
| REDIS_MAX_CONNECTIONS | 100 | — | Redis 最大连接数 |
| REDIS_SENTINEL_HOSTS | '' | — | Redis 哨兵地址(多个地址使用 / 分割) |
| REDIS_SENTINEL_PASSWORD | '' | — | Redis 哨兵密码 |
| REDIS_SENTINEL_SOCKET_TIMEOUT | null | — | Redis 哨兵 Socket 超时时间 |
| REDIS_DB_CELERY | 3 | 0-15 | Redis 库编号,Celery 任务使用 |
| REDIS_DB_CACHE | 4 | 0-15 | Redis 库编号,缓存使用 |
| REDIS_DB_SESSION | 5 | 0-15 | Redis 库编号,用户 Session 使用 |
| REDIS_DB_WS | 6 | — | Redis 库编号,WebSocket 使用 |
| TOKEN_EXPIRATION | 3600 * 24(s) | — | 通过 API 创建用户 Token 的有效期;配置为空或 0 时默认 3600 |
| DEFAULT_EXPIRED_YEARS | 70(year) | — | 创建资源的默认过期年份,例如授权规则,不允许修改 |
| SESSION_COOKIE_DOMAIN | null | — | 用户 Session Cookie 域,例如 fit2cloud.com |
| CSRF_COOKIE_DOMAIN | null | — | 用户 CSRF Cookie 域,默认与 SESSION_COOKIE_DOMAIN 保持一致 |
| SESSION_COOKIE_NAME_PREFIX | null | — | Session Cookie 的名称前缀 |
| SESSION_COOKIE_AGE | 3600 * 24(s) | — | 用户 Session Cookie 的有效期 |
| SESSION_EXPIRE_AT_BROWSER_CLOSE | false | true false | 用户 Session 在浏览器关闭后过期 |
| CONNECTION_TOKEN_ONETIME_EXPIRATION | 5 * 60 | >= 5 * 60 | 有效期内 ConnectionToken 只能使用一次 |
| CONNECTION_TOKEN_REUSABLE_EXPIRATION | 3600 * 24 * 30(s) | — | 有效期内 ConnectionToken 可以多次使用 |
| CONNECTION_TOKEN_REUSABLE | false | true false | ConnectionToken 是否可以多次使用 |
| AUTH_CUSTOM | false | true false | 开启自定义用户认证 |
| AUTH_CUSTOM_FILE_MD5 | '' | — | 自定义用户认证的文件 md5 值 |
| MFA_CUSTOM | false | true false | 开启自定义 MFA 认证 |
| MFA_CUSTOM_FILE_MD5 | '' | — | 自定义 MFA 认证的文件 md5 值 |
| AUTH_TEMP_TOKEN | false | true false | 开启临时密码功能 |
| AUTH_SSO | false | true false | 启用 SSO 认证 |
| AUTH_SSO_AUTHKEY_TTL | 60 * 15(s) | — | SSO 认证密钥 TTL |
| LOGIN_REDIRECT_TO_BACKEND | '' | Direct(直接进入内部登录页面) OpenID CAS SAML2 OAuth2 的服务提供商名称 | 开启第三方认证后,不出现倒计时跳转页面,直接跳转到认证服务 |
| LOGIN_REDIRECT_MSG_ENABLED | true | true false | 开启第三方跳转倒计时页面 |
| SYSLOG_ADDR | '' | — | SysLog 服务地址 |
| SYSLOG_FACILITY | user | — | SysLog FACILITY |
| SYSLOG_SOCKTYPE | 2 | — | SysLog SockType |
| PERM_EXPIRED_CHECK_PERIODIC | 60 * 60(s) | — | 校验过期的资产授权规则并过期用户授权树的周期 |
| LANGUAGE_CODE | en | zh en ja | 语言 |
| TIME_ZONE | Asia/Shanghai | — | 时区 |
| SESSION_COOKIE_SECURE | false | true false | 用户 Session Cookie 安全模式,开启后只允许在 https 协议下发送 |
| DOMAINS | '' | — | 指定 JumpServer 应用程序允许的域名 |
| CSRF_COOKIE_SECURE | false | true false | 用户 CSRF Token 安全模式,开启后只允许在 https 协议下发送 |
| REFERER_CHECK_ENABLED | false | true false | 是否开启 REFERER 校验 |
| CSRF_TRUSTED_ORIGINS | — | — | CSRF 同源信任,多个地址使用逗号分割 |
| SESSION_ENGINE | cache | — | 用户 Session 引擎 |
| SESSION_SAVE_EVERY_REQUEST | true | true false | 每个请求都要保存用户 Session |
| SESSION_EXPIRE_AT_BROWSER_CLOSE_FORCE | false | true false | 浏览器关闭后强制过期用户 Session |
| SERVER_REPLAY_STORAGE | 空对象 | — | 服务端录像存储。组件上传录像到 Core 后,Core 自动上传到配置的对象存储 |
| CHANGE_AUTH_PLAN_SECURE_MODE_ENABLED | true | true false | 改密计划安全模式。启用后不支持用户改自己的密文;禁用后支持,例如 root 改 root |
| SECURITY_VIEW_AUTH_NEED_MFA | true | true false | 查看密文等操作是否需要校验 MFA |
| SECURITY_DATA_CRYPTO_ALGO | null | — | 数据加密算法 |
| GMSSL_ENABLED | false | true false | 开启国密算法。若与 SECURITY_DATA_CRYPTO_ALGO 同时配置,优先使用 SECURITY_DATA_CRYPTO_ALGO |
| OPERATE_LOG_ELASTICSEARCH_CONFIG | 空对象 | — | 操作日志「变更字段」的 Elasticsearch 配置 |
| MAGNUS_ORACLE_PORTS | 30000-30030 | — | Magnus 组件需要监听的 Oracle 端口范围 |
| APPLET_DOWNLOAD_HOST | '' | — | Applet 等软件的下载地址 |
| FTP_FILE_MAX_STORE | 0 | — | FTP 文件上传下载备份阈值,单位 MB;小于等于 0 时不备份 |
| MAX_LIMIT_PER_PAGE | 10000 | — | 允许的最大导出记录数 |
| FILE_UPLOAD_SIZE_LIMIT_MB | 200 | — | 文件上传大小上限,单位 MB |
| THROTTLE_RATES_ANON | 60/min | string | 未登录用户访问限流 |
| THROTTLE_RATES_USER | 180/min | string | 用户访问限流 |
| THROTTLE_RATES_SERVICE_ACCOUNT | 300/min | string | 组件账号访问限流 |
JSON 类参数
SERVER_REPLAY_STORAGE、OPERATE_LOG_ELASTICSEARCH_CONFIG 须填写合法 JSON。示例结构见安装部署中的 参数说明。配错会导致服务起不来,改前请备份文件。