Merge pull request #322 from Security-Onion-Solutions/hotfix/so-status

hotfix/so-status
This commit is contained in:
William Wernert
2020-02-09 22:46:43 -05:00
committed by GitHub
2 changed files with 42 additions and 42 deletions

View File

@@ -17,7 +17,7 @@ eval:
- so-idstools
- so-auth-api
- so-auth-ui
{%- if OSQUERY != 0 %}
{%- if OSQUERY != '0' %}
- so-mysql
- so-fleet
- so-redis
@@ -29,24 +29,24 @@ eval:
- so-suricata
- so-zeek
- so-curator
- so-elasalert
{%- if WAZUH != 0 %}
- so-elastalert
{%- if WAZUH != '0' %}
- so-wazuh
{%- endif %}
- so-soctopus
{%- if THEHIVE != 0 %}
{%- if THEHIVE != '0' %}
- so-thehive
- so-thehive-es
- so-cortex
{%- endif %}
{%- if PLAYBOOK != 0 %}
{%- if PLAYBOOK != '0' %}
- so-playbook
- so-navigator
{%- endif %}
{%- if FREQSERVER != 0 %}
{%- if FREQSERVER != '0' %}
- so-freqserver
{%- endif %}
{%- if DOMAINSTATS != 0 %}
{%- if DOMAINSTATS != '0' %}
- so-domainstats
{%- endif %}
heavy_node:
@@ -104,31 +104,31 @@ master_search:
- so-elasticsearch
- so-curator
- so-kibana
- so-elasalert
- so-elastalert
- so-filebeat
- so-soctopus
{%- if OSQUERY != 0 %}
{%- if OSQUERY != '0' %}
- so-mysql
- so-fleet
- so-redis
{%- endif %}
{%- if WAZUH != 0 %}
{%- if WAZUH != '0' %}
- so-wazuh
{%- endif %}
- so-soctopus
{%- if THEHIVE != 0 %}
{%- if THEHIVE != '0' %}
- so-thehive
- so-thehive-es
- so-cortex
{%- endif %}
{%- if PLAYBOOK != 0 %}
{%- if PLAYBOOK != '0' %}
- so-playbook
- so-navigator
{%- endif %}
{%- if FREQSERVER != 0 %}
{%- if FREQSERVER != '0' %}
- so-freqserver
{%- endif %}
{%- if DOMAINSTATS != 0 %}
{%- if DOMAINSTATS != '0' %}
- so-domainstats
{%- endif %}
master:
@@ -147,30 +147,30 @@ master:
- so-elasticsearch
- so-logstash
- so-kibana
- so-elasalert
- so-elastalert
- so-filebeat
{%- if OSQUERY != 0 %}
{%- if OSQUERY != '0' %}
- so-mysql
- so-fleet
- so-redis
{%- endif %}
{%- if WAZUH != 0 %}
{%- if WAZUH != '0' %}
- so-wazuh
{%- endif %}
- so-soctopus
{%- if THEHIVE != 0 %}
{%- if THEHIVE != '0' %}
- so-thehive
- so-thehive-es
- so-cortex
{%- endif %}
{%- if PLAYBOOK != 0 %}
{%- if PLAYBOOK != '0' %}
- so-playbook
- so-navigator
{%- endif %}
{%- if FREQSERVER != 0 %}
{%- if FREQSERVER != '0' %}
- so-freqserver
{%- endif %}
{%- if DOMAINSTATS != 0 %}
{%- if DOMAINSTATS != '0' %}
- so-domainstats
{%- endif %}
parser_node:
@@ -190,7 +190,7 @@ search_node:
- so-elasticsearch
- so-curator
- so-filebeat
{%- if WAZUH != 0 %}
{%- if WAZUH != '0' %}
- so-wazuh
{%- endif %}
sensor:
@@ -213,3 +213,4 @@ warm_node:
- so-influxdb
- so-grafana
- so-elasticsearch

View File

