mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2026-05-06 22:27:19 +02:00
157 lines
3.6 KiB
Bash
157 lines
3.6 KiB
Bash
|
|
#!/usr/bin/env bash
|
|||
|
|
# install/venvsetup part 5 – argument_mode and main flow
|
|||
|
|
|
|||
|
|
argument_mode() {
|
|||
|
|
KEY_SIZE=${#VERSION}
|
|||
|
|
TMP=$(echo $VERSION | cut -c5)
|
|||
|
|
TMP2=$(echo $VERSION | cut -c10)
|
|||
|
|
TMP3=$(echo $VERSION | cut -c15)
|
|||
|
|
if [[ $VERSION == "OLS" || $VERSION == "ols" ]] ; then
|
|||
|
|
VERSION="OLS"
|
|||
|
|
echo -e "\nSet to OpenLiteSpeed..."
|
|||
|
|
elif [[ $VERSION == "Trial" ]] || [[ $VERSION == "TRIAL" ]] || [[ $VERSION == "trial" ]] ; then
|
|||
|
|
VERSION="ENT"
|
|||
|
|
LICENSE_KEY="TRIAL"
|
|||
|
|
echo -e "\nLiteSpeed Enterprise trial license set..."
|
|||
|
|
elif [[ $TMP == "-" ]] && [[ $TMP2 == "-" ]] && [[ $TMP3 == "-" ]] && [[ $KEY_SIZE == "19" ]] ; then
|
|||
|
|
LICENSE_KEY=$VERSION
|
|||
|
|
VERSION="ENT"
|
|||
|
|
echo -e "\nLiteSpeed Enterprise license key set..."
|
|||
|
|
else
|
|||
|
|
echo -e "\nCan not recognize the input value \e[31m$VERSION\e[39m "
|
|||
|
|
echo -e "\nPlease verify the input value..."
|
|||
|
|
echo -e "\nPlease run with \e[31m-h\e[39m or \e[31m--help\e[39m for more detail."
|
|||
|
|
exit
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
if [[ $ADMIN_PASS == "d" ]] ; then
|
|||
|
|
ADMIN_PASS="1234567"
|
|||
|
|
echo -e "\nSet to default password..."
|
|||
|
|
echo -e "\nAdmin password will be set to \e[31m$ADMIN_PASS\e[39m"
|
|||
|
|
elif [[ $ADMIN_PASS == "r" ]] ; then
|
|||
|
|
ADMIN_PASS=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 16 ; echo '')
|
|||
|
|
echo -e "\nSet to random-generated password..."
|
|||
|
|
echo -e "\nAdmin password will be set to \e[31m$ADMIN_PASS\e[39m"
|
|||
|
|
echo $ADMIN_PASS
|
|||
|
|
else
|
|||
|
|
echo -e "\nAdmin password will be set to \e[31m$ADMIN_PASS\e[39m"
|
|||
|
|
fi
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if [ $# -eq 0 ] ; then
|
|||
|
|
echo -e "\nInitializing...\n"
|
|||
|
|
else
|
|||
|
|
if [[ $1 == "help" ]] ; then
|
|||
|
|
show_help
|
|||
|
|
exit
|
|||
|
|
elif [[ $1 == "dev" ]] ; then
|
|||
|
|
DEV="ON"
|
|||
|
|
DEV_ARG="ON"
|
|||
|
|
SILENT="OFF"
|
|||
|
|
elif [[ $1 == "default" ]] ; then
|
|||
|
|
echo -e "\nThis will start default installation...\n"
|
|||
|
|
SILENT="ON"
|
|||
|
|
POSTFIX_VARIABLE="ON"
|
|||
|
|
POWERDNS_VARIABLE="ON"
|
|||
|
|
PUREFTPD_VARIABLE="ON"
|
|||
|
|
VERSION="OLS"
|
|||
|
|
ADMIN_PASS="1234567"
|
|||
|
|
MEMCACHED="ON"
|
|||
|
|
REDIS="ON"
|
|||
|
|
else
|
|||
|
|
while [ ! -z "${1}" ]; do
|
|||
|
|
case $1 in
|
|||
|
|
-v | --version) shift
|
|||
|
|
if [ "${1}" = '' ]; then
|
|||
|
|
show_help
|
|||
|
|
exit
|
|||
|
|
else
|
|||
|
|
VERSION="${1}"
|
|||
|
|
SILENT="ON"
|
|||
|
|
fi
|
|||
|
|
;;
|
|||
|
|
-p | --password) shift
|
|||
|
|
if [[ "${1}" == '' ]]; then
|
|||
|
|
ADMIN_PASS="1234567"
|
|||
|
|
elif [[ "${1}" == 'r' ]] || [[ $1 == 'random' ]] ; then
|
|||
|
|
ADMIN_PASS=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 16 ; echo '')
|
|||
|
|
else
|
|||
|
|
if [ ${1} -lt 8 ] ; then
|
|||
|
|
echo -e "\nPassword lenth less than 8 digital, please choose a more complicated password.\n"
|
|||
|
|
exit
|
|||
|
|
fi
|
|||
|
|
ADMIN_PASS="${1}"
|
|||
|
|
fi
|
|||
|
|
;;
|
|||
|
|
-a | --addons)
|
|||
|
|
MEMCACHED="ON"
|
|||
|
|
REDIS="ON"
|
|||
|
|
;;
|
|||
|
|
-m | --minimal)
|
|||
|
|
echo "minimal installation is still work in progress..."
|
|||
|
|
exit
|
|||
|
|
;;
|
|||
|
|
-h | --help)
|
|||
|
|
show_help
|
|||
|
|
exit
|
|||
|
|
;;
|
|||
|
|
*)
|
|||
|
|
echo "unknown argument..."
|
|||
|
|
show_help
|
|||
|
|
exit
|
|||
|
|
;;
|
|||
|
|
esac
|
|||
|
|
shift
|
|||
|
|
done
|
|||
|
|
fi
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
SERVER_IP=$(curl --silent --max-time 10 -4 https://cyberpanel.sh/?ip)
|
|||
|
|
if [[ $SERVER_IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
|||
|
|
echo -e "Valid IP detected..."
|
|||
|
|
else
|
|||
|
|
echo -e "Can not detect IP, exit..."
|
|||
|
|
exit
|
|||
|
|
fi
|
|||
|
|
SERVER_COUNTRY="unknow"
|
|||
|
|
SERVER_COUNTRY=$(curl --silent --max-time 5 https://cyberpanel.sh/?country)
|
|||
|
|
if [[ ${#SERVER_COUNTRY} == "2" ]] || [[ ${#SERVER_COUNTRY} == "6" ]] ; then
|
|||
|
|
echo -e "\nChecking server..."
|
|||
|
|
else
|
|||
|
|
echo -e "\nChecking server..."
|
|||
|
|
SERVER_COUNTRY="unknow"
|
|||
|
|
fi
|
|||
|
|
#SERVER_COUNTRY="CN"
|
|||
|
|
#test string
|
|||
|
|
if [[ $SERVER_COUNTRY == "CN" ]] ; then
|
|||
|
|
DOWNLOAD_SERVER="cyberpanel.sh"
|
|||
|
|
else
|
|||
|
|
DOWNLOAD_SERVER="cdn.cyberpanel.sh"
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
check_OS
|
|||
|
|
check_root
|
|||
|
|
check_panel
|
|||
|
|
check_process
|
|||
|
|
check_provider
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
if [[ $SILENT = "ON" ]] ; then
|
|||
|
|
argument_mode
|
|||
|
|
else
|
|||
|
|
interactive_mode
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
SECONDS=0
|
|||
|
|
install_required
|
|||
|
|
|
|||
|
|
pip_virtualenv
|
|||
|
|
|
|||
|
|
system_tweak
|
|||
|
|
|