Apache OpenMeetings 9.1.0 配置参数详解

Apache OpenMeetings 9.1.0 配置参数详解,覆盖数据库(H2/MySQL/PostgreSQL)、端口与 TLS、JVM 堆、openmeetings.properties、运行时配置与邮件参数,含生产配置模板与 FAQ。

Apache OpenMeetingsApache OpenMeetings2026/10/12

Apache OpenMeetings 9.1.0 配置参数详解

目标:系统梳理 Apache OpenMeetings 9.1.0 的全部常用配置参数(数据库、端口/TLS、JVM、应用与运行时配置),给出位置、默认值与修改方法。所有默认值取自 Ubuntu 22.04 实测安装(JDK 21.0.12.1、Tomcat 11.0.23、安装路径 /opt/apache-openmeetings-9.1.0,下称 $OM_HOME)。

一、环境信息

  • 操作系统:Ubuntu 22.04.5 LTS(x86_64)
  • 版本:Apache OpenMeetings 9.1.0(内嵌 Apache Tomcat 11.0.23,JDK 21.0.12.1)
  • 安装路径:/opt/apache-openmeetings-9.1.0($OM_HOME)
  • 主要配置文件:
    • $OM_HOME/conf/server.xml(Tomcat 端口/TLS)
    • $OM_HOME/bin/setenv.sh(JVM 参数)
    • $OM_HOME/webapps/openmeetings/WEB-INF/classes/openmeetings.properties(应用参数)
    • $OM_HOME/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml(数据库连接)
    • /etc/systemd/system/openmeetings.service(systemd 托管参数)
  • 管理账号:admin(示例口令 Q1w2e3r4!)

二、前置条件

  • 已按《Ubuntu 22.04 安装 Apache OpenMeetings 9.1.0 指南》完成部署并正常运行。
  • 修改配置文件需要 root 权限;应用级参数(后台「配置」页)需要管理员账号登录。
  • 修改 server.xml / persistence.xml / openmeetings.properties 后均须重启服务生效:
systemctl restart openmeetings

三、参数查看与修改方式

OpenMeetings 的参数分四类,修改位置互不相同:

参数类别修改位置生效方式
数据库连接persistence.xml(或 admin.sh -i 的 --db-* 参数)重启服务
端口/TLSconf/server.xml重启服务
JVM 堆bin/setenv.sh / systemd Environment重启服务
应用参数openmeetings.properties + 后台「配置」页重启服务或页面保存即生效

查看当前生效 JVM 参数(验证堆与 GC):

ps -ef | grep [j]ava

回显:

root ... -Xms256m -Xmx512m -server -XX:+UseParallelGC ... org.apache.catalina.startup.Bootstrap start

四、参数总览

参数默认值位置说明
Url(H2)jdbc:h2:./omdbpersistence.xml内嵌数据库连接串
HTTP 端口5080conf/server.xml对外 HTTP 服务端口
HTTPS 端口5443conf/server.xml对外 HTTPS 服务端口
关闭端口8005conf/server.xml服务关闭监听端口
-Xms/-Xmx256m/512msetenv.sh / systemdJVM 堆
scrypt.cost16384openmeetings.properties口令散列成本
kurento.ws.urlws://127.0.0.1:8888/kurentoopenmeetings.propertiesKurento 媒体服务器地址
nettest.max.clients50openmeetings.properties网络测试并发上限
user.login.minimum.length4后台「配置」登录名最小长度
user.pass.minimum.length8后台「配置」口令最小长度
max.upload.size104857600后台「配置」单文件上传上限(100MB)
default.timezoneEurope/Berlin后台「配置」默认时区
application.base.urlhttps://localhost:5443/openmeetings/后台「配置」对外访问地址

五、核心参数分类详解

5.1 数据库参数

默认内嵌 H2,连接定义在 $OM_HOME/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml:

<property name="openjpa.ConnectionDriverName" value="org.apache.commons.dbcp2.BasicDataSource" />
<property name="openjpa.ConnectionProperties" value="DriverClassName=org.h2.Driver, Url=jdbc:h2:./omdb, maxTotal=100, maxIdle=100, minIdle=0, maxWaitMillis=10000, TestOnBorrow=true, Username=, Password=" />
  • Url=jdbc:h2:./omdb:相对 $OM_HOME 目录,库文件为 omdb.mv.db。
  • 连接池:maxTotal=100、maxIdle=100、minIdle=0、maxWaitMillis=10000。

