continue working on installer

This commit is contained in:
t3chn0m4g3 2018-06-21 15:16:33 +00:00
parent ab5d2bdc06
commit b500c8aace
4 changed files with 205 additions and 172 deletions

View file

@ -2,7 +2,8 @@
# T-Pot Universal Installer # T-Pot Universal Installer
#### to do #### to do
#### 1. use authorized keys config #### 1. ditch authorized keys config, use fail2ban
#### 2. check for other services that might collide with the honeypots, if found abort install
################################## ##################################
# Extract command line arguments # # Extract command line arguments #
@ -63,11 +64,12 @@ for i in "$@"
echo "Usage: $0 <options>" echo "Usage: $0 <options>"
echo echo
echo "--conf=<Path to \"tpot.conf\">" echo "--conf=<Path to \"tpot.conf\">"
echo " Use this if you want to automatically deploy a T-Pot instance (--type=automatic implied)." echo " Use this if you want to automatically deploy a T-Pot instance (--type=auto implied)."
echo " A configuration example is available in \"tpotce/iso/installer/tpot.conf.dist\"." echo " A configuration example is available in \"tpotce/iso/installer/tpot.conf.dist\"."
echo echo
echo "--type=<[user, auto, iso]>" echo "--type=<[user, auto, iso]>"
echo " user, use this if you want to manually install a T-Pot on a Ubuntu 18.04 LTS machine." echo " user, use this if you want to manually install a T-Pot on a Ubuntu 18.04 LTS machine."
echo " auto, implied if a configuration file is passed as an argument for automatic deployment."
echo " iso, use this if you are a T-Pot developer and want to install a T-Pot from a pre-compiled iso." echo " iso, use this if you are a T-Pot developer and want to install a T-Pot from a pre-compiled iso."
echo echo
exit exit
@ -119,7 +121,8 @@ echo -n "### Checking for root: "
if [ "$(whoami)" != "root" ]; if [ "$(whoami)" != "root" ];
then then
echo "[ NOT OK ]" echo "[ NOT OK ]"
echo "### Please run as root. Exiting." echo "### Please run as root."
echo "### Example: sudo $0"
exit exit
else else
echo "[ OK ]" echo "[ OK ]"
@ -253,9 +256,11 @@ fi
### ---> End proxy setup ### ---> End proxy setup
# Let's test the internet connection # Let's test the internet connection
mySITESCOUNT=$(echo $mySITES | wc -w) if [ "$myTPOT_DEPLOYMENT_TYPE" == "iso" ] || [ "$myTPOT_DEPLOYMENT_TYPE" == "user" ];
j=0 then
for i in $mySITES; mySITESCOUNT=$(echo $mySITES | wc -w)
j=0
for i in $mySITES;
do do
dialog --title "[ Testing the internet connection ]" --backtitle "$myBACKTITLE" \ dialog --title "[ Testing the internet connection ]" --backtitle "$myBACKTITLE" \
--gauge "\n Now checking: $i\n" 8 80 $(expr 100 \* $j / $mySITESCOUNT) <<EOF --gauge "\n Now checking: $i\n" 8 80 $(expr 100 \* $j / $mySITESCOUNT) <<EOF
@ -277,6 +282,7 @@ EOF
--gauge "\n Now checking: $i\n" 8 80 $(expr 100 \* $j / $mySITESCOUNT) <<EOF --gauge "\n Now checking: $i\n" 8 80 $(expr 100 \* $j / $mySITESCOUNT) <<EOF
EOF EOF
done; done;
fi
# Let's put cursor back in standard form # Let's put cursor back in standard form
tput cnorm tput cnorm
@ -299,26 +305,25 @@ if [ "$myTPOT_DEPLOYMENT_TYPE" == "user" ];
then then
while [ 1 != 2 ] while [ 1 != 2 ]
do do
myCONF_TPOT_USER=$(dialog --backtitle "$myBACKTITLE" --title "[ Existing linux user name ]" --inputbox "\nUsername (root is not allowed)" 9 50 "$(who am i | awk '{ print $1 }')" 3>&1 1>&2 2>&3 3>&-) myCONF_TPOT_USER=$(dialog --backtitle "$myBACKTITLE" --title "[ Existing console user name ]" --inputbox "\nUsername (root is not allowed)" 9 50 "$(who am i | awk '{ print $1 }')" 3>&1 1>&2 2>&3 3>&-)
myCONF_TPOT_USER=$(echo $myUSER | tr -cd "[:alnum:]_.-") myCONF_TPOT_USER=$(echo $myCONF_TPOT_USER | tr -cd "[:alnum:]_.-")
dialog --backtitle "$myBACKTITLE" --title "[ Your username is ]" --yesno "\n$myUSER" 7 50 dialog --backtitle "$myBACKTITLE" --title "[ Your username is ]" --yesno "\n$myCONF_TPOT_USER" 7 50
myOK=$? myOK=$?
if [ "$myOK" = "0" ] && [ "$myUSER" != "root" ] && [ "$myUSER" != "" ]; if [ "$myOK" = "0" ] && [ "$myCONF_TPOT_USER" != "root" ] && [ "$myCONF_TPOT_USER" != "" ] && [ "$(cat /etc/passwd | grep -wc $myCONF_TPOT_USER)" == "1" ];
then then
break break
fi fi
done done
fi fi
##### exit ##### # Let's ask for a secure tsec password if installation type is iso
exit if [ "$myTPOT_DEPLOYMENT_TYPE" == "iso" ];
then
# Let's ask for a secure tsec password myCONF_TPOT_USER="tsec"
myUSER="tsec" myPASS1="pass1"
myPASS1="pass1" myPASS2="pass2"
myPASS2="pass2" mySECURE="0"
mySECURE="0" while [ "$myPASS1" != "$myPASS2" ] && [ "$mySECURE" == "0" ]
while [ "$myPASS1" != "$myPASS2" ] && [ "$mySECURE" == "0" ]
do do
while [ "$myPASS1" == "pass1" ] || [ "$myPASS1" == "" ] while [ "$myPASS1" == "pass1" ] || [ "$myPASS1" == "" ]
do do
@ -348,62 +353,87 @@ while [ "$myPASS1" != "$myPASS2" ] && [ "$mySECURE" == "0" ]
fi fi
fi fi
done done
printf "%s" "$myUSER:$myPASS1" | chpasswd printf "%s" "$myCONF_TPOT_USER:$myPASS1" | chpasswd
fi
# Let's ask for a web username with secure password # Let's ask for a web user credentials if deployment type is iso or user
myOK="1" # In case of auto, credentials are created from config values
myUSER="tsec" # Skip this step entirely if SENSOR flavor
myPASS1="pass1" if [ "$myTPOT_DEPLOYMENT_TYPE" == "iso" ] || [ "$myTPOT_DEPLOYMENT_TYPE" == "user" ];
myPASS2="pass2" then
mySECURE="0" myOK="1"
while [ 1 != 2 ] myCONF_WEB_USER="webuser"
myCONF_WEB_PW="pass1"
myCONF_WEB_PW2="pass2"
mySECURE="0"
while [ 1 != 2 ]
do do
myUSER=$(dialog --backtitle "$myBACKTITLE" --title "[ Enter your web user name ]" --inputbox "\nUsername (tsec not allowed)" 9 50 3>&1 1>&2 2>&3 3>&-) myCONF_WEB_USER=$(dialog --backtitle "$myBACKTITLE" --title "[ Enter your web user name ]" --inputbox "\nUsername (tsec not allowed)" 9 50 3>&1 1>&2 2>&3 3>&-)
myUSER=$(echo $myUSER | tr -cd "[:alnum:]_.-") myCONF_WEB_USER=$(echo $myCONF_WEB_USER | tr -cd "[:alnum:]_.-")
dialog --backtitle "$myBACKTITLE" --title "[ Your username is ]" --yesno "\n$myUSER" 7 50 dialog --backtitle "$myBACKTITLE" --title "[ Your username is ]" --yesno "\n$myCONF_WEB_USER" 7 50
myOK=$? myOK=$?
if [ "$myOK" = "0" ] && [ "$myUSER" != "tsec" ] && [ "$myUSER" != "" ]; if [ "$myOK" = "0" ] && [ "$myCONF_WEB_USER" != "tsec" ] && [ "$myCONF_WEB_USER" != "" ];
then then
break break
fi fi
done done
while [ "$myPASS1" != "$myPASS2" ] && [ "$mySECURE" == "0" ] while [ "$myCONF_WEB_PW" != "$myCONF_WEB_PW2" ] && [ "$mySECURE" == "0" ]
do do
while [ "$myPASS1" == "pass1" ] || [ "$myPASS1" == "" ] while [ "$myCONF_WEB_PW" == "pass1" ] || [ "$myCONF_WEB_PW" == "" ]
do do
myPASS1=$(dialog --insecure --backtitle "$myBACKTITLE" \ myCONF_WEB_PW=$(dialog --insecure --backtitle "$myBACKTITLE" \
--title "[ Enter password for your web user ]" \ --title "[ Enter password for your web user ]" \
--passwordbox "\nPassword" 9 60 3>&1 1>&2 2>&3 3>&-) --passwordbox "\nPassword" 9 60 3>&1 1>&2 2>&3 3>&-)
done done
myPASS2=$(dialog --insecure --backtitle "$myBACKTITLE" \ myCONF_WEB_PW2=$(dialog --insecure --backtitle "$myBACKTITLE" \
--title "[ Repeat password for your web user ]" \ --title "[ Repeat password for your web user ]" \
--passwordbox "\nPassword" 9 60 3>&1 1>&2 2>&3 3>&-) --passwordbox "\nPassword" 9 60 3>&1 1>&2 2>&3 3>&-)
if [ "$myPASS1" != "$myPASS2" ]; if [ "$myCONF_WEB_PW" != "$myCONF_WEB_PW2" ];
then then
dialog --backtitle "$myBACKTITLE" --title "[ Passwords do not match. ]" \ dialog --backtitle "$myBACKTITLE" --title "[ Passwords do not match. ]" \
--msgbox "\nPlease re-enter your password." 7 60 --msgbox "\nPlease re-enter your password." 7 60
myPASS1="pass1" myCONF_WEB_PW="pass1"
myPASS2="pass2" myCONF_WEB_PW2="pass2"
fi fi
mySECURE=$(printf "%s" "$myPASS1" | cracklib-check | grep -c "OK") mySECURE=$(printf "%s" "$myCONF_WEB_PW" | cracklib-check | grep -c "OK")
if [ "$mySECURE" == "0" ] && [ "$myPASS1" == "$myPASS2" ]; if [ "$mySECURE" == "0" ] && [ "$myCONF_WEB_PW" == "$myCONF_WEB_PW2" ];
then then
dialog --backtitle "$myBACKTITLE" --title "[ Password is not secure ]" --defaultno --yesno "\nKeep insecure password?" 7 50 dialog --backtitle "$myBACKTITLE" --title "[ Password is not secure ]" --defaultno --yesno "\nKeep insecure password?" 7 50
myOK=$? myOK=$?
if [ "$myOK" == "1" ]; if [ "$myOK" == "1" ];
then then
myPASS1="pass1" myCONF_WEB_PW="pass1"
myPASS2="pass2" myCONF_WEB_PW2="pass2"
fi fi
fi fi
done done
mkdir -p /data/nginx/conf 2>&1 fi
htpasswd -b -c /data/nginx/conf/nginxpasswd "$myUSER" "$myPASS1" 2>&1 | dialog --title "[ Setting up user and password ]" $myPROGRESSBOXCONF; # If flavor is SENSOR do not write credentials
if ! [ "$myCONF_TPOT_FLAVOR" == "SENSOR" ];
then
mkdir -p /data/nginx/conf 2>&1
htpasswd -b -c /data/nginx/conf/nginxpasswd "$myCONF_WEB_USER" "$myCONF_WEB_PW" 2>&1 | dialog --title "[ Setting up user and password ]" $myPROGRESSBOXCONF;
fi
################
echo $myCONF_TPOT_FLAVOR
echo $myCONF_TPOT_USER
echo $myCONF_TPOT_PW
echo $myCONF_WEB_USER
echo $myCONF_WEB_PW
##### exit #####
exit
# Put cursor in invisible mode
tput civis
# Let's generate a SSL self-signed certificate without interaction (browsers will see it invalid anyway) # Let's generate a SSL self-signed certificate without interaction (browsers will see it invalid anyway)
tput civis if ! [ "$myCONF_TPOT_FLAVOR" == "SENSOR" ];
mkdir -p /data/nginx/cert 2>&1 | dialog --title "[ Generating a self-signed-certificate for NGINX ]" $myPROGRESSBOXCONF; then
openssl req \ mkdir -p /data/nginx/cert 2>&1 | dialog --title "[ Generating a self-signed-certificate for NGINX ]" $myPROGRESSBOXCONF;
openssl req \
-nodes \ -nodes \
-x509 \ -x509 \
-sha512 \ -sha512 \
@ -412,11 +442,12 @@ openssl req \
-out "/data/nginx/cert/nginx.crt" \ -out "/data/nginx/cert/nginx.crt" \
-days 3650 \ -days 3650 \
-subj '/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd' 2>&1 | dialog --title "[ Generating a self-signed-certificate for NGINX ]" $myPROGRESSBOXCONF; -subj '/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd' 2>&1 | dialog --title "[ Generating a self-signed-certificate for NGINX ]" $myPROGRESSBOXCONF;
fi
# Let's setup the ntp server # Let's setup the ntp server
if [ "$myCONF_NTP_USE" == "0" ]; if [ "$myCONF_NTP_USE" == "0" ];
then then
dialog --title "[ Setting up the ntp server ]" $myPROGRESSBOXCONF <<EOF dialog --title "[ Setting up the ntp server ]" $myPROGRESSBOXCONF <<EOF
EOF EOF
cp $myCONF_NTP_CONF_FILE /etc/ntp.conf 2>&1 | dialog --title "[ Setting up the ntp server ]" $myPROGRESSBOXCONF cp $myCONF_NTP_CONF_FILE /etc/ntp.conf 2>&1 | dialog --title "[ Setting up the ntp server ]" $myPROGRESSBOXCONF
fi fi
@ -424,10 +455,10 @@ fi
# Let's setup 802.1x networking # Let's setup 802.1x networking
if [ "myCONF_PFX_USE" == "0" ]; if [ "myCONF_PFX_USE" == "0" ];
then then
dialog --title "[ Setting 802.1x networking ]" $myPROGRESSBOXCONF <<EOF dialog --title "[ Setting 802.1x networking ]" $myPROGRESSBOXCONF <<EOF
EOF EOF
cp $myCONF_PFX_FILE /etc/wpa_supplicant/ 2>&1 | dialog --title "[ Setting 802.1x networking ]" $myPROGRESSBOXCONF cp $myCONF_PFX_FILE /etc/wpa_supplicant/ 2>&1 | dialog --title "[ Setting 802.1x networking ]" $myPROGRESSBOXCONF
tee -a /etc/network/interfaces 2>&1>/dev/null <<EOF tee -a /etc/network/interfaces 2>&1>/dev/null <<EOF
wpa-driver wired wpa-driver wired
wpa-conf /etc/wpa_supplicant/wired8021x.conf wpa-conf /etc/wpa_supplicant/wired8021x.conf
@ -443,7 +474,7 @@ tee -a /etc/network/interfaces 2>&1>/dev/null <<EOF
# wpa-conf /etc/wpa_supplicant/wireless8021x.conf # wpa-conf /etc/wpa_supplicant/wireless8021x.conf
EOF EOF
tee /etc/wpa_supplicant/wired8021x.conf 2>&1>/dev/null <<EOF tee /etc/wpa_supplicant/wired8021x.conf 2>&1>/dev/null <<EOF
ctrl_interface=/var/run/wpa_supplicant ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=root ctrl_interface_group=root
eapol_version=1 eapol_version=1
@ -457,7 +488,7 @@ network={
} }
EOF EOF
tee /etc/wpa_supplicant/wireless8021x.conf 2>&1>/dev/null <<EOF tee /etc/wpa_supplicant/wireless8021x.conf 2>&1>/dev/null <<EOF
ctrl_interface=/var/run/wpa_supplicant ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=root ctrl_interface_group=root
eapol_version=1 eapol_version=1
@ -516,27 +547,23 @@ tee -a /etc/ssh/ssh_config 2>&1>/dev/null <<EOF
UseRoaming no UseRoaming no
EOF EOF
# Let's pull some updates
apt-get update -y 2>&1 | dialog --title "[ Pulling updates ]" $myPROGRESSBOXCONF
apt-get upgrade -y 2>&1 | dialog --title "[ Pulling updates ]" $myPROGRESSBOXCONF
# Let's clean up apt
apt-get autoclean -y 2>&1 | dialog --title "[ Pulling updates ]" $myPROGRESSBOXCONF
apt-get autoremove -y 2>&1 | dialog --title "[ Pulling updates ]" $myPROGRESSBOXCONF
# Installing ctop, elasticdump, tpot # Installing ctop, elasticdump, tpot
if ! [ "$myCONF_TPOT_FLAVOR" == "SENSOR" ];
then
npm install https://github.com/taskrabbit/elasticsearch-dump#9fcc8cc -g 2>&1 | dialog --title "[ Installing elasticsearch-dump ]" $myPROGRESSBOXCONF
fi
pip install --upgrade pip 2>&1 | dialog --title "[ Installing pip ]" $myPROGRESSBOXCONF pip install --upgrade pip 2>&1 | dialog --title "[ Installing pip ]" $myPROGRESSBOXCONF
hash -r 2>&1 | dialog --title "[ Installing pip ]" $myPROGRESSBOXCONF
pip install elasticsearch-curator==5.4.1 2>&1 | dialog --title "[ Installing elasticsearch-curator ]" $myPROGRESSBOXCONF pip install elasticsearch-curator==5.4.1 2>&1 | dialog --title "[ Installing elasticsearch-curator ]" $myPROGRESSBOXCONF
pip install yq==2.4.1 2>&1 | dialog --title "[ Installing yq ]" $myPROGRESSBOXCONF pip install yq==2.4.1 2>&1 | dialog --title "[ Installing yq ]" $myPROGRESSBOXCONF
npm install https://github.com/taskrabbit/elasticsearch-dump#9fcc8cc -g 2>&1 | dialog --title "[ Installing elasticsearch-dump ]" $myPROGRESSBOXCONF
wget https://github.com/bcicen/ctop/releases/download/v0.7/ctop-0.7-linux-amd64 -O ctop 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF wget https://github.com/bcicen/ctop/releases/download/v0.7/ctop-0.7-linux-amd64 -O ctop 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF
mv ctop /usr/bin/ 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF mv ctop /usr/bin/ 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF
chmod +x /usr/bin/ctop 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF chmod +x /usr/bin/ctop 2>&1 | dialog --title "[ Installing ctop ]" $myPROGRESSBOXCONF
git clone https://github.com/dtag-dev-sec/tpotce -b 18.04 /opt/tpot 2>&1 | dialog --title "[ Cloning T-Pot ]" $myPROGRESSBOXCONF git clone https://github.com/dtag-dev-sec/tpotce -b 18.04 /opt/tpot 2>&1 | dialog --title "[ Cloning T-Pot ]" $myPROGRESSBOXCONF
# Let's add a new user # Let's create the T-Pot user
addgroup --gid 2000 tpot 2>&1 | dialog --title "[ Adding new user ]" $myPROGRESSBOXCONF addgroup --gid 2000 tpot 2>&1 | dialog --title "[ Adding T-Pot user ]" $myPROGRESSBOXCONF
adduser --system --no-create-home --uid 2000 --disabled-password --disabled-login --gid 2000 tpot 2>&1 | dialog --title "[ Adding new user ]" $myPROGRESSBOXCONF adduser --system --no-create-home --uid 2000 --disabled-password --disabled-login --gid 2000 tpot 2>&1 | dialog --title "[ Adding T-Pot user ]" $myPROGRESSBOXCONF
# Let's set the hostname # Let's set the hostname
a=$(fuRANDOMWORD /opt/tpot/host/usr/share/dict/a.txt) a=$(fuRANDOMWORD /opt/tpot/host/usr/share/dict/a.txt)
@ -705,6 +732,10 @@ EOF
# Let's create ews.ip before reboot and prevent race condition for first start # Let's create ews.ip before reboot and prevent race condition for first start
/opt/tpot/bin/updateip.sh 2>&1>/dev/null /opt/tpot/bin/updateip.sh 2>&1>/dev/null
# Let's clean up apt
apt-get autoclean -y 2>&1 | dialog --title "[ Cleaning up ]" $myPROGRESSBOXCONF
apt-get autoremove -y 2>&1 | dialog --title "[ Cleaning up ]" $myPROGRESSBOXCONF
# Final steps # Final steps
cp /opt/tpot/host/etc/rc.local /etc/rc.local 2>&1>/dev/null && \ cp /opt/tpot/host/etc/rc.local /etc/rc.local 2>&1>/dev/null && \
rm -rf /root/installer 2>&1>/dev/null && \ rm -rf /root/installer 2>&1>/dev/null && \

