MySQL 5.7 / Ubuntu 16.04 的安全性有变化吗?

MySQL 5.7 / Ubuntu 16.04 的安全性有变化吗?

我最近将系统升级到了 Ubuntu 16.04(包括升级到 MySQL 5.7)。之前,一些脚本(用于备份)都是静默运行的,但现在,我得到了:

[Warning]: Using a password on the command line interface can be insecure

在 cron.daily 脚本中,有问题的行如下:

mysqldump -uMyUser -pMyPasswd --single-transaction --databases $db > $file

这仅仅是 MySQL 发出的新警告吗(= 这种情况并不新,但现在发出了警告)还是有更严重的问题需要考虑?我想知道我是否可以忽略此警告。

答案1

我相信这是在 MySQL 5.6 中首次包含的。我不认为它会带来任何额外的安全威胁。但是,应该注意的是,如果您的 cron 条目与上面的内容完全相同,则该命令会将您系统中的密码暴露给ps日志条目。

我建议将 cron 条目放入具有适当权限的外部文件中。

~/.my.cnf为了用户访问,您可以创建一个包含以下内容的文件,而不是 crontab 。

[client]                                                                                                                                                   
user=username                                                                                                                                         
password=password
host=localhost

答案2

这似乎不是一个新功能,因为2013 年 Stack Overflow 上的这个问题

最安全的解决方案可能是遵循bc2946088 的建议并将用户信息存储在文件中。

但是,前面提到的 Stack Overflow 帖子提供了一种避免警告消息的解决方案,与 bc2946088 解决方案非常相似,只是方法不同:

如果你的 MySQL 客户端/服务器版本是 5.6.x,避免出现 WARNING 消息的方法是使用mysql_config_editor工具:

mysql_config_editor set --login-path=local --host=localhost --user=username --password

相关内容