gpt4 book ai didi

mysql - 使用 SSL 443 而不是 3306 访问 rds MySql 数据库

转载 作者:太空宇宙 更新时间:2023-11-03 12:51:22 28 4
gpt4 key购买 nike

我正在尝试仅通过 443 而不是 3306 访问我的 rds mySql 数据库。

在工作台上启用 ssl 选项并输入 mysql-ssl-ca-cert.pem 的路径后,我尝试在我的安全组上禁用 tcp 3306 以确保它使用 443 连接,但它没有。

我可以使用下面的 mysql 命令行连接,但是一旦我在安全组上禁用 tcp 443,它又会失败mysql -h myinstance.c9akciq32.rds-us-east-1.amazonaws.com --ssl_ca=rds-ssl-ca-cert.pem

亚马逊文档指出:Amazon RDS 中的 SSL 支持严格用于加密客户端和数据库实例之间的连接;不应依赖它来验证服务器。

这是否意味着我只能通过 3306 而不是 443 向 mysql 数据库进行身份验证,但数据将在传输过程中加密?

我的问题是我的客户不会在他们的防火墙上打开 3306 出站,但 443 当然是打开的。任何帮助表示赞赏。

最佳答案

您混淆了 SSL 和 HTTPS。端口 443 是 default port for HTTPS connections . MySQL 改为使用 3306(并且可以在此端口或任何其他端口上使用 SSL 来加密连接)。因此,为 MySQL 连接设置 SSL 加密不会影响使用的端口。

为了使用与标准端口不同的端口,您必须重新配置 MySQL 服务器,这对于 RDS 实例可能无法做到。

可以使用隧道来避开默认端口。在这种情况下,您必须打开一个 SSH 隧道(MySQL Workbench 可以为您执行此操作,或者您可以使用外部程序,例如 Windows 上的 putty 或 *nix 等操作系统上的 ssh)。有了那个隧道(默认情况下使用端口 22,但如果这对你很重要,可以为任何其他端口配置),你可以将访问从本地端口(这里是 3306,但可以是任何端口)转发到远程端口(可以也可以)。但是,这需要远程端有 SSH 服务器。

关于mysql - 使用 SSL 443 而不是 3306 访问 rds MySql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23376809/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com