Compare commits

..

6 Commits

Author SHA1 Message Date
Josh Patterson
b03b75315d Support additional alt names in web cert 2026-03-04 15:45:03 -05:00
Mike Reeves
179019b136 Merge pull request #15545 from Security-Onion-Solutions/TOoSmOotH-patch-1
Add version 3.0.0 to discussion template
2026-03-02 15:23:48 -05:00
Mike Reeves
ac022acbbe Add version 3.0.0 to discussion template 2026-03-02 15:22:10 -05:00
Mike Reeves
6bfe020c3b Merge pull request #15544 from Security-Onion-Solutions/3/dev-merge-fix
3/dev merge fix
2026-03-02 15:21:12 -05:00
Mike Reeves
55a960bbc5 Merge 2.4/main into 3/dev, resolve VERSION conflict to 3.0.0 2026-03-02 15:17:50 -05:00
Mike Reeves
80f8fdc8d3 Change version from 2.4.201 to UNRELEASED 2026-01-29 12:55:54 -05:00
6 changed files with 27 additions and 6 deletions

View File

@@ -35,6 +35,7 @@ body:
- 2.4.200 - 2.4.200
- 2.4.201 - 2.4.201
- 2.4.210 - 2.4.210
- 3.0.0
- Other (please provide detail below) - Other (please provide detail below)
validations: validations:
required: true required: true

View File

@@ -1 +1 @@
2.4.210 3.0.0

View File

@@ -3,6 +3,7 @@ nginx:
external_suricata: False external_suricata: False
ssl: ssl:
replace_cert: False replace_cert: False
alt_names: []
config: config:
throttle_login_burst: 12 throttle_login_burst: 12
throttle_login_rate: 20 throttle_login_rate: 20

View File

@@ -60,6 +60,8 @@ http {
{%- endif %} {%- endif %}
{%- if GLOBALS.is_manager %} {%- if GLOBALS.is_manager %}
{%- set all_names = [GLOBALS.hostname, GLOBALS.url_base] + NGINXMERGED.ssl.alt_names %}
{%- set full_server_name = all_names | unique | join(' ') %}
server { server {
listen 80 default_server; listen 80 default_server;
@@ -69,7 +71,7 @@ http {
server { server {
listen 8443; listen 8443;
server_name {{ GLOBALS.url_base }}; server_name {{ full_server_name }};
root /opt/socore/html; root /opt/socore/html;
location /artifacts/ { location /artifacts/ {
try_files $uri =206; try_files $uri =206;
@@ -112,7 +114,7 @@ http {
server { server {
listen 7788; listen 7788;
server_name {{ GLOBALS.url_base }}; server_name {{ full_server_name }};
root /nsm/rules; root /nsm/rules;
location / { location / {
allow all; allow all;
@@ -128,7 +130,7 @@ http {
server { server {
listen 7789 ssl; listen 7789 ssl;
http2 on; http2 on;
server_name {{ GLOBALS.url_base }}; server_name {{ full_server_name }};
root /surirules; root /surirules;
add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' https: data: blob: wss:; frame-ancestors 'self'"; add_header Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' https: data: blob: wss:; frame-ancestors 'self'";
@@ -161,7 +163,7 @@ http {
server { server {
listen 443 ssl; listen 443 ssl;
http2 on; http2 on;
server_name {{ GLOBALS.url_base }}; server_name {{ full_server_name }};
root /opt/socore/html; root /opt/socore/html;
index index.html; index index.html;

View File

@@ -30,6 +30,12 @@ nginx:
advanced: True advanced: True
global: True global: True
helpLink: nginx.html helpLink: nginx.html
alt_names:
description: Provide a list of alternate names to allow remote systems the ability to refer to the SOC API as another hostname.
global: True
forcedType: '[]string'
multiline: True
helpLink: nginx.html
config: config:
throttle_login_burst: throttle_login_burst:
description: Number of login requests that can burst without triggering request throttling. Higher values allow more repeated login attempts. Values greater than zero are required in order to provide a usable login flow. description: Number of login requests that can burst without triggering request throttling. Higher values allow more repeated login attempts. Values greater than zero are required in order to provide a usable login flow.

View File

@@ -49,6 +49,17 @@ managerssl_key:
- docker_container: so-nginx - docker_container: so-nginx
# Create a cert for the reverse proxy # Create a cert for the reverse proxy
{% set san_list = [GLOBALS.hostname, GLOBALS.node_ip, GLOBALS.url_base] + NGINXMERGED.ssl.alt_names %}
{% set unique_san_list = san_list | unique %}
{% set managerssl_san_list = [] %}
{% for item in unique_san_list %}
{% if item | ipaddr %}
{% do managerssl_san_list.append("IP:" + item) %}
{% else %}
{% do managerssl_san_list.append("DNS:" + item) %}
{% endif %}
{% endfor %}
{% set managerssl_san = managerssl_san_list | join(', ') %}
managerssl_crt: managerssl_crt:
x509.certificate_managed: x509.certificate_managed:
- name: /etc/pki/managerssl.crt - name: /etc/pki/managerssl.crt
@@ -56,7 +67,7 @@ managerssl_crt:
- signing_policy: managerssl - signing_policy: managerssl
- private_key: /etc/pki/managerssl.key - private_key: /etc/pki/managerssl.key
- CN: {{ GLOBALS.hostname }} - CN: {{ GLOBALS.hostname }}
- subjectAltName: "DNS:{{ GLOBALS.hostname }}, IP:{{ GLOBALS.node_ip }}, DNS:{{ GLOBALS.url_base }}" - subjectAltName: {{ managerssl_san }}
- days_remaining: 7 - days_remaining: 7
- days_valid: 820 - days_valid: 820
- backup: True - backup: True