风险使用Forever + Sudo来保持节点应用程序运行?

使用forever.js保持node.js应用程序作为sudo运行是否有风险? 那里有什么潜在的问题? 如果这是不明智的,那么更好的select是什么?

通过sudo运行应用程序确实是非常危险的。 您的应用程序将拥有完全的root用户权限,这意味着可能发生的攻击次数和可能发生的攻击的严重程度要明显高于将应用程序作为此应用程序的专用用户运行。 我强烈build议遵循这里的行业最佳实践,并以普通的非root用户身份运行您的应用程序。

至于forever这个类别的软件通常被称为“过程监督”,并有许多非风险的选项可用。 我个人使用内置在我的部署操作系统,这是当前upstart或系统的过程监督系统,但我认为forever是几个替代品之一是完全正确的。 我build议“ stream程监督:解决问题”作为对过程监督的一个很好的概述,并有一些很好的见解。