![]() | MarcoSoftware84 | ||
Area Downloads | Tutorials e istruzioni varie |
Per ulteriori dettagli sul nome da comunicarmi vedere le informazioni in fondo alla pagina.
Torna alla pagina Indice dei tutorials di MarcoSoftware84
Installare un mail server su Raspberry tramite citadel e dargli un sotto dominio di apache2
Requisiti
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 curlPer installare citadel bisognia essere come utente root del Raspberry.
Per fare ciò è necessario digitare il seguente comando dal terminale:
sudo suPer avviare lo script easyinstall di citadell è sufficiente scrivere il seguente comando:
curl https://easyinstall.citadel.org/install | bashQuando 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:
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:
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.0La 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:8081Per 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:Adesso si può installare i certificati "TLS / SSL".
sudo certbot --duplicate --apache
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.shNella 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.cerPer 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.shLo 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_byrequestsAdesso per applicare l’abilitazione del modulo proxy bisogna riavviare apache2 con il seguente comando:
sudo systemctl restart apache2Adesso creiamo un nuovo host virtuale dentro la configurazione di apache2 con il seguente comando:
sudo nano /etc/apache2/sites-available/mail.confAdesso 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.confRicarichiamo la configurazione di apache2 con il comando:
sudo systemctl reload apache2Adesso 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".Adesso ricarichiamo i demoni del sistema con il seguente comando:
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".
sudo systemctl daemon-reloadRiavviamo 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.confNella 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.confNella 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.confRicarichiamo la configurazione di apache2 con il comando:
sudo systemctl reload apache2Adesso 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/*.sumDopo 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 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.