如何仅使用Apache2为实验室Splunk Free实现身份验证
Splunk Free 对接Apache2身份认证配置方案
核心逻辑为将Splunk调整为仅本地环回地址监听,由Apache作为反向代理对外提供访问入口,同时叠加身份认证能力,从根源避免端口冲突问题。
1. 调整Splunk监听配置
- 编辑Splunk web配置文件,默认路径为
$SPLUNK_HOME/etc/system/local/web.conf - 新增/修改如下配置项,仅允许本地访问Splunk服务:
[settings] server.socket_host = 127.0.0.1 # 若需要保留对外8000端口给Apache使用,可添加下方配置将Splunk本地端口改为8001 # server.socket_port = 8001
- 重启Splunk服务生效:
systemctl restart splunk
2. 配置Apache基础环境
- 启用所需功能模块:
a2enmod proxy proxy_http auth_basic authn_file systemctl restart apache2
- 编辑
/etc/apache2/ports.conf,添加对外服务端口监听,若使用8000作为对外端口则添加:Listen 8000 - 创建基础认证密码文件,按提示输入对应用户密码:
htpasswd -c /etc/apache2/.splunk-auth 自定义登录用户名
3. 配置反向代理与认证规则
- 新增站点配置文件
/etc/apache2/sites-available/splunk-proxy.conf,内容参考如下:
<VirtualHost *:8000> # 无域名可直接填写服务器内网/公网IP ServerName splunk.test.lab ProxyRequests Off # 若之前修改了Splunk本地端口为8001,此处改为http://127.0.0.1:8001/ ProxyPass / http://127.0.0.1:8000/ ProxyPassReverse / http://127.0.0.1:8000/ <Location /> AuthType Basic AuthName "Splunk 授权访问" AuthUserFile /etc/apache2/.splunk-auth Require valid-user </Location> </VirtualHost>
4. 生效配置
- 启用站点配置:
a2ensite splunk-proxy.conf - 校验配置合法性:
apache2ctl configtest - 重启Apache服务生效:
systemctl restart apache2
后续对接LDAP统一身份认证时,仅需替换<Location>段内的基础认证配置为mod_authnz_ldap相关规则即可。
内容的提问来源于stack exchange,提问作者Jose Maria Castillo Hidalgo
相关产品推荐
相关产品推荐

