Ciao
Buona Esplorazione Del Sito!

Per ulteriori dettagli sul nome da comunicarmi vedere le informazioni in fondo alla pagina.

Torna alla pagina Indice dei tutorials di MarcoSoftware84
Torna alla pagina guide all’uso e programmazione del computer

Torna all’indice delle guide per il Raspberry


Installare un mail server su Raspberry tramite citadel e dargli un sotto dominio di apache2

Installare un mail server su Raspberry tramite citadel e dargli un sotto dominio di apache2

  1. Requisiti
  2. Procedura per l’installazione di citadel
  3. Installazione certificati TLS / SSL
  4. Integrazione con apache2
  5. Collegare certificato TLS / SSL nella configurazione di apache2
  6. Note per la reinstallazione e l’aggiornamento di citadel


Requisiti

  1. Un Raspberry
  2. Systema Operativo Ubuntu Server
  3. Server web apache2 installato
  4. Servizio di dominio per risolvere l’IP pubblico del Raspberry


Procedura per l’installazione di citadel

Per poter scaricare lo script easyinstal di citadel è necessario installare l’utilità curl con il seguente comando:

sudo apt install curl
Per installare citadel bisognia essere come utente root del Raspberry.

Per fare ciò è necessario digitare il seguente comando dal terminale:

sudo su
Per avviare lo script easyinstall di citadell è sufficiente scrivere il seguente comando:
curl https://easyinstall.citadel.org/install | bash
Quando lo script easy-install di citadel si avvia nel terminale viene mostrato l'elenco dei passaggi che farà per installare citadel sul Raspberry.

I passaggi che lo script di easy-install farà, sono i seguenti:

  1. Scaricherà e installerà le librerie necessarie.
  2. Scaricherà e installerà citadel.
  3. Scaricherà e installerà webcit.

  1. Configurerà citadel.
  2. Configurerà webcit.

Rispondere Y per accettare e proseguire con l’installazione di citadel.

Adesso dovrete accettare la licenza di utilizzo per citadel, premendo Y per proseguire con l’installazione, altrimenti l’installazione termina senza proseguire e viene annullata.

Adesso vi chiederà di installare le dipendense necessarie per il funzionamento di citadel, premere Y per continuare.

Alla domanda che verranno scaricati e installati dei pacchetti di "APT" rispondere S per installare i pacchetti e continuare.

Adesso scaricherà tutti i pacchetti necessari:

  1. Scarica le dipendense del sistema.
  2. Scarica i file sorgenti della suite di citadel.
  3. Installa la suite di citadel compilando i file sorgenti del programma.
  4. Configura la suite di citadel.

Alla fine configurerà il programma chiedendo le seguenti domande:

Nella prima schermata di configurazione vi chiederà di inserire un nome per l’account amministratore del programma.

Il nome predefinito è "admin", si consiglia di inserire un nome molto complicato da individuare e non utilizzarlo per inviare le mail agli altri utenti della rete.

Alla schermata successiva chiederà di inserire la password per l’account administrator, si consiglia di scrivere una password molto complicata da individuare rispettando i criteri delle password suggeriti dalle registrazioni nei siti web.

Nota:
Si consiglia di scrivere il nome utente e la password dell’account amministratore del programma su un foglio di carta e custodirlo con cura dato che questo account permetterà di configurare citadel in tutte le sue totali funzionalità.

La schermata successiva vi chiederà di inserire i privilegi di accesso all’account amministratore, si consiglia di dare i permessi di "root" perché sarà l’utente che consente la totale configurazione del server.

Nella schermata successiva vi chiederà da quali indirizzi ip deve ascoltare il traffico in ricezione, si consiglia di inserire il seguente indirizzo ip per ascoltare qualsiasi indirizzo ipv4:

0.0.0.0
La schermata successiva vi chiederà quale porta TCP utilizzare per il server citadel, si consiglia di lasciare il valore 504 perché questo è il valore assegnato per il citadel server dal consorzio IANA come porta ufficiale.

