如何仅为应用服务器启用API请求和MongoDB访问?

时间:2016-07-13 13:02:52

标签: amazon-web-services amazon-ec2

我们正在开发一款应用程序,其前端已与后端分离。

我们有2个项目包。第一个项目包充当应用程序的前端,并与第二个包交互,后者通过API充当后端。

前端是用:

构建的
  • 阵营
  • 终极版
  • 异步

后端是使用:

构建的
  • ExpressJS
  • MongoDB的

我们已成功在AWS EC2实例上部署应用程序,但我对我们已应用于程序包的安全入站措施表示怀疑。这两个软件包都部署在同一个ec2实例上。

可以使用https://xxx.xxx.x.xxx:8080访问应用的前端。在安全组中,在入站规则下,我将源添加为自定义TCP规则下端口8080的任何位置。

我为后端API服务器保留的端口3000和为mongodb保留的端口27017做了同样的事情。

我真正想做的只是让端口8080上运行的前端程序包与API服务器通信,而API服务器又与MongoDB进行通信。

除了前端应用服务器之外,我不希望每个人都能访问后端服务器和MongoDB。

请注意,我已使用JWT令牌来保护API。这是为了增加额外的安全层。

如何限制只能访问前端应用服务器?

感谢您的期待。

1 个答案:

答案 0 :(得分:0)

抱歉,您是否直接从前端访问MongoDB?我希望不...

因此,您应该在服务器(firewalldiptables)上配置防火墙,以阻止Mongo和所有其他内部端口从Web访问。