保护 MySQL debian-sys-maint

保护 MySQL debian-sys-maint

通过全新(但旧)安装 Ubuntu 和 MySQL,我发现我可以通过命令行客户端访问 MySQL 而无需输入任何用户或密码。

mysql这种默认情况让我很困扰,我试图调查一下。以 root 身份登录需要 root 密码。但如果不指定用户(即仅在命令行中输入)登录,则不会要求我输入用户名和密码。

我想我已经追踪到用户了debian-sys-maint,一方面该用户似乎拥有完全的 MySQL 权限,/etc/mysql/debian.cnf另一方面该用户也是 中定义的默认客户端用户。

我的第一反应是完全摆脱该用户,因为这对我来说似乎是一个安全漏洞,但读完包括下面链接的帖子后,似乎有debian-sys-maint必要这样做。

所以我的计划是尝试以下操作:

REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'debian-sys-maint';
GRANT RELOAD on *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'xxxxxx';
FLUSH PRIVILEGES;

有人可以评论这是保护默认 MySQL 安装的推荐/预期/正确的方法吗?

我是否也应该修改/etc/mysql/debian.cnf以删除此部分?

[client]
host     = localhost
user     = debian-sys-maint
password = xxxxxx
socket   = /var/run/mysqld/mysqld.sock

(它确实发出警告# Automatically generated for Debian scripts. DO NOT TOUCH!:)

无论如何,我打算用我自己的~/.my.cnf客户部分来替换它。


更新: 的权限/etc/mysql/debian.cnf为:

-rw------- 1 root root 312 2012-05-20 23:07 /etc/mysql/debian.cnf

参考:

答案1

答案是,这个debian-sys-maint说法不过是转移注意力的幌子。

我所观察的现象是 MySQL“匿名”用户。

这两个问题以及我昨天发布的问题回答了这个问题:

相关内容