首页/安全/安全加固速查/Elasticsearch 未授权访问加固
服务与端口收敛50 条

Elasticsearch 未授权访问加固

ES 未授权可读写全部索引,数据泄露与勒索删库事件多发:开启安全模块、绑定内网、禁止公网入口。

安全加固速查安全更新于 2026-10-13

搜索服务暴露的后果

搜索服务保存的往往是全量业务数据,而它的默认安装历史上一度不启用认证:只要能连上地址,就能读取全部索引、删除数据甚至写入内容。因此这类服务的暴露不是普通端口问题,而是一次完整的数据泄露与破坏风险。核查要点是三项:认证是否开启、监听地址是否收敛到内网、边界是否放行了该端口。

基本信息

加固项搜索与日志分析服务安全
适用平台Linux 与 Windows(Elasticsearch 7 及以上)
风险等级高
基线安全模块开启、不对外暴露
端口默认 9200 与 9300

典型使用场景

  • 暴露面核查:确认服务未监听在所有地址上
  • 数据泄露排查:确认未授权访问是否可能已被利用
  • 整改验收:开启认证并确认周边组件仍可正常接入
  • 新集群上线:部署阶段就把认证与网络收敛配置完整
  • 合规测评:数据访问控制条款要求对存储组件做访问限制

核查命令

核查命令
ss -tlnp | grep -E ':9200|:9300'
curl -s http://127.0.0.1:9200/_cat/indices | head      # 无认证可读即为风险
curl -s http://127.0.0.1:9200/_security/_authenticate 2>/dev/null | head -5
grep -E 'network.host|http.port|xpack.security.enabled' /etc/elasticsearch/elasticsearch.yml 2>/dev/null

检查项读法

检查项判读要点整改建议
监听地址是否配置为具体内网地址不要使用通配所有地址的写法
安全模块认证与授权是否启用开启后需为内置账号设置口令
未授权读取无凭据能否列出索引能即视为暴露,按已泄露评估
周边组件数据采集与可视化组件配置需同步配置凭据,否则链路中断
证书配置传输层是否加密跨网段或异地部署时启用
安全模块常因「省事」被关闭:恢复开启后要立即完成账号口令与证书配置,并把关闭期间的数据按已暴露来评估。重启方式建议滚动进行,避免一次性中断全部节点导致集群不可用。
开启认证不是一步操作:收集与可视化组件也要同步配置凭据,否则会出现数据链路中断或部分组件绕过认证的旁路。建议在测试环境先跑通完整链路,再对生产环境滚动执行,并把每一步的验证结果留档。

处置顺序

先封边界:安全组与主机防火墙不允许该端口从公网或非授权网段进入,这一步最快且收益最高;再改监听地址,把服务收敛到内网或回环;然后开启认证并完成口令与证书配置;最后核实周边组件与外部访问方式,确认业务链路正常。顺序颠倒会出现「配置改了一半但业务中断」的尴尬局面。

易错点

  • 只改监听地址不开认证:内网任意主机仍可直接读写全部数据
  • 安全模块开启后不设口令:服务可能无法正常启动,需按初始化流程完成账号配置
  • 忽略周边组件:采集与可视化组件未同步配置凭据会造成链路中断或认证旁路
  • 一次性重启全部节点:集群短暂不可用,应滚动操作并逐节点验证
  • 把服务启动成功当成整改完成:必须用实际查询验证认证确实生效

数据来源与参考

  • Elastic 官方:Security 配置
  • 等保 2.0:数据访问控制

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