########################## # 0. Variables à adapter # ########################## DOMAIN="xxx.agoralogie.fr" PATHWWW="pathxxx" DB_PASS="123456789" NC_ADMIN="adminncyyy" NC_ADMIN_PASS="azerty" DB_NAME="bsnczzzzz" DB_USR="usrnczzzzz" TURN_SECRET=$(openssl rand -hex 32) # ou définissez votre propre secret EMAIL="postmaster@$DOMAIN" # pour Let’s Encrypt ########################## # 1. Mises à jour système ########################## apt-get update apt-get -y install vim git wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list apt-get update echo "PATH=\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"" >>/root/.bashrc source /root/.bashrc ############################ # 2. Paquets indispensables ############################ apt install -y apache2 mariadb-server \ php8.2-{fpm,cli,common,gd,imagick,mbstring,intl,xml,zip,curl,bcmath,imap,mysql} \ libapache2-mod-fcgid unzip ufw certbot python3-certbot-apache coturn bzip2 php-xml ########################### # 3. Base de données MariaDB ########################### mysql -u root </etc/apache2/sites-available/$DOMAIN.conf ServerName $DOMAIN DocumentRoot /var/www/$PATHWWW Require all granted AllowOverride All Options FollowSymLinks MultiViews ErrorLog \${APACHE_LOG_DIR}/$DOMAIN-error.log CustomLog \${APACHE_LOG_DIR}/$DOMAIN-access.log combined SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost" APACHE a2enmod rewrite headers env dir mime ssl http2 proxy_fcgi setenvif a2ensite $DOMAIN.conf systemctl reload apache2 ######################################## # 7. HTTPS Let’s Encrypt (Certbot) ######################################## certbot --apache --non-interactive --agree-tos -m "$EMAIL" -d "$DOMAIN" --redirect php /var/www/$PATHWWW/occ maintenance:install \ --database "mysql" --database-name $DB_NAME \ --database-user $DB_USR --database-pass "$DB_PASS" \ --admin-user "$NC_ADMIN" --admin-pass "$NC_ADMIN_PASS" \ --data-dir "/var/www/$PATHWWW-data" sed -Ei "s/^\);/ 'encryption_enabled' => true ); /" /var/www/$PATHWWW/config/config.php sed -Ei "s/.*0 =.*/ 0 => '*' /" /var/www/$PATHWWW/config/config.php chown -R www-data:www-data $PATHWWW