mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-06 17:22:49 +01:00
Merge pull request #775 from Security-Onion-Solutions/feature/turbo-proxy
Feature/turbo proxy
This commit is contained in:
@@ -957,32 +957,45 @@ node_pillar() {
|
|||||||
parse_options() {
|
parse_options() {
|
||||||
case "$1" in
|
case "$1" in
|
||||||
--turbo=*)
|
--turbo=*)
|
||||||
if [[ $is_master || $is_helix ]]; then
|
|
||||||
local proxy
|
local proxy
|
||||||
proxy=$(echo "$1" | tr -d '"' | awk -F'--turbo=' '{print $2}')
|
proxy=$(echo "$1" | tr -d '"' | awk -F'--turbo=' '{print $2}')
|
||||||
proxy_addr="http://$proxy"
|
proxy_url="http://$proxy"
|
||||||
use_proxy "$proxy_addr"
|
TURBO="$proxy_url"
|
||||||
TURBO="$proxy_addr"
|
|
||||||
else
|
|
||||||
echo "turbo is not supported on this install type" >> $setup_log 2>&1
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
--proxy=*)
|
--proxy=*)
|
||||||
echo "Unimplemented"
|
|
||||||
return
|
|
||||||
|
|
||||||
if [[ $2 != --proxy-user=* ]] || [[ $3 != --proxy-pass=* ]]; then
|
|
||||||
echo "Invalid options passed for proxy. Order is --proxy-user=<user> --proxy-pass=<password>"
|
|
||||||
else
|
|
||||||
local proxy
|
local proxy
|
||||||
|
proxy=$(echo "$1" | tr -d '"' | awk -F'--proxy=' '{print $2}')
|
||||||
|
|
||||||
|
local proxy_protocol
|
||||||
|
proxy_protocol=$(echo "$proxy" |tr -d '"' | awk 'match($0, /http|https/) { print substr($0, RSTART, RLENGTH) }')
|
||||||
|
|
||||||
|
if [[ ! $proxy_protocol =~ ^(http|https)$ ]]; then
|
||||||
|
echo "Invalid proxy protocol"
|
||||||
|
echo "Ignoring proxy"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $2 == --proxy-user=* && $3 == --proxy-pass=* ]]; then
|
||||||
local proxy_user
|
local proxy_user
|
||||||
local proxy_password
|
local proxy_password
|
||||||
proxy=$(echo "$1" | tr -d '"' | awk -F'--proxy=' '{print $2}')
|
|
||||||
proxy_user=$(echo "$2" | tr -d '"' | awk -F'--proxy-user=' '{print $2}')
|
proxy_user=$(echo "$2" | tr -d '"' | awk -F'--proxy-user=' '{print $2}')
|
||||||
proxy_password=$(echo "$3" | tr -d '"' | awk -F'--proxy-pass=' '{print $2}')
|
proxy_password=$(echo "$3" | tr -d '"' | awk -F'--proxy-pass=' '{print $2}')
|
||||||
|
|
||||||
use_proxy "$proxy" "$proxy_user" "$proxy_password"
|
local proxy_addr
|
||||||
|
proxy_addr=$(echo "$proxy" | tr -d '"' | awk -F'http\:\/\/|https\:\/\/' '{print $2}')
|
||||||
|
|
||||||
|
export http_proxy="${proxy_protocol}://${proxy_user}:${proxy_password}@${proxy_addr}"
|
||||||
|
|
||||||
|
elif [[ (-z $2 || -z $3) && (-n $2 || -n $3) || ( -n $2 && -n $3 && ($2 != --proxy-user=* || $3 != --proxy-pass=*) ) ]]; then
|
||||||
|
echo "Invalid options passed for proxy. Order is --proxy-user=<user> --proxy-pass=<password>"
|
||||||
|
echo "Ignoring proxy"
|
||||||
|
return
|
||||||
|
|
||||||
|
else
|
||||||
|
export http_proxy="$proxy"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
export {https,ftp,rsync,all}_proxy="$http_proxy"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Invalid option"
|
echo "Invalid option"
|
||||||
@@ -1482,18 +1495,19 @@ update_packages() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
use_proxy() {
|
use_turbo_proxy() {
|
||||||
local proxy_addr=$1
|
if [[ ! $install_type =~ ^(MASTER|EVAL|HELIXSENSOR|MASTERSEARCH|STANDALONE)$ ]]; then
|
||||||
#TODO: add options for username + pass
|
echo "turbo is not supported on this install type" >> $setup_log 2>&1
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ $OS == 'centos' ]]; then
|
if [[ $OS == 'centos' ]]; then
|
||||||
printf '%s\n'\
|
printf '%s\n' "proxy=${TURBO}:3142" >> /etc/yum.conf
|
||||||
"proxy=${proxy_addr}:3142" >> /etc/yum.conf
|
|
||||||
else
|
else
|
||||||
printf '%s\n'\
|
printf '%s\n'\
|
||||||
"Acquire {"\
|
"Acquire {"\
|
||||||
" HTTP::proxy \"${proxy_addr}:3142\";"\
|
" HTTP::proxy \"${TURBO}:3142\";"\
|
||||||
" HTTPS::proxy \"${proxy_addr}:3142\";"\
|
" HTTPS::proxy \"${TURBO}:3142\";"\
|
||||||
"}" > /etc/apt/apt.conf.d/proxy.conf
|
"}" > /etc/apt/apt.conf.d/proxy.conf
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,6 +70,12 @@ export PATH=$PATH:../salt/common/tools/sbin
|
|||||||
date -u > $setup_log 2>&1
|
date -u > $setup_log 2>&1
|
||||||
|
|
||||||
got_root
|
got_root
|
||||||
|
|
||||||
|
if [[ $# -gt 1 ]]; then
|
||||||
|
set -- "${@:2}"
|
||||||
|
parse_options "$@" >> $setup_log 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
detect_os
|
detect_os
|
||||||
|
|
||||||
if [ "$OS" == ubuntu ]; then
|
if [ "$OS" == ubuntu ]; then
|
||||||
@@ -271,9 +277,8 @@ fi
|
|||||||
|
|
||||||
whiptail_make_changes
|
whiptail_make_changes
|
||||||
|
|
||||||
if [[ $# -gt 1 ]]; then
|
if [[ -n "$TURBO" ]]; then
|
||||||
set -- "${@:2}"
|
use_turbo_proxy
|
||||||
parse_options "$@" >> $setup_log 2>&1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$setup_type" == 'iso' ]]; then
|
if [[ "$setup_type" == 'iso' ]]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user