# Esempio di documentazione di passaggio di consegne

Ecco il set che resta al cliente dopo il nostro lavoro: per un tipico sito aziendale su WordPress, su hosting condiviso. Nomi, indirizzi e cifre sono esempi, il layout e l’ambito sono reali. Tutto vive nel repository del cliente come Markdown e configurazione scritta come codice; password e chiavi mai nel repository, solo nel password manager del cliente.

## Cosa comprende il passaggio di consegne

- Scheda del servizio: cos’è, su cosa gira, chi è responsabile di cosa e quanto costa.
- Registro degli accessi: chi ha accesso a cosa, come e quando viene rivisto.
- Backup e ripristino: cosa, con quale frequenza, dove, e la procedura di ripristino verificata in un test.
- Procedure di emergenza: sintomi, passaggi, escalation, contatti.
- Aggiornamenti e modifiche: ritmo, ambiente di test, registro delle modifiche.
- Monitoring: cosa viene controllato, chi riceve gli alert.
- Checklist di accettazione: cosa deve essere soddisfatto perché il passaggio di consegne sia considerato concluso.

## 1. Scheda del servizio

| Campo | Valore (esempio) |
| --- | --- |
| Servizio | Sito aziendale `example.pl` |
| Piattaforma | WordPress 6.x, PHP 8.3, MariaDB 10.11; tema personalizzato, 11 plugin (elenco in `plugins.md`) |
| Hosting | Hosting condiviso, account `example-prod`, server `s12.hosting.example`, PHP e database nel pannello del provider |
| Domini e DNS | `example.pl`, `www.example.pl`; registrar: provider A, rinnovo 14.03.2027; DNS: Cloudflare, zona `example.pl` |
| Certificato | Let’s Encrypt, rinnovato automaticamente; controllo del monitoring 30 giorni prima della scadenza |
| Posta | Google Workspace; record MX, SPF, DKIM e DMARC nel DNS (esportazione in `dns/example.pl.zone`) |
| Moduli | Modulo di contatto e di candidatura, invio tramite SMTP del provider di posta a `kontakt@example.pl`, copia al CRM |
| Integrazioni | Statistiche delle visite (proprie, senza cookie), newsletter, mappa con le indicazioni stradali, CRM |
| Referente business | Nome e cognome, ruolo, contatto |
| Referente tecnico | Nome e cognome lato cliente; Kol.ski nell’ambito del contratto di manutenzione |
| Costi mensili | Hosting 49 PLN, dominio 8 PLN, 2 plugin premium 35 PLN, backup fuori dall’hosting 6 PLN |

## 2. Registro degli accessi

Accesso sempre nominativo, con autenticazione a due fattori ovunque il provider la offra. Account condivisi eliminati il giorno del passaggio di consegne. Elenco rivisto ogni trimestre e il giorno in cui termina ogni collaborazione.

| Risorsa | Chi | Tipo di accesso | Dove è conservato | Ultima revisione |
| --- | --- | --- | --- | --- |
| Pannello hosting | Referente tecnico, reperibilità Kol.ski | Account nominativi, 2FA | Password manager del cliente | 2026-10-01 |
| SFTP e SSH | Reperibilità Kol.ski | Chiavi nominative, senza password | Chiavi presso i titolari, pubbliche in `access/keys.md` | 2026-10-01 |
| Database | Applicazione; account amministrativo | Account dell’applicazione solo sul proprio database | `wp-config.php` sul server; password manager | 2026-10-01 |
| WordPress | 2 amministratori, 3 redattori | Ruoli WordPress, 2FA per gli amministratori | Password manager del cliente | 2026-10-01 |
| Registrar del dominio | Solo referente business | Account del titolare, 2FA | Password manager del cliente | 2026-10-01 |
| DNS | Referente tecnico, reperibilità Kol.ski | Ruoli: modifica della zona, senza accesso alla fatturazione | Password manager del cliente | 2026-10-01 |
| Repository | Referente tecnico, Kol.ski | Account nominativi, chiavi SSH | Provider del repository del cliente | 2026-10-01 |
| Revocati | Agenzia precedente: 4 account, 1 chiave SSH, 1 account FTP | Rimossi il 2026-09-15 | Conferma in `access/log.md` | – |

## 3. Backup e ripristino

### Cosa e con quale frequenza

Database ogni giorno, file `wp-content` ogni giorno in modo incrementale, copia completa una volta a settimana, copia della configurazione (`wp-config.php`, `.htaccess`, esportazione della zona DNS) dopo ogni modifica. Retention: 30 copie giornaliere e 12 mensili.

### Dove

Fuori dall’hosting, in uno storage a oggetti sull’account del cliente, cifrate. Una seconda copia presso il provider di hosting, considerata aggiuntiva, non unica. Una copia sullo stesso server del sito non è un backup.

### Obiettivi

Perdita di dati ammissibile (RPO): 24 ore. Tempo di ripristino (RTO): 1 ora, confermato da un test. Ultimo test di ripristino: 2026-10-07, su ambiente di test, 25 minuti, risultato in `backups/restore-tests.md`.

## Procedura di ripristino

1. Blocca le modifiche: modalità manutenzione in produzione, avviso al referente business.
2. Scarica la copia dallo storage a oggetti (la più recente o quella indicata) e verifica i checksum.
3. Ripristina il database in un nuovo database e i file in una directory temporanea, confronta con la produzione.
4. Sostituisci la directory e punta `wp-config.php` al nuovo database; svuota la cache.
5. Esegui la checklist della sezione 5: pagina iniziale, sottopagine, login, modulo, posta, certificato.
6. Annota in `backups/restore-tests.md`: data, copia, durata, chi, risultato. Disattiva la modalità manutenzione.

