【发布时间】:2019-04-20 22:55:28
【问题描述】:
我正在使用命令在我的本地机器上运行节点应用程序
node app.js 来自应用程序的目录。
是否也可以在不打包应用程序的情况下在 AWS 实例上执行相同的操作?就像我在本地机器上一样运行它,然后向公众开放端口。
它有什么安全问题吗?
【问题讨论】:
标签: node.js amazon-web-services meteor amazon-ec2
我正在使用命令在我的本地机器上运行节点应用程序
node app.js 来自应用程序的目录。
是否也可以在不打包应用程序的情况下在 AWS 实例上执行相同的操作?就像我在本地机器上一样运行它,然后向公众开放端口。
它有什么安全问题吗?
【问题讨论】:
标签: node.js amazon-web-services meteor amazon-ec2
你问是否可以部署节点应用程序(在 AWS 实例上),我猜是,
npm install node app.js
是的,没关系。但这不是最佳实践。会出什么问题?
https 服务器构建您的节点应用程序并运行它。但是你让节点做加密工作。如果你要投入生产,你最好:
nginx 反向代理来处理 https 并将请求转发到节点。这种部署应用程序的方式是否存在任何安全问题?
它肯定存在您的 app.js 已经包含的任何安全问题。
您可能正在使用自己的用户名和开发权限(例如,访问 git)运行 shell。公共网络上部署的应用程序应该从一个目录结构中运行,该目录结构只包含使其工作所需的内容,并且有一个专门用于该目的的用户和组。在 Linux 服务器上,您想要的用户通常是 www-data。
【讨论】: