如何使用公共IP(0.0.0.0)保护与Google数据库的连接?

时间:2019-06-27 12:15:29

标签: python mysql google-cloud-platform

我已经创建了使用公共IP与google数据库连接的软件,但是随着网络的变化,系统的公共IP也随之更改。因此,为了简便起见,我使用了IP 0.0.0.0,但它并不安全,但是我不知道其他任何选项,因为我是新手。那么有什么办法可以保护它。

1 个答案:

答案 0 :(得分:1)

有几种方法可以设置到Cloud SQL实例的安全连接。

  1. 使用SSL证书连接到实例并启用“仅允许SSL连接”。
  2. 使用专用IP。我了解您创建的应用程序不是托管在GCP中,而是托管在其他地方,因此,一个不错的选择是:

    2.1。在您的CSQL实例中启用私有IP功能

    2.2。在您的项目(我们将该项目称为“项目A”)和您的CSQL所在的租户项目之间刚创建的对等中启用“导入custom routes”(此项目的名称将类似于“ speckle-umbrella- [ pg] -xx“ JFYI)。请记住,此功能是beta版。

    2.3。请我们的技术支持团队在刚刚创建的对等节点上启用“导出自定义路由”,但这次是在我们这方面(在已经提到的“ speckle-umbrella- [pg] -xx”项目中)。如果没有支持包,则可以在此link之后打开一个私人问题跟踪程序,指定我的姓名,您的项目ID和要启用此功能的CSQL实例。不用担心,您将在此处打开的问题跟踪器仅对Google员工和您可见。请记住,在那里打开问题跟踪器可能需要多达90天的时间才能得到答案,但我会一直在监视此帖子。

    2.4。然后,假设我的应用程序未在GCP中运行,则必须设置VPN tunnelCloud interconnect,才能将本地网络连接到Google Cloud。

此后,您将能够以安全的方式从应用程序连接到CSQL实例。

  1. 如果您要使用专用IP并且您的应用程序托管在GCP中,并且您的应用程序和CSQL都位于同一区域并且使用相同的VPC,则可以直接连接到您的CSQL实例(如果您使用的是无服务器选项例如云功能或Google App Engine标准,您可以使用Serverless VPC access)。但是,如果您的应用托管在GCP中,但在其他项目中,则可以按照步骤2.1、2.2和2.3进行操作,然后在应用所在的项目之间创建VPC对等关系(我们将此项目称为“项目B”)以及与您的CSQL实例相关联的项目(“ Project A”)。对于“项目A”,必须在此新的VPC对等中启用“导出自定义路由”,对于“项目B”,则必须启用“导入自定义路由”。这样做,您的应用程序(托管在“项目B”中)之间的连接将从项目B到项目A,再到项目A到speckle-umbrella- [pg] -xx,直到到达您的Cloud SQL实例。

您必须处理自定义路由的原因是因为前一段时间,VPC对等无法传播路由,但是现在完全可以做到这一点。