@@ -42,7 +42,7 @@
{%- set pillar_name = pillar_val ~ pillar_suffix -%}
{%- set container_list = salt['pillar.get'](pillar_name) %}
if ! [ $(id -u)=0 ]; then
if ! [ "$(id -u)" = 0 ]; then
echo "This command must be run as root"
exit 1
fi
@@ -52,8 +52,8 @@ ERROR_STRING="ERROR"
SUCCESS_STRING="OK"
PENDING_STRING="PENDING"
MISSING_STRING='MISSING'
declare -a BAD_STATUSES=("removing", "paused", "exited", "dead")
declare -a PENDING_STATUSES=("paused", "created", "restarting")
declare -a BAD_STATUSES=("removing" "paused" "exited" "dead")
declare -a PENDING_STATUSES=("paused" "created" "restarting")
declare -a GOOD_STATUSES=("running")
declare -a temp_container_name_list=()
@@ -72,16 +72,16 @@ compare_lists() {
create_expected_container_list
if [[ ${#expected_container_list[@]} = 0 ]]; then
container_name_list=$temp_container_name_list
container_state_list=$temp_container_state_list
container_name_list="${temp_container_name_list[*]}"
container_state_list="${temp_container_state_list[*]}"
return 1
fi
for intended_item in ${expected_container_list[@]}; do
found = 0
for i in ${!temp_container_name_list[@]}; do
[[ ${temp_container_name_list[$i]} = $intended_item ]] \
&& found = 1 \
for intended_item in "${expected_container_list[@]}"; do
found=0
for i in "${!temp_container_name_list[@]}"; do
[[ ${temp_container_name_list[$i]} = "$intended_item" ]] \
&& found=1 \
&& container_name_list+=("${temp_container_name_list[$i]}") \
&& container_state_list+=("${temp_container_state_list[$i]}") \
&& break
@@ -115,7 +115,7 @@ populate_container_lists() {
local container_name=""
local container_state=""
for line in ${docker_raw_list[@]}; do
for line in "${docker_raw_list[@]}"; do
container_name="$( echo $line | sed -e 's/Name:\(.*\),State:\(.*\)/\1/' )" # Get value in the first search group (container names)
container_state="$( echo $line | sed -e 's/Name:\(.*\),State:\(.*\)/\2/' )" # Get value in the second search group (container states)
@@ -132,16 +132,16 @@ parse_status() {
[[ $container_state = "missing" ]] && printf $MISSING_STRING && return 1
for state in "${GOOD_STATUSES[@]}"; do
[[ $container_state = $state ]] && printf $SUCCESS_STRING && return 0
[[ $container_state = "$state" ]] && printf $SUCCESS_STRING && return 0
done
for state in "${PENDING_STATUSES[@]}"; do
[[ $container_state = $state ]] && printf $PENDING_STRING && return 0
[[ $container_state = "$state" ]] && printf $PENDING_STRING && return 0
done
# This is technically not needed since the default is error state
for state in "${BAD_STATUSES[@]}"; do
[[ $container_state = $state ]] && printf $ERROR_STRING && return 1
[[ $container_state = "$state" ]] && printf $ERROR_STRING && return 1
done
printf $ERROR_STRING && return 1
@@ -151,17 +151,17 @@ parse_status() {
print_line() {
local service_name=${1}
local service_state=$( parse_status ${2} )
local service_state="$( parse_status ${2} )"
local columns=$(tput cols)
local state_color="\e[0m"
local PADDING_CONSTANT=14
if [[ $service_state = $ERROR_STRING ]] || [[ $service_state = $MISSING_STRING ]]; then
if [[ $service_state = "$ERROR_STRING" ]] || [[ $service_state = "$MISSING_STRING" ]]; then
state_color="\e[1;31m"
elif [[ $service_state = $SUCCESS_STRING ]]; then
elif [[ $service_state = "$SUCCESS_STRING" ]]; then
state_color="\e[1;32m"
elif [[ $service_state = $PENDING_STRING ]]; then
elif [[ $service_state = "$PENDING_STRING" ]]; then
state_color="\e[1;33m"
fi
@@ -191,7 +191,7 @@ main() {
printf "\n"
printf "${focus_color}%b\e[0m" "Checking container statuses\n\n"
local num_containers=${#docker_raw_list[@]}
local num_containers=${#container_name_list[@]}
for i in $(seq 0 $(($num_containers - 1 ))); do
print_line ${container_name_list[$i]} ${container_state_list[$i]}
@@ -204,4 +204,3 @@ main() {
main