From 7ed2696e697225a1b9374efa55598a8d7fe84934 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sat, 13 Jul 2024 14:24:16 -0300 Subject: Fix: scripts: split between provision and provision-host --- kvmxfile | 4 +++- scripts/provision | 46 +------------------------------------ scripts/provision-host | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 66 insertions(+), 46 deletions(-) create mode 100755 scripts/provision-host diff --git a/kvmxfile b/kvmxfile index 2ce20db..ea6ab02 100644 --- a/kvmxfile +++ b/kvmxfile @@ -12,7 +12,9 @@ shared_folders="shared:.:/srv/shared" # Absolute path for a provision script located inside the guest. # Needs ssh_support set to "y" and a workable SSH connection to the guest. -provision_command="/usr/local/share/kvmx/provision/debian/development && /srv/shared/scripts/provision" +provision_command="/usr/local/share/kvmx/provision/debian/development" +provision_command="$provision_command && /srv/shared/scripts/provision" +provision_command="$provision_command && /srv/shared/scripts/provision-host" # Startup command startup_command="hydractl aperiodic-upgrade" diff --git a/scripts/provision b/scripts/provision index a211e40..2798ea4 100755 --- a/scripts/provision +++ b/scripts/provision @@ -7,10 +7,7 @@ DIRNAME="`dirname $0`" # Basic dependencies -DEPENDENCIES="make pandoc tor" - -# Dependenicies for genesis-get -#DEPENDENCIES="$DEPENDENCIES tor python3-requests python3-bs4 python3-socks python3-pybtex python3-tqdm" +DEPENDENCIES="make pandoc" # PyPI dependencies #DEPENDENCIES_PIP="" @@ -23,44 +20,3 @@ sudo apt install -y $DEPENDENCIES # Install python dependencies #pip3 install $DEPENDENCIES_PIP - -# Configure an onion service -trashman install tor-onion-service - -# Configure virtual host for the Onion Service -cat <<-EOF | sudo tee /etc/apache2/sites-available/onion.conf > /dev/null - - ServerName localhost - ServerAlias *.onion - DocumentRoot "/srv/shared/" - - - AuthType Basic - AuthName "Protected" - AuthUserFile /srv/shared/.htpasswd - Require valid-user - - -EOF - -# Configure virtual host for the local service -cat <<-EOF | sudo tee /etc/apache2/sites-available/local.conf > /dev/null - - ServerName slides.local - DocumentRoot "/srv/shared/" - - - Options Indexes FollowSymLinks - AllowOverride All - Require all granted - - -EOF - -# Enable virtual host -sudo a2ensite onion local -sudo systemctl reload apache2 - -# Configure PATH -mkdir -p ~/.custom -echo 'export PATH=$PATH:/srv/shared/scripts' > ~/.custom/profile diff --git a/scripts/provision-host b/scripts/provision-host new file mode 100755 index 0000000..12cbe52 --- /dev/null +++ b/scripts/provision-host @@ -0,0 +1,62 @@ +#!/bin/bash +# +# Provisioner for the hosting environment +# + +# Parameters +DIRNAME="`dirname $0`" + +# Check for sudo +if [ "`whoami`" != "root" ]; then + SUDO="sudo" +fi + +# Install Apache +$SUDO apt install -y apache2 + +# Tor +trashman install tor + +# Configure an onion service +trashman install tor-onion-service + +# Install python dependencies +#pip3 install $DEPENDENCIES_PIP + +# Configure virtual host for the Onion Service +cat <<-EOF | $SUDO tee /etc/apache2/sites-available/onion.conf > /dev/null + + ServerName slides.onion + ServerAlias slides.*.onion + DocumentRoot "/srv/shared/" + + + AuthType Basic + AuthName "Protected" + AuthUserFile /srv/shared/.htpasswd + Require valid-user + + +EOF + +# Configure virtual host for the local service +cat <<-EOF | $SUDO tee /etc/apache2/sites-available/local.conf > /dev/null + + ServerName slides.local + DocumentRoot "/srv/shared/" + + + Options Indexes FollowSymLinks + AllowOverride All + Require all granted + + +EOF + +# Enable virtual host +$SUDO a2ensite onion local +$SUDO systemctl reload apache2 + +# Configure PATH +#mkdir -p ~/.custom +#echo 'export PATH=$PATH:/srv/shared/scripts' > ~/.custom/profile -- cgit v1.2.3