Compare commits

..

1 Commits

Author SHA1 Message Date
Jason Ertel
1fcd8a7c1a API errors will no longer redirect 2026-03-13 16:53:38 -04:00
11 changed files with 1087 additions and 288 deletions

View File

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

View File

@@ -1,177 +0,0 @@
body:
- type: markdown
attributes:
value: |
If your organization needs more immediate, enterprise grade professional support, with one-on-one virtual meetings and screensharing, contact us via our website: https://securityonion.com/support
- type: dropdown
attributes:
label: Version
description: Which version of Security Onion are you asking about?
options:
-
- 3.0.0
- Other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Installation Method
description: How did you install Security Onion?
options:
-
- Security Onion ISO image
- Cloud image (Amazon, Azure, Google)
- Network installation on Oracle 9 (unsupported)
- Other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Description
description: >
Is this discussion about installation, configuration, upgrading, or other?
options:
-
- installation
- configuration
- upgrading
- other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Installation Type
description: >
When you installed, did you choose Import, Eval, Standalone, Distributed, or something else?
options:
-
- Import
- Eval
- Standalone
- Distributed
- other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Location
description: >
Is this deployment in the cloud, on-prem with Internet access, or airgap?
options:
-
- cloud
- on-prem with Internet access
- airgap
- other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Hardware Specs
description: >
Does your hardware meet or exceed the minimum requirements for your installation type as shown at https://securityonion.net/docs/hardware?
options:
-
- Meets minimum requirements
- Exceeds minimum requirements
- Does not meet minimum requirements
- other (please provide detail below)
validations:
required: true
- type: input
attributes:
label: CPU
description: How many CPU cores do you have?
validations:
required: true
- type: input
attributes:
label: RAM
description: How much RAM do you have?
validations:
required: true
- type: input
attributes:
label: Storage for /
description: How much storage do you have for the / partition?
validations:
required: true
- type: input
attributes:
label: Storage for /nsm
description: How much storage do you have for the /nsm partition?
validations:
required: true
- type: dropdown
attributes:
label: Network Traffic Collection
description: >
Are you collecting network traffic from a tap or span port?
options:
-
- tap
- span port
- other (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Network Traffic Speeds
description: >
How much network traffic are you monitoring?
options:
-
- Less than 1Gbps
- 1Gbps to 10Gbps
- more than 10Gbps
validations:
required: true
- type: dropdown
attributes:
label: Status
description: >
Does SOC Grid show all services on all nodes as running OK?
options:
-
- Yes, all services on all nodes are running OK
- No, one or more services are failed (please provide detail below)
validations:
required: true
- type: dropdown
attributes:
label: Salt Status
description: >
Do you get any failures when you run "sudo salt-call state.highstate"?
options:
-
- Yes, there are salt failures (please provide detail below)
- No, there are no failures
validations:
required: true
- type: dropdown
attributes:
label: Logs
description: >
Are there any additional clues in /opt/so/log/?
options:
-
- Yes, there are additional clues in /opt/so/log/ (please provide detail below)
- No, there are no additional clues
validations:
required: true
- type: textarea
attributes:
label: Detail
description: Please read our discussion guidelines at https://github.com/Security-Onion-Solutions/securityonion/discussions/1720 and then provide detailed information to help us help you.
placeholder: |-
STOP! Before typing, please read our discussion guidelines at https://github.com/Security-Onion-Solutions/securityonion/discussions/1720 in their entirety!
If your organization needs more immediate, enterprise grade professional support, with one-on-one virtual meetings and screensharing, contact us via our website: https://securityonion.com/support
validations:
required: true
- type: checkboxes
attributes:
label: Guidelines
options:
- label: I have read the discussion guidelines at https://github.com/Security-Onion-Solutions/securityonion/discussions/1720 and assert that I have followed the guidelines.
required: true

View File

@@ -8,12 +8,5 @@
"base": "172.17.0.0/24",
"size": 24
}
],
"default-ulimits": {
"nofile": {
"Name": "nofile",
"Soft": 1048576,
"Hard": 1048576
}
}
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -387,15 +387,13 @@ http {
error_page 429 = @error429;
location @error401 {
if ($request_uri ~* (^/connect/.*|^/oauth2/.*)) {
if ($request_uri ~* (^/api/.*|^/connect/.*|^/oauth2/.*)) {
return 401;
}
if ($request_uri ~* ^/(?!(^/api/.*))) {
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
}
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
if ($request_uri ~* ^/(?!(api/|login|auth|oauth2|$))) {
if ($request_uri ~* ^/(?!(login|auth|oauth2|$))) {
add_header Set-Cookie "AUTH_REDIRECT=$request_uri;Path=/;Max-Age=14400";
}
return 302 /auth/self-service/login/browser;

View File

@@ -1,59 +0,0 @@
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
# https://securityonion.net/license; you may not use this file except in compliance with the
# Elastic License 2.0.
{% from 'vars/globals.map.jinja' import GLOBALS %}
{% if GLOBALS.is_sensor %}
delete_so-steno_so-status.conf:
file.line:
- name: /opt/so/conf/so-status/so-status.conf
- mode: delete
- match: so-steno
remove_stenographer_user:
user.absent:
- name: stenographer
- force: True
remove_stenographer_log_dir:
file.absent:
- name: /opt/so/log/stenographer
remove_stenoloss_script:
file.absent:
- name: /opt/so/conf/telegraf/scripts/stenoloss.sh
remove_steno_conf_dir:
file.absent:
- name: /opt/so/conf/steno
remove_so_pcap_export:
file.absent:
- name: /usr/sbin/so-pcap-export
remove_so_pcap_restart:
file.absent:
- name: /usr/sbin/so-pcap-restart
remove_so_pcap_start:
file.absent:
- name: /usr/sbin/so-pcap-start
remove_so_pcap_stop:
file.absent:
- name: /usr/sbin/so-pcap-stop
so-steno:
docker_container.absent:
- force: True
{% else %}
{{sls}}.non_sensor_node:
test.show_notification:
- text: "Stenographer cleanup not applicable on non-sensor nodes."
{% endif %}

View File

@@ -29,11 +29,7 @@ sool9_{{host}}:
hypervisor_host: {{host ~ "_" ~ role}}
preflight_cmds:
- |
{%- set hostnames = [MANAGERHOSTNAME] %}
{%- if not (URL_BASE | ipaddr) and URL_BASE != MANAGERHOSTNAME %}
{%- do hostnames.append(URL_BASE) %}
{%- endif %}
tee -a /etc/hosts <<< "{{ MANAGERIP }} {{ hostnames | join(' ') }}"
tee -a /etc/hosts <<< "{{ MANAGERIP }} {{ MANAGERHOSTNAME }}"
- |
timeout 600 bash -c 'trap "echo \"Preflight Check: Failed to establish repo connectivity\"; exit 1" TERM; \
while ! dnf makecache --repoid=securityonion >/dev/null 2>&1; do echo "Preflight Check: Waiting for repo connectivity..."; \

View File

@@ -14,7 +14,6 @@
{% if 'vrt' in salt['pillar.get']('features', []) %}
{% set HYPERVISORS = salt['pillar.get']('hypervisor:nodes', {} ) %}
{% from 'salt/map.jinja' import SALTVERSION %}
{% from 'vars/globals.map.jinja' import GLOBALS %}
{% if HYPERVISORS %}
cloud_providers:
@@ -35,7 +34,6 @@ cloud_profiles:
MANAGERHOSTNAME: {{ grains.host }}
MANAGERIP: {{ pillar.host.mainip }}
SALTVERSION: {{ SALTVERSION }}
URL_BASE: {{ GLOBALS.url_base }}
- template: jinja
- makedirs: True
{% else %}

View File

@@ -805,6 +805,11 @@ def process_vm_creation(hypervisor_path: str, vm_config: dict) -> None:
mark_invalid_hardware(hypervisor_path, vm_name, vm_config,
{'nsm_size': 'Invalid nsm_size: must be positive integer'})
return
if size > 10000: # 10TB reasonable maximum
log.error("VM: %s - nsm_size %dGB exceeds reasonable maximum (10000GB)", vm_name, size)
mark_invalid_hardware(hypervisor_path, vm_name, vm_config,
{'nsm_size': f'Invalid nsm_size: {size}GB exceeds maximum (10000GB)'})
return
log.debug("VM: %s - nsm_size validated: %dGB", vm_name, size)
except (ValueError, TypeError) as e:
log.error("VM: %s - nsm_size must be a valid integer, got: %s", vm_name, vm_config.get('nsm_size'))

View File

@@ -31,9 +31,8 @@ mkdir -p /tmp/nids-testing/output
chown suricata:socore /tmp/nids-testing/output
mkdir -p /tmp/nids-testing/rules
cp /opt/so/rules/suricata/all-rulesets.rules /tmp/nids-testing/rules/all-rulesets.rules
cat $TESTRULE >> /tmp/nids-testing/rules/all-rulesets.rules
cp /opt/so/conf/suricata/rules/all.rules /tmp/nids-testing/rules/all.rules
cat $TESTRULE >> /tmp/nids-testing/rules/all.rules
echo "==== Begin Suricata Output ==="

View File

@@ -85,7 +85,6 @@ base:
- elastalert
- utility
- elasticfleet
- pcap.cleanup
'*_standalone and G@saltversion:{{saltversion}} and not I@node_data:False':
- match: compound
@@ -117,7 +116,6 @@ base:
- elasticfleet
- stig
- kafka
- pcap.cleanup
'*_manager or *_managerhype and G@saltversion:{{saltversion}} and not I@node_data:False':
- match: compound
@@ -199,7 +197,6 @@ base:
- suricata
- zeek
- elasticfleet
- pcap.cleanup
'*_searchnode and G@saltversion:{{saltversion}}':
- match: compound
@@ -226,7 +223,6 @@ base:
- strelka
- elasticfleet.install_agent_grid
- stig
- pcap.cleanup
'*_heavynode and G@saltversion:{{saltversion}}':
- match: compound
@@ -244,7 +240,6 @@ base:
- zeek
- elasticfleet.install_agent_grid
- elasticagent
- pcap.cleanup
'*_receiver and G@saltversion:{{saltversion}}':
- match: compound