mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-07 17:52:46 +01:00
[wip] Add auth inputs for proxy settings, fix some broken logic
This commit is contained in:
@@ -346,7 +346,7 @@ valid_proxy() {
|
|||||||
|
|
||||||
local has_prefix=false
|
local has_prefix=false
|
||||||
for prefix in "${url_prefixes[@]}"; do
|
for prefix in "${url_prefixes[@]}"; do
|
||||||
echo "$proxy" | grep "$prefix" && has_prefix=true && proxy=${proxy#"$prefix"}
|
echo "$proxy" | grep "$prefix" && has_prefix=true && proxy=${proxy#"$prefix"} && break
|
||||||
done
|
done
|
||||||
|
|
||||||
local url
|
local url
|
||||||
@@ -357,7 +357,7 @@ valid_proxy() {
|
|||||||
valid_url=false
|
valid_url=false
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[[ $has_prefix == true ]] && [[ $valid_url ]] && return 0 || return 1
|
[[ $has_prefix == true ]] && [[ $valid_url == true ]] && return 0 || return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
valid_string() {
|
valid_string() {
|
||||||
|
|||||||
@@ -537,12 +537,41 @@ collect_patch_schedule_name_import() {
|
|||||||
|
|
||||||
collect_proxy() {
|
collect_proxy() {
|
||||||
if whiptail_proxy_ask; then
|
if whiptail_proxy_ask; then
|
||||||
|
|
||||||
whiptail_proxy_addr
|
whiptail_proxy_addr
|
||||||
|
|
||||||
while ! valid_proxy "$proxy_addr"; do
|
while ! valid_proxy "$proxy_addr"; do
|
||||||
whiptail_invalid_input
|
whiptail_invalid_input
|
||||||
whiptail_proxy_addr
|
whiptail_proxy_addr
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if whiptail_proxy_auth_ask; then
|
||||||
|
whiptail_proxy_auth_user
|
||||||
|
|
||||||
|
while ! valid_string "$proxy_user"; do
|
||||||
|
whiptail_invalid_input
|
||||||
|
whiptail_proxy_auth_user
|
||||||
|
done
|
||||||
|
|
||||||
|
whiptail_proxy_auth_pass
|
||||||
|
|
||||||
|
while ! valid_string "$proxy_pass"; do
|
||||||
|
whiptail_invalid_input
|
||||||
|
whiptail_proxy_auth_pass
|
||||||
|
done
|
||||||
|
|
||||||
|
local url_prefixes=( 'http://' 'https://' )
|
||||||
|
for prefix in "${url_prefixes[@]}"; do
|
||||||
|
if echo "$proxy_addr" | grep "$prefix"; then
|
||||||
|
proxy=${proxy_addr#"$prefix"}
|
||||||
|
proxy="${prefix}${proxy_user}:${proxy_pass}@${proxy}"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
else
|
||||||
|
proxy="$proxy_addr"
|
||||||
|
fi
|
||||||
|
export proxy
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1231,6 +1231,24 @@ whiptail_proxy_addr() {
|
|||||||
whiptail_check_exitstatus $exitstatus
|
whiptail_check_exitstatus $exitstatus
|
||||||
}
|
}
|
||||||
|
|
||||||
|
whiptail_proxy_auth_ask() {
|
||||||
|
[ -n "$TESTING" ] && return
|
||||||
|
|
||||||
|
whiptail --title "Security Onion Setup" --yesno "Does your proxy require authentication?" 7 60
|
||||||
|
}
|
||||||
|
|
||||||
|
whiptail_proxy_auth_user() {
|
||||||
|
[ -n "$TESTING" ] && return
|
||||||
|
|
||||||
|
proxy_user=$(whiptail --title "Security Onion Setup" --inputbox "Please input the proxy user:" 8 60 3>&1 1>&2 2>&3)
|
||||||
|
}
|
||||||
|
|
||||||
|
whiptail_proxy_auth_pass() {
|
||||||
|
[ -n "$TESTING" ] && return
|
||||||
|
|
||||||
|
proxy_pass=$(whiptail --title "Security Onion Setup" --inputbox "Please input the proxy password:" 8 60 3>&1 1>&2 2>&3)
|
||||||
|
}
|
||||||
|
|
||||||
whiptail_requirements_error() {
|
whiptail_requirements_error() {
|
||||||
|
|
||||||
local requirement_needed=$1
|
local requirement_needed=$1
|
||||||
|
|||||||
Reference in New Issue
Block a user