KSWEB 部署后第一时间改 root 空密码 默认值不安全
默认值是安全隐患
KSWEB 首次启动 MySQL 后,root 账号没有密码。同 Wi-Fi 下任何设备只要知道你的内网 IP 和 3306 端口,就能连上数据库建库删库。文档里反复强调这一点——部署完 CMS 第一件事就是改密码。
方式一:phpMyAdmin / Adminer(推荐)
phpMyAdmin
- TOOLS 标签页打开 phpMyAdmin
- 顶部"用户账户"标签
- 找到
root@localhost那行,点"修改权限" - 底部"登录信息"区域,输入新密码
- 保存
Adminer
- TOOLS 标签页打开 Adminer
- 左侧 Users → 找到
root@localhost - 点修改,设置新密码
- 保存
方式二:命令行
如果更喜欢敲命令(或 phpMyAdmin 改完 CMS 还没更新配置),通过 SSH / Terminal 脚本也行:
mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; FLUSH PRIVILEGES;"
改完必须同步更新的配置
CMS 的数据库连接配置文件里也存着密码,改了 root 密码后这些文件里的密码也要同步更新,否则 CMS 连不上数据库:
| CMS | 配置文件位置 |
|---|---|
| WordPress | wp-config.php 里的 DB_PASSWORD |
| Joomla | configuration.php 里的 $dbpass |
| Drupal | sites/default/settings.php 里的 $databases |
| Yii2 | config/db.php 里的 password |
| MODX | core/config/config.inc.php 里的 $database_password |
直接在 KSWEB 内置编辑器里打开这些文件,把密码改掉,保存即可。
别忘了改 Web Interface 的默认登录
KSWEB 自带的 Web Interface(浏览器端管理界面)默认账号密码也是 admin / admin,放在局域网里一样危险。修改入口在 SETTINGS 标签页 → Web Interface 登录信息。
改坏了登不上怎么办
如果改完 root 密码后 phpMyAdmin 自己也登不上了,通过命令行重置:
# 1. 停掉 MySQL
# 2. 以跳过权限模式启动
mysqld --skip-grant-tables &
# 3. 连上后重置密码
mysql -u root -e "FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY ''; FLUSH PRIVILEGES;"
# 4. 重启 MySQL
重置后 root 密码回到空,按上面的步骤重新设置一个新密码。