介绍
可能有不少用户遇到过这样的问题,安装 3CX 测试的时候忘记了当初填写的密码。因为 3CX 的密码要求有大小写字母,长度大于十位。很多人记不住。而 root 密码独立于 3CX 的密码,对于密码复杂度没有要求,很多人都能记住 root 密码。
这里我们就介绍一下如何利用 root 权限查看 3CX 管理员的用户名和密码。
步骤
我们这里使用的方法是利用 3CX 备份命令行工具生成一个备份文件,而在备份文件中能找到管理员的用户名和密码。
如果已经有备份文件的用户可以直接跳过这步,想了解更多关于备份命令行工具可以查看:3CX 备份还原命令行。
首先我们使用 root 用户 ssh 登录到 Debian,执行以下命令:
runuser -l phonesystem -c "/usr/sbin/3CXBackupCmd --file=/var/lib/3cxpbx/Instance1/Data/Backups/findpassword.zip --log=/var/tmp/pbx-backup_cmd.log"
我们会在 /var/lib/3cxpbx/Instance1/Data/Backups/
目录下创建一个备份文件,由于是不带其他选项的备份,文件不会很大。
如上图所示就是备份完了,我们执行命令看一下大小:
ls -lh /var/lib/3cxpbx/Instance1/Data/Backups/
可以看到只有 7.3M,备份文件的大小和分机和通话数量都有关,用的越多备份文件越大。
接下来我们解压这个文件:
cd /var/lib/3cxpbx/Instance1/Data/Backups/ unzip findpassword.zip -d findpassword/
解压后会有个 xml 文件:
cd findpassword/ ls -l
每个 XML 文件的名称都不同,接下来我们编辑它:
nano 2134124207Db.xml
打开后按下 ctrl + w,输入 WEBSERVERPASS 回车:
接着就能看用户名和密码了:
其中 The admin pass 的 value 是密码,The admin ID 的 value 是用户名。