使用SSH私钥进行MySQL root登录?

时间:2012-05-09 23:44:09

标签: mysql security authentication root ssh-agent

假设Mysql -dbs和管理员有一个不好的习惯来忘记密码(或者偏执,想要更多的创造性身份验证,而不仅仅是密码)。是否可以以Ssh-agent存储私钥的方式访问Mysql -root shell,然后我可以通过"mysql -u root"登录(无需输入密码或私钥和密码的组合) )?

1 个答案:

答案 0 :(得分:8)

您当然可以使用正常的SSH密钥身份验证登录到您的shell帐户,然后使用包含密码的~/.my.cnf文件。这将由mysql命令行客户端默认使用。

其内容应为:

[client]
user=the_user_name
password=the_password

请注意,无论谁能阅读此文件都可以使用这些凭据。保护它,以便只有主人才能读取它(如果你离开键盘就锁定你的终端)。


如果您想要基于密钥的直接身份验证,还可以使用SSL client-certificate authentication。您可以创建自己的小型CA并使用这些客户端证书进行自我发布。如果您需要直接远程访问,许多工具都支持此功能。