View file

@ -1,14 +1,14 @@
# makeiso configuration file # makeiso configuration file
myCONF_PROXY_USE="0" myCONF_PROXY_USE='0'
myCONF_PROXY_IP="1.2.3.4" myCONF_PROXY_IP='1.2.3.4'
myCONF_PROXY_PORT="3128" myCONF_PROXY_PORT='3128'
myCONF_SSH_PUBKEY_USE="0" myCONF_SSH_PUBKEY_USE='0'
myCONF_SSH_PUBKEY_FILE="/" myCONF_SSH_PUBKEY_FILE='/'
myCONF_PFX_USE="0" myCONF_PFX_USE='0'
myCONF_PFX_FILE="/" myCONF_PFX_FILE='/'
myCONF_PFX_PW_USE="0" myCONF_PFX_PW_USE='0'
myCONF_PFX_PW="<SECRET>" myCONF_PFX_PW='<SECRET>'
myCONF_PFX_HOST_ID="<HOSTNAME>.<DOMAIN>" myCONF_PFX_HOST_ID='<HOSTNAME>.<DOMAIN>'
myCONF_NTP_USE="0" myCONF_NTP_USE='0'
myCONF_NTP_IP="1.2.3.4" myCONF_NTP_IP='1.2.3.4'
myCONF_NTP_CONF_FILE="/" myCONF_NTP_CONF_FILE='/'