La schermata successiva vi chiederà di selezionare il metodo per salvare la password per l’autenticazione, si consiglia di utilizzare il metodo predefinito: metodo interno assegnato con il numero: "0".

Adesso lo script easy-install configurerà il webserver interno webcit.

La schermata successiva vi chiederà di digitare il numero di porta per il protocollo "http", siccome stiamo utilizzando webcit insieme ad apache2, si consiglia di assegnare una porta che non sia utilizzata dal webserver apache2.

Nella guida utilizzeremo la porta "8081" per il protocollo "http", quindi digitiamo il valore e premiamo INVIO.

La domanda successiva vi chiederà di digitare il numero di porta per il protocollo "https", siccome stiamo utilizzando webcit insieme ad apache2, si consiglia di assegnare una porta che non sia utilizzata dal webserver apache2.

Nella guida utilizzeremo la porta "8443 per il protocollo "https", quindi digitiamo il valore e premiamo INVIO.

L’installazione di citadel è completata.

Adesso si può provare ad accedere a citadel.

Per entrare nel programma è sufficiente digitare nel browser web l’indirizzo IP locale del Raspberry seguito dal numero di porta "http" oppure "https" in questo modo:

192.168.10.100:8081
Per accedere con il protocollo "http".


Installazione certificati TLS / SSL

Adesso installiamo un certificato "TLS / SSL" per rendere sicura la connessione al MailServer.

Per installare i certificati ci avvaliamo dell’utility "CertBot" che se non avete ancora installato, potete installarla con i seguenti comandi.

Digitiamo da terminale i seguenti comandi:

per installare certbot bisogna usare l’utility snap che installeremo con i seguenti comandi:

sudo apt install snapd

sudo snap install core

sudo snap refresh core

sudo snap install --classic certbot

sudo ln -s /snap/bin/certbot /usr/bin/certbot

sudo certbot --apache

Se invece volete avere i certificati per più di un sottodominio vi basterà digitare il seguente comando:
sudo certbot --duplicate --apache
Adesso si può installare i certificati "TLS / SSL".

Per fare ciò ci avvaliamo del seguente script in formato shell linux:

Apriamo un nuovo documento vuoto con l’editor di testi preferito ad esempio nano:

Digitiamo nel terminale del Raspberry il seguente comando:

sudo nano script.sh
Nella finestra che si apre copiamo o trascriviamo il seguente contenuto:
HOSTNAME=mycitadel.example.com
certbot certonly --agree-tos --non-interactive --text --rsa-key-size 4096 \
    --email admin@${HOSTNAME} \
    --webroot --webroot-path /usr/local/webcit \
    --domains ${HOSTNAME}
ln -sfv /etc/letsencrypt/live/${HOSTNAME}/privkey.pem /usr/local/citadel/keys/citadel.key 
ln -sfv /etc/letsencrypt/live/${HOSTNAME}/fullchain.pem /usr/local/citadel/keys/citadel.cer 
mkdir /usr/local/webcit/keys
ln -sfv /etc/letsencrypt/live/${HOSTNAME}/privkey.pem /usr/local/webcit/keys/citadel.key 
ln -sfv /etc/letsencrypt/live/${HOSTNAME}/fullchain.pem /usr/local/webcit/keys/citadel.cer 
Per i più pignoli non preuccupatevi della direttiva della shell, non è necessaria perché il sistema riconoscerà in automatico il tipo di shell utilizzato dallo script.

Nota:
Sostituire alla prima riga: "HOSTNAME=mycitadel.example.com" con il vostro dominio dedicato al WebMail Server.

Salviamo lo script con la relativa combinazione di tasti per salvare dell’editor di testo.

Chiudiamo il tutto e avviamo lo script con il seguente comando:

sudo ./script.sh
Lo script scaricherà e abiliterà le chiavi dei certificati con certbot in automatico e avvierà il rinnuovo automatico dei certificati.


Integrazione con apache2