## 4. Procedure di emergenza

Ogni procedura ha sintomi, passaggi ed escalation. Un guasto critico è un sito non raggiungibile, un’intrusione o una fuga di dati; si segnala per telefono, 24 ore su 24, con risposta entro 15 minuti. Altre segnalazioni: e-mail o modulo in orario 8–20, risposta entro un’ora.

### Il sito non risponde

Controlla lo stato dell’hosting e il monitoring: è il server, il DNS o il certificato. Server: segnalazione al provider con il numero di account, nel frattempo pagina sostitutiva dalla cache. DNS o certificato: procedura qui sotto. Nessuna causa trovata dopo 30 minuti: ripristino dal backup sull’hosting di riserva.

### Intrusione o modifica sospetta

Isola: cambio delle password amministrative, logout di tutte le sessioni, modalità manutenzione. Preserva: copia dello stato attuale per l’analisi, senza sovrascrivere con essa i backup regolari. Ripristina dall’ultima copia pulita, aggiorna tutto, confronta i file con il repository. Avvisa il referente business; in presenza di dati personali, valutazione della notifica all’autorità di controllo (UODO) entro 72 ore.

### Certificato o dominio in scadenza

Il monitoring avvisa 30 giorni prima. Certificato: forzare il rinnovo nel pannello hosting, verificare la catena. Dominio: rinnovo da parte del referente business presso il registrar, contatto nella scheda del servizio; dopo la scadenza c’è il periodo di grazia del provider, non aspettarlo.

### I moduli non arrivano

Invia una segnalazione di prova, controlla il log di invio del plugin e la casella SMTP. Il più delle volte: record SPF o DKIM modificato, password dell’app scaduta, limite del provider di posta. Fino alla riparazione reindirizza il modulo a una casella di riserva e informa il referente business della lacuna nelle segnalazioni.

### Errore dopo un aggiornamento

Ogni aggiornamento ha una copia precedente. Riporta il plugin o il tema alla versione precedente dalla copia, disattiva la cache, esegui la checklist. Segnala il bug all’autore del plugin, annotalo nel registro delle modifiche, ripeti l’aggiornamento dopo la correzione sull’ambiente di test.

## Contatti ed escalation

| Quando | Chi | Come |
| --- | --- | --- |
| Guasto critico | Reperibilità Kol.ski | Telefono, 24 ore su 24; risposta entro 15 minuti |
| Altre segnalazioni | Kol.ski | E-mail o modulo, 8–20; risposta entro un’ora |
| Problema lato server | Provider di hosting | Pannello di assistenza, numero di account `example-prod`; SLA del provider 4 ore |
| Dominio | Registrar | Account del referente business |
| Decisioni di business, comunicazione ai clienti | Referente business | Telefono dalla scheda del servizio |

## 5. Aggiornamenti e modifiche

- Core di WordPress, plugin e tema: revisione ogni settimana, aggiornamenti prima sull’ambiente di test (copia della produzione del giorno), poi in produzione in una finestra, con copia precedente.
- Aggiornamenti di sicurezza: entro 24 ore dalla pubblicazione, fuori dal ritmo settimanale.
- Ogni plugin ha in `plugins.md` il motivo per cui esiste e la persona che ne è responsabile. I plugin senza motivo sono stati rimossi al passaggio di consegne: 7 su 18.
- Registro delle modifiche `changelog.md`: data, cosa, chi, risultato, come annullare. Senza voce non c’è modifica.
- Checklist dopo ogni modifica: pagina iniziale, 3 sottopagine indicate dal cliente, login, modulo con conferma, posta, certificato, tempo di risposta.

## 6. Monitoring

| Cosa | Con quale frequenza | Alert a |
| --- | --- | --- |
| Disponibilità del sito da due località | Ogni minuto | Reperibilità Kol.ski; dopo 5 minuti anche il referente tecnico |
| Certificato e validità del dominio | Ogni giorno | Reperibilità Kol.ski 30, 14 e 7 giorni prima della scadenza |
| Modifiche ai file del core e dei plugin fuori da un aggiornamento | Ogni giorno | Reperibilità Kol.ski |
| Login amministrativi da nuove località | In tempo reale | Reperibilità Kol.ski e referente tecnico |
| Esecuzione del backup e sua dimensione | Ogni giorno | Reperibilità Kol.ski, quando la copia non è stata eseguita o la dimensione devia |
| Consegna dei moduli | Ogni settimana, segnalazione di prova | Reperibilità Kol.ski |

## 7. Checklist di accettazione

- Tutti gli accessi recuperati, nominativi, con 2FA; account del fornitore precedente rimossi e confermati.
- Backup eseguito fuori dall’hosting e ripristinato sull’ambiente di test; tempo di ripristino registrato.
- Monitoring attivo, alert di prova arrivato alla reperibilità e al referente tecnico.
- Documentazione nel repository del cliente, segreti nel password manager del cliente, nulla nel repository.
- Procedure di emergenza provate con una persona lato cliente: un ripristino, un annullamento di aggiornamento.
- Costi mensili e date di rinnovo noti al referente business.
- Data della prossima revisione degli accessi e del test di ripristino inserita nel calendario.

## Il passaggio di consegne del tuo sito

Scrivici su cosa gira il tuo sito e cosa manca in questo set: accessi, backup, procedure, documentazione. Ti proporremo una data.

[Parliamo del tuo progetto](mailto:hi@kol.ski) · [Prenota 30 minuti](https://calendar.app.google/CJxZPq3FqabCDMS59) · [Cloud e infrastruttura](https://kol.ski/it/cloud-infrastruttura)