View file

@ -1,5 +1,7 @@
# tpot configuration file # tpot configuration file
# myCONF_TPOT_FLAVOR=[STANDARD, SENSOR, INDUSTRIAL, COLLECTOR, EXPERIMENTAL, LEGACY] # myCONF_TPOT_FLAVOR=[STANDARD, SENSOR, INDUSTRIAL, COLLECTOR, EXPERIMENTAL, LEGACY]
myCONF_TPOT_FLAVOR="STANDARD" myCONF_TPOT_FLAVOR='STANDARD'
myCONF_TPOT_USER="tsec" myCONF_TPOT_USER='tsec'
myCONF_TPOT_PW="$ecret123" myCONF_TPOT_PW='$ecret123'
myCONF_WEB_USER='webuser'
myCONF_WEB_PW='w3b$ecret'

View file

@ -225,19 +225,19 @@ done
# Let's write the config file # Let's write the config file
echo "# makeiso configuration file" > $myCONF_FILE echo "# makeiso configuration file" > $myCONF_FILE
echo "myCONF_PROXY_USE=\"$myCONF_PROXY_USE\"" >> $myCONF_FILE echo "myCONF_PROXY_USE=\'$myCONF_PROXY_USE\'" >> $myCONF_FILE
echo "myCONF_PROXY_IP=\"$myCONF_PROXY_IP\"" >> $myCONF_FILE echo "myCONF_PROXY_IP=\'$myCONF_PROXY_IP\'" >> $myCONF_FILE
echo "myCONF_PROXY_PORT=\"$myCONF_PROXY_PORT\"" >> $myCONF_FILE echo "myCONF_PROXY_PORT=\'$myCONF_PROXY_PORT\'" >> $myCONF_FILE
echo "myCONF_SSH_PUBKEY_USE=\"$myCONF_SSH_PUBKEY_USE\"" >> $myCONF_FILE echo "myCONF_SSH_PUBKEY_USE=\'$myCONF_SSH_PUBKEY_USE\'" >> $myCONF_FILE
echo "myCONF_SSH_PUBKEY_FILE=\"/root/installer/keys/authorized_keys\"" >> $myCONF_FILE echo "myCONF_SSH_PUBKEY_FILE=\'/root/installer/keys/authorized_keys\'" >> $myCONF_FILE
echo "myCONF_PFX_USE=\"$myCONF_PFX_USE\"" >> $myCONF_FILE echo "myCONF_PFX_USE=\'$myCONF_PFX_USE\'" >> $myCONF_FILE
echo "myCONF_PFX_FILE=\"/root/installer/keys/8021x.pfx\"" >> $myCONF_FILE echo "myCONF_PFX_FILE=\'/root/installer/keys/8021x.pfx\'" >> $myCONF_FILE
echo "myCONF_PFX_PW_USE=\"$myCONF_PFX_PW_USE\"" >> $myCONF_FILE echo "myCONF_PFX_PW_USE=\'$myCONF_PFX_PW_USE\'" >> $myCONF_FILE
echo "myCONF_PFX_PW=\"$myCONF_PFX_PW\"" >> $myCONF_FILE echo "myCONF_PFX_PW=\'$myCONF_PFX_PW\'" >> $myCONF_FILE
echo "myCONF_PFX_HOST_ID=\"$myCONF_PFX_HOST_ID\"" >> $myCONF_FILE echo "myCONF_PFX_HOST_ID=\'$myCONF_PFX_HOST_ID\'" >> $myCONF_FILE
echo "myCONF_NTP_USE=\"$myCONF_NTP_USE\"" >> $myCONF_FILE echo "myCONF_NTP_USE=\'$myCONF_NTP_USE\'" >> $myCONF_FILE
echo "myCONF_NTP_IP=\"$myCONF_NTP_IP\"" >> $myCONF_FILE echo "myCONF_NTP_IP=\'$myCONF_NTP_IP\'" >> $myCONF_FILE
echo "myCONF_NTP_CONF_FILE=\"/root/installer/ntp.conf\"" >> $myCONF_FILE echo "myCONF_NTP_CONF_FILE=\'/root/installer/ntp.conf\'" >> $myCONF_FILE
# Let's download Ubuntu Minimal ISO # Let's download Ubuntu Minimal ISO
if [ ! -f $myUBUNTUISO ] if [ ! -f $myUBUNTUISO ]