Adesso integriamo webcit con apache2 utilizzando un modulo "proxy" di apache2 per inoltrare a webcit le chiamate del dominio associato a citadel.

prima di tutto abilitiamo il modulo proxy con i seguenti comandi:

sudo a2enmod proxy

sudo a2enmod proxy_http

sudo a2enmod proxy_balancer

sudo a2enmod lbmethod_byrequests
Adesso per applicare l’abilitazione del modulo proxy bisogna riavviare apache2 con il seguente comando:
sudo systemctl restart apache2
Adesso creiamo un nuovo host virtuale dentro la configurazione di apache2 con il seguente comando:
sudo nano /etc/apache2/sites-available/mail.conf
Adesso copiamo o trascriviamo il seguente contenuto:
<VirtualHost *:8080>
    ServerName mycitadel.example.com
    ProxyPass / http://127.0.0.1:8081/
    ProxyPassReverse / http://127.0.0.1:8081/
</VirtualHost>
Sostituire "mycitadel.example.com" con il vostro dominio dedicato a citadel.

Salviamo il tutto con la combinazione di tasti "CTRL + O" e usciamo con la combinazione dei tasti "CTRL + X".

Adesso abilitiamo la configurazione con il comando:

sudo a2ensite mail.conf
Ricarichiamo la configurazione di apache2 con il comando:
sudo systemctl reload apache2
Adesso abilitiamo l’inoltro degli indirizzi verso citadel nel relativo file di servizio di webcit.

Per fare ciò editiamo i seguenti file con i seguenti comandi:

webcit-http.service:

sudo nano /etc/systemd/system/webcit-http.service

Aggiungere l’opzione"-f" alla seguente riga in questo modo:

ExecStart=/usr/local/webcit/webcit -p8081 uds usr/local/citadel -f

Salviamo il tutto con la combinazione di tasti "CTRL + O" e usciamo con la combinazione dei tasti "CTRL + X".


webcit-https.service: sudo nano /etc/systemd/system/webcit-https.service Aggiungere l’opzione "-f" alla seguente riga in questo modo: ExecStart=/usr/local/webcit/webcit -s -p8443 uds usr/local/citadel -f Salviamo il tutto con la combinazione di tasti "CTRL + O" e usciamo con la combinazione dei tasti "CTRL + X".
Adesso ricarichiamo i demoni del sistema con il seguente comando:
sudo systemctl daemon-reload
Riavviamo i relativi servizi con i comandi:
sudo service webcit-http restart

sudo service webcit-https restart


Collegare certificato TLS / SSL nella configurazione di apache2

Adesso colleghiamo il certificato di letsencrypt nella configurazione di apache2:

Per fare ciò editiamo il file mail.conf precedentemente creato con il comando:

sudo nano /etc/apache2/sites-available/mail.conf
Nella finestra che si apre copiamo o trascriviamo il seguente contenuto:
<VirtualHost *:8080>
    ServerName mycitadel.example.com
    ProxyPass / http://127.0.0.1:8081/
    ProxyPassReverse / http://127.0.0.1:8081/
    RewriteEngine on
    RewriteCond %{SERVER_NAME} =mycitadel.example.com
    RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
Sostituire "mycitadel.example.com" con il vostro dominio dedicato a citadel.

Salviamo il tutto con la combinazione di tasti "CTRL + O" e usciamo con la combinazione dei tasti "CTRL + X".

Adesso editiamo il file mail-le-ssl.conf con il comando:

sudo nano /etc/apache2/sites-available/mail-le-ssl.conf
Nella finestra che si apre copiamo o trascriviamo il seguente contenuto:
<IfModule mod_ssl.c>
<VirtualHost *:43443>
    ServerName mycitadel.example.com
    ProxyPass / http://127.0.0.1:8081/
    ProxyPassReverse / http://127.0.0.1:8081/

