# \[TUTORIAL\] Set-up Appliance RAO per Erogazione SPID

**URL:** <https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895>\
**Category:** SPID\
**Created:** [4 Settembre 2021, 2:54pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895 "2021-09-04T14:54:32Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pif](https://forum.italia.it/user_avatar/forum.italia.it/pif/32/1192_2.png) [@pif](https://forum.italia.it/u/pif)\
**Post date:** [4 Settembre 2021, 2:54pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/1 "2021-09-04T14:54:32Z")

</div>

Ciao a tutti,  
condivido con voi la mia esperienza per il set-up dell’ambiente necessario per diventare [RAO pubblico](https://www.agid.gov.it/it/piattaforme/spid/rao-pubblici).

Consiglio l’uso di una VPS in Cloud, nel mio caso ho usato Ubuntu 20.04 LTS, altro requisito necessario è una casella e-mail dal quale far inviare le notifiche ai cittadini.

1. **Richiedere il Sigillo ad AgID**

Per ottenere un ambiente funzionante occorre inviare una richiesta ad AgID via PEC.  
a. Generare un CSR (molto utile [questo tool](https://www.digicert.com/easy-csr/openssl.htm))  
b. Calcolarne l’hash in SHA1  
c. Compilare il [documento di richiesta](https://www.agid.gov.it/sites/default/files/repository_files/richiesta_di_sigillo_rao_pubblico_3.pdf) ed inviarlo via PEC ad AgID - ricordarsi di allegare anche il CSR.

1. **Preparare la VPS**

La procedura si basa sull’uso di due componenti open-source: sono [rao-pubblico](https://github.com/Sielte/rao-pubblico) e [rao-pubblico-signer](https://github.com/Sielte/rao-pubblico-signer). Il primo consiste in un webserver ed il secondo nel vero e proprio componente di firma.

Avendo a disposizione una VPS con Ubuntu, aggiorniamo il tutto con `apt update` ed `apt upgrade` prima di partire. Consiglio vivamente l’uso di UFW per _‘blindare’_ il VPS al solo IP statico dell’Ente, piuttosto che l’uso di una VPN.

Partiamo dal _rao-pubblico-signer_, che necessita di un _virutal environment_ in Python.

Creiamo il _venv_ con il comando `python -m venv venv-rao-signer`, entriamo nel venv con `cd venv-rao-signer`, e abilitiamo l’environment appena creato con `source bin/activate`.

Cloniamo la repo all’interno dell’environment con `git clone https://github.com/Sielte/rao-pubblico-signer`, successivamente entriamoci con `cd rao-pubblico-signer`.

Installiamo i requisiti con `pip install -r requirements.txt`.

Effettuiamo le migrazioni:

```auto
python3 manage.py makemigrations 
python3 manage.py makemigrations api
python3 manage.py migrate
python3 manage.py migrate api

```

Siamo pronti, ora non ci resta che avviare il server con il seguente comando.

```auto
python3 manage.py runserver 9000

```

Il server si attiverà sulla porta 9000 TCP ed accetterà richieste solo da _localhost_. Se, per scopi di test, volessimo permettergli di accettare richieste da tutti gli IP, anteporre `0.0.0.0` al 9000.

Concentriamoci sul secondo componente, andiamo nella _home directory_ semplicemente digitando `cd`.

Cloniamo l’altra repository con `git clone https://github.com/Sielte/rao-pubblico`, ed entriamoci con `cd rao-pubblico`.

Ora, effettuiamo il _building_ della immagine Docker con `docker build --no-cache -f "./compose/local/django/Dockerfile" -t "rao-app:latest" .` , e creiamo il volume in cui il container andrà ad immagazzinare i dati con `docker volume create "rao-data" &> /dev/null || true`.

Non ci resta che evocare il comando _docker run_, invito a far riferimento al _readme_ su Github, tuttavia riporto qui il comando da me usato, a mio avviso un buon compromesso tra semplicità d’uso e sicurezza.

```auto
docker run -d --name "rao" -e SIGN_URL="http://127.0.0.1:9000/v2/" -e BASE_URL="http://rao.comune.citta.prov.it:8000/" -e DATABASE_NAME="/data/rao-db.sqlite3" -e MAIL_LOG_LEVEL="ERROR" -e PORTAL_LOG_LEVEL="INFO" -e AGENCY_LOG_LEVEL="INFO" -e RAO_NAME="Comune di Test" --mount type=volume,source="rao-data",target="/data" --restart unless-stopped --network host "rao-app:latest" "/start"

```

Si premette che _rao.comune.citta.prov.it_ abbia un record DNS tale che punti verso l’IP pubblico del VPS, rispetto i parametri indicati nel Github, io ho aggiunto:  
`--restart unless-stopped` = riavvia il container in caso di crash  
`--network host` = il network utilizzato dal cotainer, al contrario di usare una propria subnet interna all’host, utilizza la configurazione di rete alla quale l’host appartiene, il che permette di risparmiarsi un livello in più di astrazione e quindi complessità, di cui a mio avviso possiamo fare a meno

Fatto ciò, avremo il _signer_ in esecuzione sulla porta 9000 e il _docker_ in esecuzione sulla porta 8000.

Dirigiamoci con un browser all’IP/dominio del VPS alla porta 8000 e dovremmo entrare nel set-up dell’istanza.

Da qui in poi possiamo far riferimento alle istruzioni contenute nella repository _rao-pubblico_.

**IMPORTANTE**  
Arriveremo al punto in cui l’admin dovrà cambiare (=creare) il proprio PIN, e ci verrà chiesto di inserire il vecchio PIN, _ **che non avremo** _.

La creazione del PIN dell’admin, deve essere fatta **manualmente** tramite una chiamata _curl_.

Rechiamoci quindi in _ssh_ sul VPS, e con il _rao-pubblico-signer_ attivo digitiamo `curl -X POST -F "username=CODFISCALEADMIN" -F "entity=CODCATASTALE" http://127.0.0.1:9000/v2/api/init`, dove _CODFISCALEADMIN_ è il codice fiscale dell’amministratore appena indicato, e _CODCATASTALE_ rappresenta appunto il codice catastale.

Se tutto va bene, riceveremo in risposta il PIN provvisorio, da usare come _vecchio PIN_ al fine di impostare quello di nostra scelta.

1. **Verificare le identità**

Adesso con l’ausilio delle istruzioni possiamo creare l’account dell’operatore che materialmente si occuperà di verificare le identità.

Questa guida è stata testata da me, ma ogni suggerimento o miglioria è assolutamente ben accetta.  
Spero di aver portato un buon contributo per chiunque voglia cimentarsi nella creazione dell’ambiente RAO per il proprio ente! 🙂

Buona giornata!

---

<div class="post-metadata">

**Author:** ![Andrea\_Tironi1](https://forum.italia.it/user_avatar/forum.italia.it/andrea_tironi1/32/4594_2.png) [@Andrea\_Tironi1](https://forum.italia.it/u/Andrea_Tironi1)\
**Post date:** [5 Settembre 2021, 8:01am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/2 "2021-09-05T08:01:19Z")

</div>

Grazie della condivisione.  
Hai un track record di quante spid sono state rilasciate mensilmente dal tuo ente?  
Andrea

---

<div class="post-metadata">

**Author:** ![pif](https://forum.italia.it/user_avatar/forum.italia.it/pif/32/1192_2.png) [@pif](https://forum.italia.it/u/pif)\
**Post date:** [5 Settembre 2021, 9:29am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/3 "2021-09-05T09:29:28Z")

</div>

Ciao @Andrea_Tironi1,  
l’ambiente è in piedi da meno di una settimana e ho testato solo su una persona per ora.

Presto faremo uscire un Comunicato Stampa e partiremo, quindi non ho ancora nessuna statistica.

Buona giornata.

---

<div class="post-metadata">

**Author:** ![djechelon](https://forum.italia.it/user_avatar/forum.italia.it/djechelon/32/967_2.png) [@djechelon](https://forum.italia.it/u/djechelon)\
**Post date:** [6 Settembre 2021, 1:41pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/4 "2021-09-06T13:41:07Z")

</div>

Mi spaventa la gestione della chiave privata. Come file su una VPS in cloud? 🥶

---

<div class="post-metadata">

**Author:** ![sbruscoli](https://forum.italia.it/user_avatar/forum.italia.it/sbruscoli/32/221_2.png) [@sbruscoli](https://forum.italia.it/u/sbruscoli)\
**Post date:** [7 Settembre 2021, 6:22am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/5 "2021-09-07T06:22:53Z")

</div>

Questa attività di diventare RAO, cioè identificare l’utente per far si che poi possa andare a chiedere lo SPID ad ISP non mi convince che possa essere una cosa utile. Se l’utente è in grado di utilizzare online l’identificazione ottenuta presso il Comune dovrebbe essere in grado di fare tutta la procedura compresa l’identifcazione che l’ISP prevede. Se invece andasse alle Poste non capisco perchè deve fare identificazione in Comune e poi andare alle Poste, fa molto prima a fare tutto alle Poste.  
Molto diversa sarebbe la situazione se i Comuni fossero ISP, visto il notevole traffico di cittadini agli sportelli anarafici dei singoli Enti.

---

<div class="post-metadata">

**Author:** ![pif](https://forum.italia.it/user_avatar/forum.italia.it/pif/32/1192_2.png) [@pif](https://forum.italia.it/u/pif)\
**Post date:** [7 Settembre 2021, 2:07pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/6 "2021-09-07T14:07:47Z")

</div>

Buongiorno @sbruscoli,  
posso concordare con te sul fatto di “perché andare in Comune e poi da Poste quando puoi fare tutto direttamente da Poste”, tuttavia sia nel mio Comune, che in un altro con cui mi sono confrontato, c’è l’Ufficio Postale letteralmente attaccato al Comune.

Mi è stato detto che nonostante questo, comunque il Comune - dal quale mi sono informato prima di partire - riceve molte richieste di identificazione, per cui sta di fatto che il servizio funziona.

Nel mio comune invece siamo appena usciti sui giornali, quindi non ho ancora statistiche.

---

<div class="post-metadata">

**Author:** ![Andrea\_Tironi1](https://forum.italia.it/user_avatar/forum.italia.it/andrea_tironi1/32/4594_2.png) [@Andrea\_Tironi1](https://forum.italia.it/u/Andrea_Tironi1)\
**Post date:** [8 Settembre 2021, 1:07pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/7 "2021-09-08T13:07:11Z")

</div>

> [@pif](#):
>
> Nel mio comune invece siamo appena usciti sui giornali, quindi non ho ancora statistiche.

ciao

quando avrai qualche statistica se puoi mi interessa di sapere

a) dimensione comune  
b) richieste / mese  
c) se hai qualche dettaglio richieste/mese (es. età) mi interessa

grazie

---

<div class="post-metadata">

**Author:** ![gianluca-difranco](https://forum.italia.it/user_avatar/forum.italia.it/gianluca-difranco/32/7610_2.png) [@gianluca-difranco](https://forum.italia.it/u/gianluca-difranco)\
**Post date:** [8 Settembre 2021, 3:18pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/8 "2021-09-08T15:18:25Z")

</div>

Buon pomeriggio,  
Vista la difficoltà riscontrata nel configurare correttamente RAO Pubblico e SignServer, abbiamo deciso di aggiornare i relativi repository come segue:

- Repos. RAO Pubblico:
  - upload del file docker-compose.yaml per avviare RAO e SignServer;
  - aggiornamento del readme con le istruzioni per l’installazione via docker-compose;

- Repos. SignServer:
  - upload del Dockerfile e dei file start ed entrypoint;
  - aggiornamento del readme con le istruzioni per l’installazione via Dockerfile e per l’attivazione del Security Officer.

Grazie mille per il vostro contributo!  
Gianluca Di Franco

---

<div class="post-metadata">

**Author:** ![gianlucadc](https://forum.italia.it/letter_avatar_proxy/v4/letter/g/13edae/32.png) [@gianlucadc](https://forum.italia.it/u/gianlucadc)\
**Post date:** [13 Settembre 2021, 9:20am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/9 "2021-09-13T09:20:53Z")

</div>

Buongiorno,  
io li ho installati entrambi come applicazioni Django, visto che nel nostro ente Django viene usato in maniera diffusa per molte funzioni interne.  
Abbiamo testato l’attivazione con 2 richieste, una su Poste e l’altra su Sielte ed entrambe sono andate a buon fine.  
Nel caso di Poste, se ci sono problemi con l’attivazione non fornisce informazioni dettagliate sul fallimento. Nel nostra caso dipendeva (almeno abbiamo dedotto che potrebbe essere stata questa la causa) dal fatto che il numero di cellulare fornito era già usato in un altro account di poste id.  
Su Sielte non ha dato problemi.  
Ancora non lo attiviamo ufficialmente, lo faremo a giorni e tra qualche settimana potremmo aggiornavi sulle statistiche, ma visto quello che sta succedendo con i referendum, prevedo una nuova impennata di richieste di SPID.  
Grazie a Sielte che ha realizzato questa piattaforma e buon lavoro a tutti.

---

<div class="post-metadata">

**Author:** ![Candidoni](https://forum.italia.it/user_avatar/forum.italia.it/candidoni/32/7988_2.png) [@Candidoni](https://forum.italia.it/u/Candidoni)\
**Post date:** [11 Novembre 2021, 7:18pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/10 "2021-11-11T19:18:52Z")

</div>

Ciao, nel nostro piccolo Ente è stato attivato CIE, AppIo, PagoPa e, visto che il riconoscimento per richiedere lo SPID in posta diventerà a pagamento (12 Euro) ci siamo cimentati a diventare RAO. Completata la parte amministrativa si incontrano difficoltà per quella tecnica. Qualche collega che lo ha fatto ha la possibilità di tracciare una guida (comprensibile) per la gestione dei rao pubblico e rao pubblico signer da GitH. grazie

---

<div class="post-metadata">

**Author:** ![perrcla](https://forum.italia.it/letter_avatar_proxy/v4/letter/p/e274bd/32.png) [@perrcla](https://forum.italia.it/u/perrcla)\
**Post date:** [11 Novembre 2021, 7:41pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/11 "2021-11-11T19:41:17Z")

</div>

mi sembra sinceramente troppo macchinoso e complicato. Soprattutto per gli Enti che non hanno una struttura “tecnica” alle spalle (moltissimi degli 8000 comuni…).

Noi abbiamo seguito una scorciatoia, forse più funzionale 🙂

Il nostro ufficio URP è diventato uno sportello LepidaID, può rilasciare da zero identità SPID Lepida. In pratica il cittadino entra in ufficio senza nulla e ne esce con una identità SPID attiva e funzionante.  
In alternativa può iniziare la registrazione a casa e recarsi presso l’URP solo per il riconoscimento de visu (tempo = 120 secondi).

Ovviamente tutto gratuitamente.

---

<div class="post-metadata">

**Author:** ![pif](https://forum.italia.it/user_avatar/forum.italia.it/pif/32/1192_2.png) [@pif](https://forum.italia.it/u/pif)\
**Post date:** [12 Novembre 2021, 10:13am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/12 "2021-11-12T10:13:58Z")

</div>

Ciao @Candidoni, prova a scrivere qual è il problema e proverò ad aiutarti, io ci sono riuscito 🙂

@perrcla Non sapevo di questa cosa, diventare uno Sportello Lepida ha dei costi? Ovviamente immagino che tramite Lepida si possa effettuare identificazione per SPID con Lepida e non con altri…

---

<div class="post-metadata">

**Author:** ![perrcla](https://forum.italia.it/letter_avatar_proxy/v4/letter/p/e274bd/32.png) [@perrcla](https://forum.italia.it/u/perrcla)\
**Post date:** [12 Novembre 2021, 11:15am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/13 "2021-11-12T11:15:16Z")

</div>

nessun costo, a parte il “tempo” delle poche ore di formazione degli operatori.  
Ovviamente si, il servizio permette di rilasciare solo identità SPID lepida. Non è però limitato alla sola identificazione, copre tutto il rilascio della identità.

---

<div class="post-metadata">

**Author:** ![frantheman](https://forum.italia.it/user_avatar/forum.italia.it/frantheman/32/304_2.png) [@frantheman](https://forum.italia.it/u/frantheman)\
**Post date:** [12 Novembre 2021, 11:58am UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/14 "2021-11-12T11:58:29Z")

</div>

E immagino che fra la procedura RAO e l’attivazione completa di LepidaID l’impegno dello sportellista sia lo stesso. Corretto?

---

<div class="post-metadata">

**Author:** ![pif](https://forum.italia.it/user_avatar/forum.italia.it/pif/32/1192_2.png) [@pif](https://forum.italia.it/u/pif)\
**Post date:** [12 Novembre 2021, 12:01pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/15 "2021-11-12T12:01:19Z")

</div>

@frantheman Con RAO l’operatore deve copiare i dati anagrafici, codice fiscale, carta di identità, inserire e-mail e cellulare. Dopo di che viene stampata una metà di password, l’altra metà viene inviata al cittadino via e-mail assieme ad un allegato.

Quell’allegato, insieme alla password completa permetterà di continuare - ad oggi - con Poste e Sielte. L’utente una volta caricato l’allegato dovrà solo confermare e-mail e cellulare con codici OTP e sarà pronto.

L’unica cosa che migliorerei sarebbe la compatibilità con gli IdP, sarebbe bello che tutti o quasi accettassero questo tipo di identificazione.

Tempo medio: 5 minuti

---

<div class="post-metadata">

**Author:** ![Candidoni](https://forum.italia.it/user_avatar/forum.italia.it/candidoni/32/7988_2.png) [@Candidoni](https://forum.italia.it/u/Candidoni)\
**Post date:** [12 Novembre 2021, 5:44pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/16 "2021-11-12T17:44:07Z")

</div>

Grazie Pif. In pratica ho capito il senso tecnico, ma non so come fare per installare le resorce da GitHub. Non ho mai usato Docker e, di conseguenza, non so da dove partire.

---

<div class="post-metadata">

**Author:** ![perrcla](https://forum.italia.it/letter_avatar_proxy/v4/letter/p/e274bd/32.png) [@perrcla](https://forum.italia.it/u/perrcla)\
**Post date:** [26 Novembre 2021, 4:00pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/17 "2021-11-26T16:00:48Z")

</div>

> [@Andrea\_Tironi1](#):
>
> ciao
> 
> quando avrai qualche statistica se puoi mi interessa di sapere

ciao, porto la nostra esperienza (Comune di San Gimignano . 7800 abitanti).

Il 10 novembre abbiamo attivato lo sportello SPID - Lepida presso il nostro ufficio URP.  
Ad oggi, abbiamo rilasciato 57 identità digitali.  
Quasi tutti con procedura completa presso il nostro URP.  
Poche (5 o 6) con pre-registrazione online e solo riconoscimento de-visu presso il nostro URP.

---

<div class="post-metadata">

**Author:** ![perrcla](https://forum.italia.it/letter_avatar_proxy/v4/letter/p/e274bd/32.png) [@perrcla](https://forum.italia.it/u/perrcla)\
**Post date:** [26 Novembre 2021, 4:05pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/18 "2021-11-26T16:05:11Z")

</div>

> [@frantheman](#):
>
> E immagino che fra la procedura RAO e l’attivazione completa di LepidaID l’impegno dello sportellista sia lo stesso. Corretto?

si praticamente… però cerchiamo di essere “accanto” ai cittadini più in difficoltà… e magari i miei colleghi dell’URP perdono qualche minuto per mostrare loro come installare l’APP e configurarla…

---

<div class="post-metadata">

**Author:** ![frantheman](https://forum.italia.it/user_avatar/forum.italia.it/frantheman/32/304_2.png) [@frantheman](https://forum.italia.it/u/frantheman)\
**Post date:** [26 Novembre 2021, 4:20pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/19 "2021-11-26T16:20:17Z")

</div>

> [@perrcla](#):
>
> però cerchiamo di essere “accanto” ai cittadini più in difficoltà…

Direi che questo approccio batte il RAO con un secco 3-0

---

<div class="post-metadata">

**Author:** ![Maurizio\_Natalia](https://forum.italia.it/user_avatar/forum.italia.it/maurizio_natalia/32/8236_2.png) [@Maurizio\_Natalia](https://forum.italia.it/u/Maurizio_Natalia)\
**Post date:** [29 Dicembre 2021, 12:16pm UTC](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895/20 "2021-12-29T12:16:27Z")

</div>

Ciao Pierfrancesco,

Integro qui il mio modus operandi sperando che sia d’aiuto anche ad altri.

**Progetto Signer**  
Per quanto riguarda il progetto _signer_ l’ho deployato via container docker.  
Unica modifica che mi si è resa necessaria:

```auto
cd ./rao-pubblico-signer/compose/local/sieltesign
vim Dockerfile

```

dopo il seguente comando all’interno del Dockerfile

```auto
RUN pip ...

```

inserire

```auto
USER root
RUN ["chmod", "+x", "/entrypoint"]
RUN ["chmod", "+x", "/start"]
RUN ["chmod", "+x", "/"]

```

credo basti solo l’ultimo comando, ma per sicurezza…  
per il comando di docker run è quello mostrato su guida Sielte su Github.

**Progetto Rao Pubblico**

In primis, la cartella dove si trova il Dockerfile /django esiste solamente sotto al branch dependabot/pip/django-2.2.24; in master si chiama /rao.  
Infine, nel tuo _docker run_ manca l’esposizione della porta **-p 8000:8000** come da guida Sielte su Github.  
Dare il comando _chmod +x_ per il progetto rao-pubblico non si è reso necessario.

Il mio deploy, che ho eseguito per test su VM Ubuntu ultima LTS, ha avuto qualche problema col rao-pubblico: non riusciva a risolvere i mirror deb.debian/…/ dandomi di continuo un _Connection Timed Out_ sullo scaricamento delle dipendenze. Però come informatica insegna, ho spento e riaccesso l’intera VM e macchina e tutto ha funzionato 🤪

[Pagina seguente](https://forum.italia.it/t/tutorial-set-up-appliance-rao-per-erogazione-spid/25895.md?page=2)
