跳至主内容

安全最佳实践:epmd

·阅读 1 分钟

安全最佳实践:epmd

Erlang 端口映射器守护进程 (epmd) 是一个内置组件,可帮助 Erlang 应用程序(包括 RabbitMQ)相互发现其分发端口。与用于主机名解析的 DNS 一起,epmd 是 RabbitMQ 节点进行集群、节点间通信和 CLI 工具连接依赖的基础架构的一部分。

虽然 epmd 的范围非常有限,但其暴露在公共互联网上通常意味着 Erlang 分发端口也暴露在外。这造成了潜在的安全风险:如果攻击者发现这些分发端口,他们只需要一个秘密值就可以对节点(或集群)执行 CLI 命令。

最近的扫描显示,有超过 85,000 个公共可访问的 epmd 实例,其中大约一半与 RabbitMQ 服务器相关。

幸运的是,通常只需要限制对端口范围的网络访问即可缓解此风险。epmd 和节点间通信也可以限制在本地网络接口,特别是用于运行测试的单节点集群。

阅读 Erlang 生态基金会博客上的完整文章。

© . This site is unofficial and not affiliated with VMware.