SSLCertificateFile /etc/letsencrypt/live/mycitadel.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mycitadel.example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>
<IfModule mod_ssl.c>
<VirtualHost *:8080>
    ServerName mycitadel.example.com
    ProxyPass / http://127.0.0.1:8081/
    ProxyPassReverse / http://127.0.0.1:8081/

RewriteEngine on
# Some rewrite rules in this file were disabled on your HTTPS site,
# because they have the potential to create redirection loops.

# RewriteCond %{SERVER_NAME} =mycitadel.example.com
# RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>
</IfModule>
Sostituire mycitadel.example.com con il vostro dominio dedicato a citadel.

Salviamo il tutto con la combinazione di tasti "CTRL + O" e usciamo con la combinazione dei tasti "CTRL + X".

Adesso abilitiamo la configurazione con i comandi:

sudo a2ensite mail.conf

sudo a2ensite mail-le-ssl.conf
Ricarichiamo la configurazione di apache2 con il comando:
sudo systemctl reload apache2
Adesso la configurazione del server webmail di citadel è configurato per l’utilizzo sicuro tramite apache2.

Divertitevi ad usare il vostro Mail Server!!!


Note per la reinstallazione e l’aggiornamento di citadel

Se dovete reinstallare il mail server citadel prima di lanciare lo script easy-install è necessario rimuovere i seguenti file:

sudo rm /usr/local/ctdlsupport/etc/*.sum
sudo rm /usr/local/citadel/*.sum
sudo rm /usr/local/webcit/*.sum
Dopo aver fatto ciò si può ripetere la procedura dello script easy-install per reinstallare citadel.

Se invece vogliamo aggiornare il mail server citadel basterà ripetere la procedura per l’installazione con lo script easy-install del mail server citadel.


Marcosoftware84 logo MS-Dos fà impazzire

Marcosoftware84 non è affiliato o approvato da Microsoft Corporation, il software disponibile su questo sito è distribuito così com’è senza alcuna garanzia.
Assicuratevi di avere fatto il BackUP di tutti i dati importanti del computer dove utilizzerete il software di questo sito.
Io sono soltanto un appassionato programmatore dei sistemi operativi MS-Dos e Windows.
Questo sito è stato creato per chi vuole imparare a programmare i sistemi operativi della Microsoft come MS-Dos e Windows tramite le mie guide presenti sul sito.

Questo sito non utilizza cookie per profilare i vostri dati, ma viene utilizzato soltanto uno script in linguaggio PHP che rileva l’indirizzo IP pubblico della vostra connessione internet solo per scopo statistico e personale, i vostri dati non vengono divulgati o venduti a nessuno!

Se volete e se vi fa piacere potete comunicarmi il vostro nome o NickName inserendolo nel banner in cima alla pagina.

Se mi volete contattare potete scrivere nel form all’indirizzo https://account.marcosoft84.org/contattami.
Se volete contribuire ad ampliare l’archivio di file dell’Area Downloads donando al pubblico i programmi creati da voi, oppure in vostro possesso, potete farlo compilando il form al seguente indirizzo https://account.marcosoft84.org/inviami-file.

Questo sito nella maggior parte delle sue pagine (dove è possibile) mantiene la massima compatibilità con i sistemi operativi e le versioni dei browser forniti nell’Area Downloads per essere visualizzato correttamente con questi software.

Non è consentito l’uso illecito del contenuto di questo sito con lo scopo di: creare virus per infettare computer, costruire o inviare trojan, comprometterne il funzionamento dei sistemi operativi installati, ottenere contenuti sensibili degli utenti che utilizzano i computer d’epoca per farne profitto vendendoli a terze parti.

Marcosoftware84 non risponde in nessun caso di eventuali danni a persone o cose riconducibili all’uso illecito e scorretto dei contenuti di questo sito da parte degli utenti malintenzionati.

Questo sito è stato reso disponibile al pubblico il 23 Giugno 2023 alle ore 19:00.
L’ultimo aggiornamento è stato effettuato il 31 Marzo 2025 alle ore 23:20.