jumpserver 无法绑定MFA,多因素认证也无法登录,提示* 虚拟 MFA 验证码错误,或者服务器端时间不对。
已确认服务器时间同步没问题
原因找到了,是jms_mysql的时区问题
进入容器
docker exec -it -u root jms_mysql /bin/bash
查看当前时区配置
cat /etc/timezone # 应显示 Etc/UTC
ls -l /etc/localtime # 应指向 /usr/share/zoneinfo/Etc/UTC
date # 显示UTC时间(如Fri Oct 17 06:15:59 UTC 2025)
强制设置中国时区
创建软链接指向上海时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
覆盖时区配置文件
echo “Asia/Shanghai” > /etc/timezone
验证时区变更
date # 应显示CST时间(如Fri Oct 17 14:15:59 CST 2025)
cat /etc/timezone # 确认显示 Asia/Shanghai
重启容器服务
docker restart jms_mysql jms_core jms_celery