403Webshell
Server IP : 104.129.129.72  /  Your IP : 216.73.216.229
Web Server : LiteSpeed
System : Linux 123answers 5.15.0-143-generic #153-Ubuntu SMP Fri Jun 13 19:10:45 UTC 2025 x86_64
User : answe8064 ( 1002)
PHP Version : 8.2.28
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /opt/installer/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/installer/installer-contrib-cloudron-latest-offirepo
#!/bin/bash


if [ -f "include/startup.sh" ]; then
	. include/startup.sh
	chmod -R u+x *
	
elif [ -f "../include/startup.sh" ]; then
	. ../include/startup.sh
	chmod -R u+x ../*
fi

export DEBIAN_FRONTEND=noninteractive

install_apache() {
	echo "Installing apache2..." | log
	apt update && apt install -y apache2

	echo "Installing passenger module for apache2..." | log
	apt install -y libapache2-mod-passenger
}

idxHTMLPath="/var/www/html"
if [ ! -d "$idxHTMLPath" ]; then
    mkdir -p "$idxHTMLPath"
fi

if [ -f "$idxHTMLPath/index.html" ]; then
	rm -f "$idxHTMLPath/index.html"
fi

confPath="/etc/apache2/sites-available"
if [ ! -d "$confPath" ]; then
	mkdir -p "$confPath"

fi

# Define variables
update_status="include/updateInstallStatus.sh"
web_path="/var/www/html"
logo_img_root="include/Logos"
logo_img_name="CloudRon_logo.png"
logo_img_root_path="$logo_img_root/$logo_img_name"
html_path="/var/www/html/index.html"
local_html_path="include/index.html"

install_apache

if [ ! -d "$web_path" ]; then
	mkdir -p "$web_path"
fi
	
echo "Writing apache configuration file..." | log
cat <<_EOF_ > /etc/apache2/sites-available/installProgress.conf
<VirtualHost *:80>
	ServerName _
	DocumentRoot $idxHTMLPath
	
	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
	
</VirtualHost>
<VirtualHost *:443>
	ServerName _
	DocumentRoot $idxHTMLPath

	SSLEngine on
	SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
	SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key

</VirtualHost>
_EOF_

echo "Copying HTML related files..."
cp -r "$local_html_path" "$html_path"
cp -r "$logo_img_root_path" "$web_path/$logo_img_name"
chmod 644 "$web_path/$logo_img_name"

a2enmod ssl
a2dissite 000-default
a2ensite installProgress
systemctl start apache2

"$update_status" "$html_path" -uf "$logo_img_name"
"$update_status" "$html_path" -ut "CloudRon Installation"
"$update_status" "$html_path" -ui "$logo_img_name"
"$update_status" "$html_path" -uh "CloudRon Installation"
"$update_status" "$html_path" -rp "Initializing setup..."

tag httpd.success
tag apache.success

# Define execute list
declare -a steps=(
	"tweaks/cwm-settimezone"
	"tweaks/ubuntu-sysctl-swap"
	"include/checkInternetConnectivity"
	"tweaks/ubuntu-disable-openssl-randfile"
	"tweaks/ubuntu-ufw-enable"
	"tweaks/ubuntu-ufw-allowhttp"
	"tweaks/apache-enable-ssl"
	"tweaks/ubuntu-updateos-noupgrade"
	
)

UBUNTU_VERSION=$(lsb_release -rs)
if [[ "$UBUNTU_VERSION" == "22.04" ]]; then
	steps+=("apps/cloudron-latest-offirepo-22.04")
	
elif [[ "$UBUNTU_VERSION" == "24.04" ]]; then
	steps+=("apps/cloudron-latest-offirepo-24.04")
	
else
	echo "[ERROR] Unsupported Ubuntu version: $UBUNTU_VERSION"
	exit 1
fi

for run in "${steps[@]}"; do
	printf "Executing %s\n" "$run" | log
	if ! $run; then
		script_exit_code=$?
		printf "Exit Code: %d\n" "$script_exit_code" | log

		case "$script_exit_code" in
			0)   printf "Done. (0)\n" | log ;;
			
			1)   printf "Error during %s. Exiting.\n" "$run" | log
				 return 1
				 ;;
				 
			98)  printf "Exit Code 98. Script already executed, can run only once. Continuing. (98)\n" | log ;;
			
			99)  printf "Exit Code 99. Continuing. (99)\n" | log ;;
			
			127) printf "Error. %s not found. Exiting. (127)\n" "$run" | log
				 return 1
				 ;;
			*)   printf "Exit Code not configured. Exiting. (%d)\n" "$script_exit_code" | log
				 return 1
				 ;;
		esac
	fi

	if [[ "$run" == "apps/cloudron-latest-offirepo" ]]; then
		return 0
	fi
done

tag Script.success

Youez - 2016 - github.com/yon3zu
LinuXploit