配置AWS安全组 - 在EC2实例中运行简单脚本的设置,阅读RDS

时间:2016-03-30 22:41:58

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

这在文档的某个地方无疑是有的,我不是开发人员,阅读AWS文档就像是从消防水管中喝水。我希望有人能指出我正确的方向。

对于我的项目,我想:

  • 在EC2实例上运行python脚本,读取和写入数据到RDS数据库
  • 使用phpMyAdmin管理数据库
  • 使用SSH远程登录实例

到目前为止,我已经设置了:

  • EC2微型实例
  • MySQL RDS实例
  • 安全组(例如sg-1234566)

我的问题:如何配置我创建的安全组,以便我能够执行这些操作(而不只是将实例和数据库暴露给“所有流量”)

安全组的当前设置(基于我已经理解的教程)是:

入站(更改了敏感值):

Type         Protocol  Port-Range Source
All TCP      TCP       0-65535    sg-1234566 (launch-wizard)
SSH          TCP       22         100.0.0.1/31
All UDP      UDP       0-65535    sg-1234566 (launch-wizard)
All ICMP     All       N/A        sg-1234566 (launch-wizard)

外向

Type         Protocol  Port-Range Source
All traffic  All       All        0.0.0.0/0

SSH工作,我运行了命令在实例上运行phpMyAdmin,当我导航到100.0.0.1/phpmyadmin(不是实际的公共IP地址)时,连接只是超时了。很高兴通过在线教程工作,如果有人可以建议一个我可能错过的好。

1 个答案:

答案 0 :(得分:0)

对于任何人未来的参考,我设法在AWS forums上获得了有用的回复,我只需要确保我的EC2实例和我的RDS数据库都在同一个安全组中并修改入站规则以接受HTTP:

听力端口:

MySQL -> 3306/TCP
SSH -> 22/TCP
phpMyAdmin -> 80/TCP

来源:

100.0.0.1/31 (this is where the client program is located)

以下是我认为您的安全组应该是这样的

入站(敏感值已更改):

Type         Protocol  Port-Range Source
SSH          TCP       22         100.0.0.1/31
HTTP         TCP       80         100.0.0.1/31
MySQL/Aurora      TCP       3306    sg-1234566 (launch-wizard) ---> This one is included in below rule, will leave it in case you want to remove the below rule.
All TCP      TCP       0-65535    sg-1234566 (launch-wizard)
All UDP      UDP       0-65535    sg-1234566 (launch-wizard)
All ICMP     All       N/A        sg-1234566 (launch-wizard)

出站:

Type         Protocol  Port-Range Source
All traffic  All       All        0.0.0.0/0