发行包在 META-INF/ 下提供 h2 / mysql / postgresql / oracle / mssql / db2 各版本的 *_persistence.xml 样例,切换数据库时参考对应样例改写。

初始化时指定数据库(推荐,admin.sh -i 提供 --db-* 参数,服务停止状态下执行):

cd /opt/apache-openmeetings-9.1.0
./admin.sh -i -user admin -email admin@example.com -tz "Asia/Shanghai" -group "admin" --password "Q1w2e3r4!" \
  --db-type mysql --db-host 192.168.1.100 --db-port 3306 --db-name openmeetings \
  --db-user om --db-pass 'Om@2026#db'
  • --db-type 取值:h2、mysql、postgresql、oracle、mssql、db2(与 *_persistence.xml 对应)。
  • --drop:安装前清空数据库;--force:跳过旧数据存在性检查强制安装。

⚠️ MySQL 连接要点(官方文档):数据库字符集用 utf8;JDBC 驱动 jar 放入 $OM_HOME/webapps/openmeetings/WEB-INF/lib/;连接串建议加 serverTimezone 参数(如 jdbc:mysql://192.168.1.100:3306/openmeetings?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai)。

5.2 端口与 TLS 参数

定义于 $OM_HOME/conf/server.xml:

  • HTTP 连接器:<Connector port="5080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="5443" />
  • HTTPS 连接器:port=5443,使用 conf/localhost.jks(别名 tomcat,keystore 密码 openmeetings,默认自签证书)
  • Server 关闭端口:8005;AJP 8009 默认注释。

修改端口示例(HTTP 改 8080):

sed -i 's/port="5080"/port="8080"/' /opt/apache-openmeetings-9.1.0/conf/server.xml
systemctl restart openmeetings

⚠️ 生产替换证书:将正式证书与私钥装入 PKCS12/JKS 后,同步修改 HTTPS Connector 的 keystoreFile 与 keystorePass,并更新后台「配置」页的 application.base.url,避免登录回调地址错误。

5.3 JVM 与内存参数

堆统一限定 256–512MB,两个修改入口:

  • 脚本启动入口 $OM_HOME/bin/setenv.sh:
export CATALINA_OPTS="-Xms256m -Xmx512m -server -XX:+UseParallelGC"
export JAVA_OPTS="-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"
  • systemd 入口 /etc/systemd/system/openmeetings.service:
Environment="CATALINA_OPTS=-Xms256m -Xmx512m -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"

修改后验证生效:

systemctl daemon-reload
systemctl restart openmeetings
ps -ef | grep [j]ava

回显(-Xms256m -Xmx512m 生效):

root ... -Xms256m -Xmx512m -server -XX:+UseParallelGC ... org.apache.catalina.startup.Bootstrap start

💡 说明:发行包自带 systemd 样例的堆为 -Xms1G -Xmx4G,对 2GB 内存的小服务器过大,务必按上述区间调整;16GB 以上内存且会议并发高时可上调至 -Xmx2g。

5.4 openmeetings.properties 应用参数

文件:$OM_HOME/webapps/openmeetings/WEB-INF/classes/openmeetings.properties

Crypt(口令散列):

参数默认值说明
scrypt.cost16384scrypt 计算成本
remember.me.rotation.days30记住我加密参数轮换周期(天)

Timeouts(清理任务超时,毫秒):

参数默认值说明
job.cleanup.session.timeout1800000(30 分钟)会话清理超时
job.cleanup.test.setup.timeout3600000(1 小时)测试设置清理超时
job.cleanup.reset.hash.ttl86400000(1 天)重置口令哈希 TTL
job.cleanup.conf.log.ttl604800000(7 天)会议日志保留 TTL

Kurento(媒体服务器,⚠️ 需 KMS 部署前置):

参数默认值说明
kurento.ws.urlws://127.0.0.1:8888/kurentoKMS WebSocket 地址
kurento.check.timeout10000(毫秒)心跳检查超时
kurento.watch.thread.count10媒体线程数
kurento.kuiddf992960-e7b0-11ea-9acd-337fb30dd93dKurento 实例唯一 ID,建议按 https://www.uuidtools.com 生成新值并定期更换
kurento.ignored.kuids空忽略的实例 ID 列表(空格/逗号分隔)
kurento.certificateType空(RSA/ECDSA)DTLS 媒体面证书类型

NetTest(网络测试):

参数默认值说明
nettest.max.clients50网络测试并发客户端上限

SIP(与 Asterisk 对接,⚠️ 需 Asterisk 部署前置):

参数默认值说明
sip.max.contacts1单用户最大联系数
sip.transporttransport-udp传输协议
sip.manager.port5038Asterisk Manager 端口
sip.ws.local.port.min/max6666/7666本地 WS 端口段
sip.ws.remote.port8088远端 WS 端口

OTP(基于时间的一次性口令):

参数默认值说明
otp.issuer空(默认取 application.name)OTP 颁发者
otp.ntp.serverpool.ntp.orgNTP 时间源
otp.ntp.timeout3000(毫秒)NTP 超时

⚠️ 注意:OTP 参数必须在用户启用 OTP 之前修改,否则用户将无法登录。

5.5 运行时配置参数(后台「配置」页)

登录管理员账号后经「配置」页维护,存储于数据库,等价键与默认值:

参数默认值说明
user.login.minimum.length4登录名最小长度
user.pass.minimum.length8口令最小长度
max.upload.size104857600(100MB)单文件上传上限
application.base.urlhttps://localhost:5443/openmeetings/对外访问地址(含端口,生产必改)
default.timezoneEurope/Berlin默认时区(中国服务器建议改 Asia/Shanghai)
allow.frontend.registertrue是否允许前台注册
application.nameOpenMeetings应用名(同时作 OTP issuer 默认值)
document.dpi150文档转图片 DPI

5.6 登录与密码策略参数

  • 登录名最小 4 位、口令最小 8 位,口令须含大写、小写、数字与特殊符号(StrongPasswordValidator 校验,admin.sh -i 的 --password 同样受限)。
  • 修改策略:后台「配置」页调整 user.login.minimum.length / user.pass.minimum.length 后保存。
  • 记住我:remember.me.rotation.days 每 30 天轮换加密参数。

5.7 邮件/SMTP 参数

初始化时可通过 admin.sh -i 指定:

参数默认值说明
--system-email-addressnoreply@openmeetings.apache.org系统发件邮箱
--smtp-serverlocalhostSMTP 服务器
--smtp-port25SMTP 端口
--email-auth-user空SMTP 认证用户(空为匿名)
--email-auth-pass空SMTP 认证密码
--email-use-tlsno是否启用 TLS

后台「配置」页可二次修改邮件服务器与发件地址。

六、生产配置模板

适用场景:8GB 内存、NVMe SSD、并发 50–100 会议的常规生产服务器。

项目值位置
JVM 堆-Xms512m -Xmx1g -server -XX:+UseParallelGCsetenv.sh / systemd
数据库MySQL 8(utf8mb4,serverTimezone=Asia/Shanghai)admin.sh -i --db-* 初始化
时区Asia/Shanghai后台「配置」/ -tz 参数
HTTPS正式证书替换 localhost.jksconf/server.xml
application.base.urlhttps://<域名>:5443/openmeetings/后台「配置」
上传上限104857600(按业务调整)后台「配置」
Kurento(可选)同机/独立 KMS,更新 kurento.ws.url 与 kurento.kuidopenmeetings.properties

七、常见问题

7.1 修改端口后登录跳转地址不对

原因:仅改了 server.xml,后台「配置」页 application.base.url 仍是旧地址。

处理:同步更新 application.base.url 为 http(s)://<服务器IP>:<新端口>/openmeetings/ 并保存。

7.2 上传大文件被拒

原因:max.upload.size 默认 100MB。

处理:后台「配置」页调大该值后保存(需重启使部分场景生效)。

7.3 切换 MySQL 后启动报连接失败

原因:驱动未放入 WEB-INF/lib,或连接串缺 serverTimezone/utf8 参数。

处理:参考 5.1 节放入 mysql-connector 驱动并补全连接串参数;确认库字符集 utf8。

7.4 时区显示为 Europe/Berlin

原因:default.timezone 未改。

处理:后台「配置」页设为 Asia/Shanghai(初始化时用 -tz "Asia/Shanghai" 亦可)。

7.5 OTP 用户无法登录

原因:otp.issuer / NTP 参数在用户启用 OTP 后修改。

处理:改回启用时的参数,或按官方文档重置用户 OTP。

八、参考链接