#!/bin/sh # die in case of any error set -e # CONFIG: original zip file ZIPFILE_BEFORE="DUMP GIMPITALIA 2.zip" # CONFIG: what we find after extraction CONTENT_ARCHIVE_DIR="DUMP GIMPITALIA" CONTENT_ARCHIVE="gimpitalia.it.tar.bz2" CONTENT_DUMPONE="lazzameb_gimpitalia.sql" MARIADB_USER='lazzameb_gimpitalia' MARIADB_DBNM='lazzameb_gimpitalia' MARIADB_PSWD='' # CONFIG: webserver base document root WEB_DOCUMENT_ROOT="/var/www/html" # MUST to run apt install #sudo apt-get update # SHOULD: install security patches export DEBIAN_FRONTEND=noninteractive sudo apt-get upgrade --yes # MUST sudo apt-get install --yes apache2 libapache2-mod-php \ php-mysql \ php-xml \ php-mbstring \ php-curl \ php-gd \ php-zip # MUST: enable apache2 mod rewrite sudo a2enmod rewrite # MUST: load new modules sudo systemctl reload apache2 # SHOULD sudo apt-get install --yes mariadb-server unzip # MUST remove shit sudo rm --force /var/www/html/index.html # MUST extract shit unzip "$ZIPFILE_BEFORE" # MUST enter in the unzipped directory cd "$CONTENT_ARCHIVE_DIR" # MUST: extract shit in the unzipped directory tar -xf "$CONTENT_ARCHIVE" # MUST: move shit to the web document root sudo mv gimpitalia.it/* /var/www/html # MUST: hardening (and fix unexisting Unix users) sudo chown --recursive root: /var/www/html # MUST allow write on some directories sudo chown --recursive www-data: /var/www/html/cache/ sudo chown --recursive www-data: /var/www/html/backup/ sudo chown --recursive www-data: /var/www/html/logs/ sudo chown --recursive www-data: /var/www/html/images/ sudo chown --recursive www-data: /var/www/html/assets/ sudo chown --recursive www-data: /var/www/html/user/data/ sudo chown --recursive www-data: /var/www/html/tmp/ sudo chown --recursive www-data: /var/www/html/forum/cache/ # MUST create database and a dedicated user sudo mysql --execute="CREATE USER \`$MARIADB_USER\`@localhost IDENTIFIED BY '$MARIADB_PSWD'" sudo mysql --execute="CREATE DATABASE \`$MARIADB_DBNM\`" sudo mysql --execute="GRANT ALL PRIVILEGES ON \`$MARIADB_DBNM\`.* TO \`$MARIADB_USER\`@localhost" # MUST import database sudo mysql "$MARIADB_DBNM" < "$CONTENT_DUMPONE"