summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjerome <jerome@xlinfo.fr>2026-01-23 13:15:35 +0100
committerjerome <jerome@xlinfo.fr>2026-01-23 13:15:35 +0100
commit6d79ba39bc41812fa3bb0e8e711a61ce9ab01891 (patch)
tree77760a31cd8c628c0a9cfb04a713ce0daa89b789
downloadwordpress-6d79ba39bc41812fa3bb0e8e711a61ce9ab01891.tar.gz
wordpress-6d79ba39bc41812fa3bb0e8e711a61ce9ab01891.zip
Commit initialHEADmaster
-rwxr-xr-xinstall_wordpress92
-rwxr-xr-xsauvegarde_wordpress9
2 files changed, 101 insertions, 0 deletions
diff --git a/install_wordpress b/install_wordpress
new file mode 100755
index 0000000..3794b7c
--- /dev/null
+++ b/install_wordpress
@@ -0,0 +1,92 @@
+#!/bin/bash
+
+user="bob"
+pass="leponge"
+
+useradd $user -m -s /usr/sbin/nologin -G sftp
+echo $user:$pass | chpasswd 2>/dev/null
+
+chmod 755 /home/$user
+chown root:root /home/$user
+mkdir /home/$user/{public_html,mail}
+chown -R $user:$user /home/$user/*
+
+echo "Téléchargement et installation de la dernière version de wordpress..."
+echo
+
+# Téléchargement de wordpress français latest
+cd /home/$user/public_html
+wget https://fr.wordpress.org/latest-fr_FR.zip
+
+# Décompression de wordpress
+unzip -q -o latest-fr_FR.zip
+rm -f latest-fr_FR.zip
+
+# Changement propriétaire wordpress
+chown -R $user:$user wordpress
+
+# Ecriture du virtual host Apache
+cat > /etc/apache2/sites-available/$user.conf << EOF
+<VirtualHost *:80>
+ ServerName $user.domain.lan
+ RewriteEngine On
+ RewriteCond %{HTTPS} off
+ RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
+</VirtualHost>
+EOF
+
+# Ecriture du virtual host SSL Apache
+cat > /etc/apache2/sites-available/${user}-ssl.conf << EOF
+<VirtualHost *:443>
+ ServerName $user.domain.lan
+ DocumentRoot /home/$user/public_html/wordpress
+ <Directory /home/$user/public_html/wordpress>
+ AllowOverride All
+ </Directory>
+ SSLEngine on
+ SSLCertificateFile /etc/apache2/apache.pem
+ SSLCertificateKeyFile /etc/apache2/apache.key
+</VirtualHost>
+EOF
+
+# Activation des virtualhost wordpress
+a2ensite $user > /dev/null
+a2ensite ${user}-ssl > /dev/null
+
+# Rechargement Apache
+systemctl reload apache2
+
+# Création de la base de données wordpress
+mariadb << EOF
+create database if not exists $user;
+create user if not exists ${user}@localhost identified by "$pass";
+grant all privileges on ${user}.* to ${user}@localhost;
+flush privileges;
+EOF
+
+# Remplissage du fichier wp-config.php
+cp wordpress/wp-config-sample.php wordpress/wp-config.php
+sed -i "s/database_name_here/${user}/" wordpress/wp-config.php
+sed -i "s/username_here/${user}/" wordpress/wp-config.php
+sed -i "s/password_here/${pass}/" wordpress/wp-config.php
+
+# Ajout cname dynamique
+nsupdate << EOF
+server 127.0.0.1
+zone domain.lan
+update add ${user}.domain.lan. 604800 in cname debian.domain.lan.
+send
+EOF
+
+
+# Fin de l'installation
+mail ${user}@domain.lan -s "Votre site Wordpress" << EOF
+Bonjour,
+L'installation de votre site wordpress est terminée et doit être finalisée sur https://${user}.domain.lan.
+Vous avez accès à vos mails sur https://${user}.domain.lan/roundcube, à votre base de données sur https://${user}.domain.lan/phpmyadmin et à vos fichier avec un client sftp sur ${user}.domain.lan
+login: $user
+mot de passe: $pass
+Cordialement,
+L'équipe de domain.lan
+EOF
+
diff --git a/sauvegarde_wordpress b/sauvegarde_wordpress
new file mode 100755
index 0000000..9ec24e8
--- /dev/null
+++ b/sauvegarde_wordpress
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+cd /home
+for user in *;do
+ tar -czf /var/backups/${user}-$(date -I).tgz $user
+ mysqldump $user > /var/backups/${user}-$(date -I).sql
+ find /var/backups -name "$user*" -mtime +30 -exec rm -f {} \;
+done
+