允许从代码发送SSH访问 - 打开防火墙到EC2东海岸IP

时间:2015-10-19 11:09:08

标签: amazon-ec2 capistrano continuous-deployment codeship

我正在尝试通过使用Capistrano样式脚本从Codeship实现自动部署,以允许它在我的测试通过后通过SSH连接到我的服务器并从我的git存储库中取出。问题是对服务器的SSH访问受到IP地址的限制,Codeship建议您将防火墙打开到AWS用于其东海岸EC2实例的IP地址范围:https://codeship.com/documentation/faq/enabling-access-to-servers/

但是,我不确定这样做是因为有大量的IP地址:https://ip-ranges.amazonaws.com/ip-ranges.json

我担心的是,除了这是一个繁琐的过程(东海岸EC2有43个IP地址范围),这不会破坏限制IP地址的目的,因为如果潜在的攻击者是这样的话会使这种预防措施无效使用东海岸EC2实例?

1 个答案:

答案 0 :(得分:0)

假设您的实例与Codeship(us-east-1)位于同一区域内,那么您最好的办法是设置EC2安全组as described here

我很欣赏每个人都不是这种情况,所以假设你使用的是iptables,那么我建议采用与CloudFlare's documentation中描述的方法类似的方法,并设置一个通过crontab运行的bash脚本如果它们发生变化,请保持当前的ip范围是最新的。

关于安全性,因为您打开了整个AWS区域的端口,是的,攻击面增加了。听起来你已经禁用了密码验证,所以不太可能进行暴力攻击,但是一个合理配置的fail2ban监狱应该可以处理大部分恶意攻击。