【问题标题】:how to configure security group in amazon EC2如何在亚马逊 EC2 中配置安全组
【发布时间】:2015-05-09 22:20:10
【问题描述】:

我不熟悉在亚马逊网络服务中部署的 Aws 安全性。 当我使用某些 IP 地址限制安全组时,我的应用程序运行速度非常慢或者它也可能无法运行,这就是我尝试调用部署在 aws 中的 web 服务时连接超时的原因。当我在安全组中打开 IP 地址限制时,它工作正常。

如何使用安全组配置我的 AWS。这样我的应用程序只能被一些受限网络访问。 请帮我穿上这个。

以下是我的安全组详细信息

INBOUND   
Type     Protocol       Port range      Source       
MYSQL       TCP             3306            X.X.X.X/X   
SSH         TCP             22              X.X.X.X/X    
HTTP        TCP             80              X.X.X.X/X

OUBOUND  
Type    Protocol        Port range      Source  
MYSQL       TCP             3306            0.0.0.0/0  
SSH         TCP             22              0.0.0.0/0  
HTTP        TCP             80              0.0.0.0/0

我在我的 Web 应用程序中使用休眠进行数据库连接。但是每次我与上述安全组连接超时。但如果我删除 IP 地址限制,它就可以正常工作。 注意:数据库连接在 mysql 工作台上工作正常

<property name="hibernate.connection.url">jdbc:mysql://schemaname.amazonDBInsatnce:3306/test</property>

【问题讨论】:

    标签: security amazon-web-services amazon-ec2 rightscale


    【解决方案1】:

    安全组不会“减慢”对 Amazon EC2 实例的访问。它们用于确定哪些端口对给定的 IP 地址范围开放。要么允许流量通过,要么不允许通过。

    可以为入站出站流量定义安全组。默认情况下,拒绝所有入站流量,允许所有出站流量。

    您的应用程序可能正在尝试访问某些外部服务并且超时,从而导致延迟。允许所有出站流量通常是可以接受的,因此请先尝试一下,看看您的应用程序是否性能更好。

    此外,请检查您的应用程序正在生成的日志文件,以查看是否生成了任何错误,这将为您提供有关可能发生的情况的提示。

    【讨论】:

    • 请检查已编辑的问题,如果有任何帮助,请告诉我。
    • 您的数据库是否与网络服务器位于同一实例上?如果是这样,您不需要为它打开任何端口,因为该流量不会进入或离开实例。出站设置用于离开服务器的流量——您可能不需要配置它们。事实上,尝试打开 Outbound to All Traffic 并查看这是否可以避免超时——这可能是您的实例上的服务尝试访问 Internet 但失败了。此外,您不需要为入站流量打开 3306 - 这只会用于另一台机器与您的实例进行内部通信。
    • 数据库实例和webserver在同一个。问题解决了。我没有提供 IP 地址,而是提供了安全组 ID,它运行良好。我不确定可能是什么原因。我正在探索自己的原因,一旦我得到我的发现,我会发布。
    • 啊!如果您的安全组引用公共 IP 地址,并且如果您的软件通过该公共 IP 地址指向数据库,则流量有效地退出实例,从互联网的“边缘”反弹,然后返回。如果您的数据库与网络服务器位于同一台机器上,那么网络服务器最好使用“localhost”作为机器名称。这将使流量完全保持在实例内,并且无需在安全组中提及数据库。
    猜你喜欢
    • 1970-01-01
    • 2017-06-02
    • 2015-03-04
    • 2013-01-03
    • 1970-01-01
    • 1970-01-01
    • 2013-03-03
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多