尝试在 ALB 后面的 AWS 上运行 Security Onion(ALB 后面的 nginx)

尝试在 ALB 后面的 AWS 上运行 Security Onion(ALB 后面的 nginx)

我有一个用于内部服务的通配符证书。我想在 ALB 后面运行 Security Onion,这样我就可以使用存储在证书管理器中的单个证书获得有效的 SSL。(将其存储在那里更安全,也更易于维护和可靠性)

问题似乎出在 Security Onion 配置文件 /opt/so/saltstack/local/pillar/global.sls

url_base: # IP or FQDN

是否可以配置为通过 IP 地址监听(此时登录重定向指向 IP,且已验证的 SSL 中断)或通过 FQDN 监听(此时它不会通过 IP 回答请求,且目标组健康检查失败)。

我无意中通过从 IP 切换到 FQDN 让它工作了。但我怀疑它是在 2 分钟的宽限期内工作的,当时健康检查仍为绿色,但服务器是通过 FQDN 工作的。

在幕后,Security Onion 使用 nginx 执行主机到 docker 路由。nginx 配置文件位于此处 /opt/so/saltstack/default/salt/nginx/etc/nginx.conf

以前有人做过这个吗?

答案1

我可以通过在 nginx 配置中插入一个简单的健康检查来实现这一点。

server {
              listen 443 ssl http2;
              server_name 192.168.1.something;
              location /health {
                  access_log off;
                  add_header 'Content-Type' 'text/plain';
                  return 200 "healthy\n";
             }
         }

这种方法有两个局限性。

  1. 我在配置中对 IP 地址进行了硬编码,如果我的主机移动或从快照重新实例化,这将会中断。(可以通过让 nginx 推断本地 IP 来解决这个问题吗?)
  2. 健康检查验证 nginx 是否正在运行,但不能验证其背后的 SO 是否健康。

相关内容