我使用 mochiweb 和 jiffy 在 Erlang 中编写了一个 Web 服务,现在面临着将其部署到生产环境的任务。由于它将向公众开放,我想知道 Erlang 到底有多安全,因为这似乎或多或少从未被谈论过。
Erlang 本身是一种 VM 语言,因此应该(希望)相当安全,但许多扩展(如 jiffy)都有用 C 编写的 NIF,因此如果编写不仔细且测试不彻底,更容易出现缓冲区溢出等问题。
那么,基本上,我应该如何保护 Ubuntu 上的 Erlang 服务器?受限用户?AppArmor?还是这有点过头了?
答案1
我敢打赌,Erlang 本身的安全性比用它编写的代码高出几个数量级。就安全性而言,它与其他任何东西都没有什么不同——你将权限限制在必要的最低限度,并对其进行严格监控。确切的实施细节取决于你的判断力、经验和偏执。