没有密码但密钥auth安全的Mysql服务器?

时间:2016-09-21 13:19:40

标签: mysql ssh centos

以下情况:我有点困惑。在CentOS 7上运行MariaDB,在使用SSH连接时遇到了一些麻烦。注意到我为我的数据库用户设置了密码,我试图用私钥连接。 我删除了密码([...] PASSWORD('')),一切正常。

Mysql Workbench正在连接:

  • SSH主机名:服务器 - 公共IP:22
  • SSH用户名:Dbuser
  • SSH密钥文件:/path/to/id_rsa.ppk
  • Mysql主机名:127.0.0.1
  • Mysql Server端口:3306

如果我删除密钥文件并尝试连接它会给我一个错误:验证类型错误。这正是我想要的。

我的网站位于服务器本身,我使用的是PHP:

$mysqli->real_connect("127.0.0.1","Dbuser", "", "Dbname"); 

连接。其中也很有效。但是因为我没有用

设置密钥文件
$mysqli->options(MYSQLI_SERVER_PUBLIC_KEY, '');

它让我问是否每个人都可以通过SSH隧道连接到服务器。或者只能从服务器本身连接? (不是模拟那个的SSH隧道吗?)

DBuser的Mysql权限是:

GRANT ALL PRIVILEGES ON *.* TO 'DBuser'@'127.0.0.1'

那么,它安全吗?

/ E:小小的凹凸

1 个答案:

答案 0 :(得分:0)

您的MySQL用户DBuser仅被ip 127.0.0.1连接, 这样您的MySQL仅允许将您的MySQL数据库服务器放置在该位置。