diff --git a/docs/03-scripts-automazione/migrate-to-vm-master.sh b/docs/03-scripts-automazione/migrate-to-vm-master.sh
new file mode 100755
index 00000000..2c1866cb
--- /dev/null
+++ b/docs/03-scripts-automazione/migrate-to-vm-master.sh
@@ -0,0 +1,257 @@
+#!/bin/bash
+# ๐ NETGESCON - MIGRAZIONE COMPLETA A VM MASTER
+# Creato: 19/07/2025 - Migrazione da Windows WSL a VM Linux
+
+set -e
+
+echo "๐ === NETGESCON - MIGRAZIONE COMPLETA A VM MASTER ==="
+echo "๐
$(date '+%Y-%m-%d %H:%M:%S')"
+echo ""
+
+# === CONFIGURAZIONI ===
+SOURCE_PATH="/home/michele/netgescon"
+TARGET_SERVER="192.168.0.200"
+TARGET_USER="michele"
+TARGET_PATH="/home/michele/netgescon"
+SSH_TARGET="$TARGET_USER@$TARGET_SERVER"
+
+echo "๐ Configurazione migrazione:"
+echo " Origine: $SOURCE_PATH (Windows WSL)"
+echo " Destinazione: $SSH_TARGET:$TARGET_PATH"
+echo " Server Master: $TARGET_SERVER"
+echo ""
+
+# === STEP 1: VERIFICA CONNESSIONE ===
+echo "๐ STEP 1: Verifica connessione e sistema target..."
+
+if ! ssh -o ConnectTimeout=10 "$SSH_TARGET" "echo 'Connessione OK'" >/dev/null 2>&1; then
+ echo "โ Impossibile connettersi a $SSH_TARGET"
+ echo " Verifica: rete, SSH, credenziali"
+ exit 1
+fi
+
+echo " โ
Connessione SSH OK"
+
+# Verifica sistema target
+ssh "$SSH_TARGET" << 'EOF'
+echo "๐ Informazioni sistema target:"
+echo " OS: $(lsb_release -d 2>/dev/null | cut -f2 || echo 'Linux')"
+echo " Kernel: $(uname -r)"
+echo " Spazio: $(df -h / | tail -1 | awk '{print $4}') disponibili"
+echo " RAM: $(free -h | grep Mem | awk '{print $7}') libera"
+EOF
+
+# === STEP 2: PREPARAZIONE AMBIENTE TARGET ===
+echo ""
+echo "๐ง STEP 2: Preparazione ambiente su VM target..."
+
+ssh "$SSH_TARGET" << 'EOF'
+# Aggiorna sistema
+sudo apt update
+
+# Installa strumenti essenziali
+sudo apt install -y git curl wget rsync build-essential
+
+# Installa stack LAMP base
+sudo apt install -y apache2 mysql-server php8.1 php8.1-mysql php8.1-xml php8.1-mbstring php8.1-zip php8.1-gd php8.1-curl php8.1-cli
+
+# Installa Composer
+if ! command -v composer &> /dev/null; then
+ curl -sS https://getcomposer.org/installer | php
+ sudo mv composer.phar /usr/local/bin/composer
+ sudo chmod +x /usr/local/bin/composer
+fi
+
+# Installa Node.js e npm
+if ! command -v node &> /dev/null; then
+ curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
+ sudo apt install -y nodejs
+fi
+
+# Crea directory di lavoro
+mkdir -p /home/michele/netgescon
+mkdir -p /var/www/netgescon
+mkdir -p /var/git
+
+echo "โ
Ambiente target preparato"
+EOF
+
+echo " โ
Ambiente VM preparato"
+
+# === STEP 3: TRASFERIMENTO COMPLETO ===
+echo ""
+echo "๐ฆ STEP 3: Trasferimento completo progetto..."
+
+# Prima sincronizzazione completa
+echo " ๐ Sincronizzazione rsync completa..."
+rsync -avz --progress \
+ --exclude='.git/objects' \
+ --exclude='*.tmp' \
+ --exclude='__pycache__' \
+ --exclude='venv' \
+ --exclude='node_modules' \
+ --exclude='.env' \
+ --exclude='storage/logs/*.log' \
+ "$SOURCE_PATH/" \
+ "$SSH_TARGET:$TARGET_PATH/"
+
+echo " โ
Trasferimento file completato"
+
+# === STEP 4: SETUP GIT SU TARGET ===
+echo ""
+echo "๐ง STEP 4: Setup Git su VM target..."
+
+ssh "$SSH_TARGET" << 'EOF'
+cd /home/michele/netgescon
+
+# Configura Git
+git config --global user.name "NetGescon Master VM"
+git config --global user.email "master@netgescon.local"
+git config --global init.defaultBranch master
+
+# Re-inizializza repository se necessario
+if [ ! -d ".git" ]; then
+ git init
+ git add .
+ git commit -m "๐ NETGESCON - Migrazione completa su VM Master
+
+๐ Migrazione da Windows WSL a VM Linux
+๐ Repository ricreato su server master
+๐
$(date '+%Y-%m-%d %H:%M:%S')
+๐ฏ Sistema pronto per sviluppo Linux nativo"
+else
+ # Se esiste giร , aggiungi eventuali nuovi file
+ git add .
+ if [ -n "$(git status --porcelain)" ]; then
+ git commit -m "๐ Sync da Windows WSL $(date '+%Y-%m-%d %H:%M:%S')"
+ fi
+fi
+
+echo "โ
Git configurato su VM target"
+EOF
+
+# === STEP 5: SETUP SERVER GIT GITEA ===
+echo ""
+echo "๐ข STEP 5: Setup server Git (Gitea) su VM..."
+
+# Trasferisce e esegue script setup Gitea
+scp "$SOURCE_PATH/docs/03-scripts-automazione/setup-git-server-master.sh" "$SSH_TARGET:/tmp/"
+
+ssh "$SSH_TARGET" << 'EOF'
+chmod +x /tmp/setup-git-server-master.sh
+
+# Esegue setup Gitea (richiede sudo)
+echo "๐ง Installazione Gitea server..."
+sudo /tmp/setup-git-server-master.sh
+
+echo "โ
Server Git configurato"
+EOF
+
+# === STEP 6: CONFIGURAZIONE LARAVEL ===
+echo ""
+echo "๐ง STEP 6: Configurazione Laravel su VM..."
+
+ssh "$SSH_TARGET" << 'EOF'
+cd /home/michele/netgescon/netgescon-laravel
+
+# Installa dipendenze Composer
+if [ -f "composer.json" ]; then
+ composer install --no-dev --optimize-autoloader
+fi
+
+# Copia e configura .env
+if [ ! -f ".env" ] && [ -f ".env.example" ]; then
+ cp .env.example .env
+ php artisan key:generate
+fi
+
+# Configura permessi
+sudo chown -R www-data:www-data storage bootstrap/cache
+sudo chmod -R 775 storage bootstrap/cache
+
+echo "โ
Laravel configurato"
+EOF
+
+# === STEP 7: CONFIGURAZIONE APACHE ===
+echo ""
+echo "๐ STEP 7: Configurazione Apache per NetGescon..."
+
+ssh "$SSH_TARGET" << 'EOF'
+# Configurazione VirtualHost Apache
+sudo tee /etc/apache2/sites-available/netgescon.conf > /dev/null << 'APACHE_CONF'
+
+ ServerName netgescon.local
+ DocumentRoot /home/michele/netgescon/netgescon-laravel/public
+
+
+ AllowOverride All
+ Require all granted
+
+
+ ErrorLog ${APACHE_LOG_DIR}/netgescon_error.log
+ CustomLog ${APACHE_LOG_DIR}/netgescon_access.log combined
+
+APACHE_CONF
+
+# Abilita sito e moduli
+sudo a2enmod rewrite
+sudo a2ensite netgescon
+sudo systemctl reload apache2
+
+echo "โ
Apache configurato"
+EOF
+
+# === STEP 8: TEST FINALE ===
+echo ""
+echo "๐งช STEP 8: Test configurazione finale..."
+
+ssh "$SSH_TARGET" << 'EOF'
+cd /home/michele/netgescon
+
+echo "๐ === RIEPILOGO CONFIGURAZIONE VM ==="
+echo "โ
Sistema: $(lsb_release -d 2>/dev/null | cut -f2 || echo 'Linux')"
+echo "โ
Git: $(git --version)"
+echo "โ
PHP: $(php --version | head -1)"
+echo "โ
Composer: $(composer --version | head -1)"
+echo "โ
Node.js: $(node --version)"
+echo "โ
Apache: $(apache2 -v | head -1)"
+echo ""
+
+echo "๐ Struttura progetto:"
+ls -la /home/michele/netgescon/
+echo ""
+
+echo "๐ Status Git:"
+git status --short
+echo ""
+
+echo "๐ Servizi attivi:"
+sudo systemctl is-active apache2 mysql gitea-docker-compose --no-pager
+EOF
+
+# === RIEPILOGO FINALE ===
+echo ""
+echo "๐ === RIEPILOGO MIGRAZIONE COMPLETA ==="
+echo "โ
VM target preparata e configurata"
+echo "โ
Progetto NetGescon trasferito completamente"
+echo "โ
Git repository configurato su VM"
+echo "โ
Server Git (Gitea) installato"
+echo "โ
Stack LAMP configurato"
+echo "โ
Laravel pronto per sviluppo"
+echo ""
+
+echo "๐ Accesso VM:"
+echo " SSH: ssh $SSH_TARGET"
+echo " Web: http://$TARGET_SERVER (NetGescon)"
+echo " Git: http://$TARGET_SERVER:3000 (Gitea)"
+echo ""
+
+echo "๐ Prossimi passi:"
+echo "1. ๐ Configurare DNS/hosts per netgescon.local"
+echo "2. ๐ง Completare setup Gitea via web"
+echo "3. ๐ Creare primo repository in Gitea"
+echo "4. ๐ Push del codice dal VM al Gitea locale"
+echo ""
+
+echo "๐ฏ Migrazione completata con successo!"
+echo "๐
$(date '+%Y-%m-%d %H:%M:%S')"
diff --git a/docs/03-scripts-automazione/migrate-vm-manual.sh b/docs/03-scripts-automazione/migrate-vm-manual.sh
new file mode 100755
index 00000000..9eebf0dd
--- /dev/null
+++ b/docs/03-scripts-automazione/migrate-vm-manual.sh
@@ -0,0 +1,129 @@
+#!/bin/bash
+# ๐ NETGESCON - MIGRAZIONE SEMPLIFICATA A VM
+# Creato: 19/07/2025 - Versione step-by-step manuale
+
+echo "๐ === NETGESCON - MIGRAZIONE A VM MASTER ==="
+echo "๐
$(date '+%Y-%m-%d %H:%M:%S')"
+echo ""
+
+TARGET_VM="192.168.0.200"
+TARGET_USER="michele"
+
+echo "๐ Piano migrazione a $TARGET_USER@$TARGET_VM:"
+echo ""
+
+echo "๐ง STEP 1: Preparazione ambiente VM"
+echo " Comandi da eseguire sulla VM (SSH):"
+echo ""
+echo " # Aggiorna sistema"
+echo " sudo apt update && sudo apt upgrade -y"
+echo ""
+echo " # Installa stack base"
+echo " sudo apt install -y git curl wget rsync build-essential"
+echo " sudo apt install -y apache2 mysql-server"
+echo " sudo apt install -y php8.1 php8.1-mysql php8.1-xml php8.1-mbstring php8.1-zip php8.1-gd php8.1-curl"
+echo ""
+echo " # Installa Composer"
+echo " curl -sS https://getcomposer.org/installer | php"
+echo " sudo mv composer.phar /usr/local/bin/composer"
+echo ""
+echo " # Crea directory"
+echo " mkdir -p /home/michele/netgescon"
+echo " sudo mkdir -p /var/www/netgescon"
+echo ""
+
+echo "๐ฆ STEP 2: Trasferimento file"
+echo " Da eseguire da questa macchina Windows:"
+echo ""
+echo " rsync -avz --progress \\"
+echo " --exclude='__pycache__' \\"
+echo " --exclude='venv' \\"
+echo " --exclude='node_modules' \\"
+echo " --exclude='.env' \\"
+echo " /home/michele/netgescon/ \\"
+echo " $TARGET_USER@$TARGET_VM:/home/michele/netgescon/"
+echo ""
+
+echo "๐ง STEP 3: Setup Git su VM"
+echo " Sulla VM dopo il trasferimento:"
+echo ""
+echo " cd /home/michele/netgescon"
+echo " git config --global user.name 'NetGescon Master VM'"
+echo " git config --global user.email 'master@netgescon.local'"
+echo " git add ."
+echo " git commit -m 'Migrazione completa su VM Master'"
+echo ""
+
+echo "๐ข STEP 4: Setup Gitea (server Git)"
+echo " Sulla VM:"
+echo ""
+echo " # Setup Gitea con Docker"
+echo " sudo docker run -d \\"
+echo " --name=gitea \\"
+echo " --restart=unless-stopped \\"
+echo " -p 3000:3000 \\"
+echo " -p 2222:22 \\"
+echo " -v /var/lib/gitea:/data \\"
+echo " gitea/gitea:latest"
+echo ""
+
+echo "๐ STEP 5: Configurazione Apache"
+echo " Sulla VM:"
+echo ""
+echo " # VirtualHost NetGescon"
+echo " sudo tee /etc/apache2/sites-available/netgescon.conf << 'EOF'"
+echo " "
+echo " ServerName netgescon.local"
+echo " DocumentRoot /home/michele/netgescon/netgescon-laravel/public"
+echo " "
+echo " AllowOverride All"
+echo " Require all granted"
+echo " "
+echo " "
+echo " EOF"
+echo ""
+echo " sudo a2enmod rewrite"
+echo " sudo a2ensite netgescon"
+echo " sudo systemctl reload apache2"
+echo ""
+
+echo "๐งช STEP 6: Test finale"
+echo " http://$TARGET_VM โ NetGescon"
+echo " http://$TARGET_VM:3000 โ Gitea"
+echo ""
+
+echo "๐ฏ Vuoi procedere con il trasferimento automatico? (y/N)"
+read -r response
+
+if [[ "$response" =~ ^[Yy]$ ]]; then
+ echo ""
+ echo "๐ Avvio trasferimento..."
+
+ echo "๐ฆ Trasferimento file con rsync..."
+ rsync -avz --progress \
+ --exclude='__pycache__' \
+ --exclude='venv' \
+ --exclude='node_modules' \
+ --exclude='.env' \
+ --exclude='*.log' \
+ /home/michele/netgescon/ \
+ "$TARGET_USER@$TARGET_VM:/home/michele/netgescon/"
+
+ echo ""
+ echo "โ
Trasferimento completato!"
+ echo ""
+ echo "๐ Prossimi passi manuali sulla VM:"
+ echo "1. SSH alla VM: ssh $TARGET_USER@$TARGET_VM"
+ echo "2. Setup ambiente: sudo apt install -y git apache2 mysql-server php8.1..."
+ echo "3. Configurazione Git nel progetto"
+ echo "4. Setup Gitea"
+ echo "5. Configurazione Apache"
+
+else
+ echo ""
+ echo "๐ Migrazione posticipata."
+ echo " Usa questo script come guida per i passi manuali."
+fi
+
+echo ""
+echo "๐
$(date '+%Y-%m-%d %H:%M:%S')"
diff --git a/docs/03-scripts-automazione/verify-vm-target.sh b/docs/03-scripts-automazione/verify-vm-target.sh
new file mode 100755
index 00000000..1fdb7e49
--- /dev/null
+++ b/docs/03-scripts-automazione/verify-vm-target.sh
@@ -0,0 +1,119 @@
+#!/bin/bash
+# ๐ NETGESCON - VERIFICA PRE-MIGRAZIONE
+# Creato: 19/07/2025 - Test connessione e preparazione
+
+echo "๐ === NETGESCON - VERIFICA PRE-MIGRAZIONE ==="
+echo "๐
$(date '+%Y-%m-%d %H:%M:%S')"
+echo ""
+
+TARGET_SERVER="192.168.0.200"
+TARGET_USER="michele"
+
+echo "๐ Test connessione a VM target: $TARGET_USER@$TARGET_SERVER"
+echo ""
+
+# Test connessione base
+echo "๐ Test 1: Connessione SSH..."
+if ssh -o ConnectTimeout=10 -o BatchMode=yes "$TARGET_USER@$TARGET_SERVER" "echo 'SSH OK'" 2>/dev/null; then
+ echo " โ
SSH con chiavi funziona"
+else
+ echo " โ ๏ธ SSH richiede password (normale)"
+ if ssh -o ConnectTimeout=10 "$TARGET_USER@$TARGET_SERVER" "echo 'SSH con password OK'"; then
+ echo " โ
SSH con password funziona"
+ else
+ echo " โ SSH non funziona - verificare rete/credenziali"
+ exit 1
+ fi
+fi
+
+# Test sistema target
+echo ""
+echo "๐ Test 2: Informazioni sistema target..."
+ssh "$TARGET_USER@$TARGET_SERVER" << 'EOF'
+echo " Sistema: $(lsb_release -d 2>/dev/null | cut -f2 || uname -s)"
+echo " Kernel: $(uname -r)"
+echo " Architettura: $(uname -m)"
+echo " Uptime: $(uptime | cut -d',' -f1)"
+echo " Spazio root: $(df -h / | tail -1 | awk '{print $4}') liberi"
+echo " RAM libera: $(free -h | grep Mem | awk '{print $7}')"
+echo " Utente: $(whoami)"
+echo " Home: $HOME"
+EOF
+
+# Test permessi sudo
+echo ""
+echo "๐ Test 3: Permessi sudo..."
+if ssh "$TARGET_USER@$TARGET_SERVER" "sudo -n true" 2>/dev/null; then
+ echo " โ
Sudo senza password configurato"
+else
+ echo " โ ๏ธ Sudo richiede password (normale per sicurezza)"
+fi
+
+# Test dipendenze base
+echo ""
+echo "๐ฆ Test 4: Dipendenze presenti..."
+ssh "$TARGET_USER@$TARGET_SERVER" << 'EOF'
+echo -n " Git: "
+if command -v git &> /dev/null; then
+ echo "โ
$(git --version | cut -d' ' -f3)"
+else
+ echo "โ Non installato"
+fi
+
+echo -n " Curl: "
+if command -v curl &> /dev/null; then
+ echo "โ
Presente"
+else
+ echo "โ Non installato"
+fi
+
+echo -n " Docker: "
+if command -v docker &> /dev/null; then
+ echo "โ
$(docker --version | cut -d' ' -f3 | tr -d ',')"
+else
+ echo "โ Non installato"
+fi
+
+echo -n " Apache: "
+if command -v apache2 &> /dev/null; then
+ echo "โ
$(apache2 -v | head -1 | cut -d' ' -f3)"
+else
+ echo "โ Non installato"
+fi
+
+echo -n " PHP: "
+if command -v php &> /dev/null; then
+ echo "โ
$(php --version | head -1 | cut -d' ' -f2)"
+else
+ echo "โ Non installato"
+fi
+EOF
+
+# Test porte disponibili
+echo ""
+echo "๐ Test 5: Porte disponibili..."
+ssh "$TARGET_USER@$TARGET_SERVER" << 'EOF'
+echo " Porte in ascolto:"
+ss -tlnp | grep -E ":(80|3000|3306|22)" | while read line; do
+ port=$(echo $line | awk '{print $4}' | cut -d':' -f2)
+ echo " - Porta $port: occupata"
+done
+
+# Test porte libere importanti
+for port in 80 3000 3306; do
+ if ! ss -tln | grep -q ":$port "; then
+ echo " - Porta $port: โ
libera"
+ fi
+done
+EOF
+
+echo ""
+echo "๐ === RIEPILOGO VERIFICA ==="
+echo "โ
Connessione SSH verificata"
+echo "โ
Sistema target accessibile"
+echo "โ
Informazioni raccolte"
+echo ""
+
+echo "๐ Pronto per migrazione!"
+echo " Eseguire: ./docs/03-scripts-automazione/migrate-to-vm-master.sh"
+echo ""