Cubo rotondo è un client webmail open source gratuito e completo scritto in PHP. Una webmail è un client di posta nel tuo browser, il che significa che invece di leggere e inviare e-mail da un client di posta desktop come Mozilla Thunderbird, puoi accedere alla tua posta da un browser web. Questo tutorial ti mostrerà come installare la webmail Roundcube su Ubuntu 18.04 con server web Apache o Nginx.
Caratteristiche Roundcube
La funzionalità Roundcube include:
- Rubrica
- Gestione delle cartelle
- Ricerca di messaggi
- Filtro messaggi
- Controllo ortografico
- Supporto MIME
- Crittografia e firma PGP
- Gli utenti possono modificare la propria password in Roundcube.
Rilascio Roundcube 1.4
Roundcube 1.4 è stato rilasciato il 10 novembre 2019 dopo due anni di sviluppo. Questa versione presenta:
- Una skin reattiva chiamata Elastico con supporto completo per i dispositivi mobili
- Funzione email reinviata (rimbalzo)
- Integrazione Mailvelope migliorata
- Supporto per Redis e cache Memcached
- Supporto per SMTPUTF8 e GSSAPI
- Inoltre numerosi miglioramenti e correzioni di bug
Prerequisiti
Per seguire questo tutorial, si presume che
- Il server SMTP Postfix e il server IMAP Dovecot sono stati installati sul tuo server Ubuntu 18.04
- Hai già installato uno stack LAMP o uno stack LEMP sul server Ubuntu 18.04.
In caso contrario, fare clic sui collegamenti sopra e seguire le istruzioni per completare i prerequisiti. Nota che se hai configurato il tuo server di posta elettronica utilizzando iRedMail in precedenza, il tuo server soddisfa tutti i requisiti e Roundcube è già installato sul tuo server.
Ora procediamo con l'installazione di Roundcube.
Passaggio 1:scarica Roundcube Webmail su Ubuntu 18.04
Accedi al tuo server Ubuntu tramite SSH, quindi esegui il comando seguente per scaricare l'ultima versione stabile 1.4 dal repository Roundcube Github.
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.0/roundcubemail-1.4.0-complete.tar.gz
Nota :puoi sempre utilizzare il formato URL sopra riportato per scaricare Roundcube dalla riga di comando. Se esce una nuova versione, sostituisci semplicemente 1.4.0 con il nuovo numero di versione. Puoi controllare se ci sono nuove versioni nella pagina di download di Roundcube.
Estrarre il tarball, spostare la cartella appena creata nella root web (/var/www/
) e rinominalo come roundcube
allo stesso tempo.
tar xvf roundcubemail-1.4.0-complete.tar.gz sudo mv roundcubemail-1.4.0 /var/www/roundcube
Passaggio 2:installa le dipendenze
Esegui il comando seguente per installare le estensioni PHP richieste.
sudo apt install php-net-ldap2 php-net-ldap3 php-imagick php7.2-common php7.2-gd php7.2-imap php7.2-json php7.2-curl php7.2-zip php7.2-xml php7.2-mbstring php7.2-bz2 php7.2-intl php7.2-gmp
Installa Composer, che è un gestore delle dipendenze per PHP.
sudo apt install composer
Passa alla directory del cubo rotondo.
cd /var/www/roundcube
Usa Composer per installare tutte le dipendenze necessarie (librerie di terze parti) per Roundcube Webmail.
composer install --no-dev
Se vedi nothing to install or update
messaggio, quindi tutte le dipendenze sono installate.
Rendi l'utente del server web (www-data
) in qualità di proprietario del temp
e logs
directory in modo che il server Web possa scrivere in queste due directory.
sudo chown www-data:www-data temp/ logs/ -R
Fase 3:crea un database MariaDB e un utente per Roundcube
Accedi alla shell di MariaDB come root.
sudo mysql -u root
Quindi crea un nuovo database per Roundcube usando il comando seguente. Questo tutorial lo chiama roundcube
, puoi utilizzare il nome che preferisci per il database.
CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Quindi, crea un nuovo utente del database su localhost usando il comando seguente. Ancora una volta, questo tutorial lo chiama roundcubeuser
, puoi usare il nome che preferisci. Sostituisci password
con la tua password preferita.
CREATE USER roundcubeuser@localhost IDENTIFIED BY 'password';
Quindi concedi tutte le autorizzazioni del nuovo database al nuovo utente in modo che in seguito Webmail Roundcube possa scrivere nel database.
GRANT ALL PRIVILEGES ON roundcube.* TO roundcubeuser@localhost;
Svuota la tabella dei privilegi per rendere effettive le modifiche.
flush privileges;
Esci da MariaDB Shell:
exit;
Importa le tabelle iniziali in roundcube
banca dati.
sudo mysql roundcube < /var/www/roundcube/SQL/mysql.initial.sql
Fase 4:crea un host virtuale Apache o un file di configurazione Nginx per Roundcube
Apache
Se utilizzi il server Web Apache, crea un host virtuale per Roundcube.
sudo nano /etc/apache2/sites-available/roundcube.conf
Nota :Se hai seguito il mio tutorial su Postfix/Dovecot, esiste già un host virtuale. dovresti modificare il seguente file. (Rimuovi i testi in questo file che è stato aggiunto nella parte 2 e aggiungi i nuovi testi di seguito.)
sudo nano /etc/apache2/sites-available/mail.example.com.conf
Inserisci il seguente testo nel file. Sostituisci mail.example.com
con il tuo vero nome di dominio e non dimenticare di impostare un record DNS A per esso.
<VirtualHost *:80> ServerName mail.example.com DocumentRoot /var/www/roundcube/ ErrorLog ${APACHE_LOG_DIR}/roundcube_error.log CustomLog ${APACHE_LOG_DIR}/roundcube_access.log combined <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /var/www/roundcube/> Options FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
Salva e chiudi il file. Quindi abilita questo host virtuale con:
sudo a2ensite roundcube.conf
Ricarica Apache per rendere effettive le modifiche.
sudo systemctl reload apache2
Ora dovresti essere in grado di vedere la procedura guidata di installazione basata sul Web di Roundcube su http://mail.example.com/installer
.
Nginx
Se utilizzi il server web Nginx, crea un host virtuale per Roundcube.
sudo nano /etc/nginx/conf.d/roundcube.conf
Nota :Se hai seguito il mio tutorial su Postfix/Dovecot, esiste già un host virtuale. dovresti modificare il seguente file. (Rimuovi i testi in questo file che è stato aggiunto nella parte 2 e aggiungi i nuovi testi di seguito.)
sudo nano /etc/nginx/conf.d/mail.example.com.conf
Inserisci il seguente testo nel file. Sostituisci il nome di dominio e non dimenticare di impostare il record DNS A per esso.
server { listen 80; listen [::]:80; server_name mail.example.com; root /var/www/roundcube/; index index.php index.html index.htm; error_log /var/log/nginx/roundcube.error; access_log /var/log/nginx/roundcube.access; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.well-known/acme-challenge { allow all; } location ~ ^/(README|INSTALL|LICENSE|CHANGELOG|UPGRADING)$ { deny all; } location ~ ^/(bin|SQL)/ { deny all; } # A long browser cache lifetime can speed up repeat visits to your page location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ { access_log off; log_not_found off; expires 360d; } }
Salva e chiudi il file. Quindi testa le configurazioni di Nginx.
sudo nginx -t
Se il test ha esito positivo, ricarica Nginx per rendere effettive le modifiche.
sudo systemctl reload nginx
Ora dovresti essere in grado di vedere la procedura guidata di installazione basata sul Web di Roundcube su http://mail.example.com/installer
.
Fase 5:abilitazione di HTTPS
Si consiglia vivamente di utilizzare TLS per crittografare la tua webmail. Possiamo abilitare HTTPS installando un certificato TLS gratuito emesso da Let's Encrypt. Esegui il comando seguente per installare il client Let's Encrypt (certbot) sul server Ubuntu 18.04.
sudo apt install certbot
Se usi Nginx, devi anche installare il plugin Certbot Nginx.
sudo apt install python3-certbot-nginx
Quindi, esegui il comando seguente per ottenere e installare il certificato TLS.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.example.com
Se usi Apache, installa il plugin Certbot Apache.
sudo apt install python3-certbot-apache
Ed esegui questo comando per ottenere e installare il certificato TLS.
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d mail.example.com
Dove
--nginx
:usa il plugin nginx.--apache
:usa il plugin Apache.--agree-tos
:Accetta i termini di servizio.--redirect
:Forza HTTPS tramite reindirizzamento 301.--hsts
: Aggiungi l'intestazione Strict-Transport-Security a ogni risposta HTTP. Forzare il browser a utilizzare sempre TLS per il dominio. Difende dallo stripping SSL/TLS.--staple-ocsp
: Abilita la pinzatura OCSP. Una risposta OCSP valida viene pinzata al certificato offerto dal server durante TLS.
Il certificato dovrebbe ora essere ottenuto e installato automaticamente.
Nota :Se hai seguito il mio tutorial su Postfix/Dovecot e ora installi Roundcube sullo stesso server, certbot probabilmente ti dirà che esiste già un certificato per mail.example.com come mostrato di seguito, quindi puoi scegliere di installare il TLS esistente certificato nel file di configurazione del tuo server web.
Fase 6:aggiunta di una voce DNS locale
Si consiglia di modificare il /etc/hosts
file sul server di posta e aggiungi la voce seguente, in modo che Roundcube non debba interrogare il DNS pubblico, il che accelererà un po' il caricamento della pagina web.
127.0.0.1 localhost mail.example.com
Fase 7:termina l'installazione nel browser Web
Nel tuo browser web, vai alla pagina di installazione di Roundcube.
https://mail.example.com/installer
Il programma di installazione web verificherà innanzitutto se sono installate estensioni PHP, database e librerie di terze parti. Se segui questo tutorial, tutti i requisiti dovrebbero essere soddisfatti.
Fare clic sul pulsante Avanti. Nella seconda pagina, devi inserire i dettagli del database MariaDB che hai creato in precedenza.
La sezione IMAP e SMTP consente di configurare come ricevere e inviare e-mail. Immettere i seguenti valori per IMAP.
- Host IMAP:
ssl://mail.example.com
porta:993
Immettere i seguenti valori per le impostazioni SMTP.
- Porta SMTP:
tls://mail.example.com
porta:587
. Nota che devi usaretls://
come prefisso per la porta 587. Ilssl://
il prefisso dovrebbe essere usato per la porta 465
Successivamente, puoi scorrere fino a Plugins
sezione per abilitare alcuni plugin. Ad esempio:il plug-in per la password, contrassegna come plug-in spazzatura e così via. Li ho abilitati tutti.
Una volta fatto, fai clic su create config
pulsante che creerà la configurazione in base alle informazioni che hai inserito. Devi copiare la configurazione e salvarla come config.inc.php
sotto il /var/www/roundcube/config/
directory.
Una volta creato il file config.inc.php, fare clic sul pulsante continua. Nel passaggio finale, verifica le impostazioni SMTP e IMAP inviando un'e-mail di prova e controllando l'accesso IMAP. Tieni presente che devi inserire il tuo indirizzo email completo nel Sender
campo durante il test della configurazione SMTP.
Se il test fallisce, puoi fare clic su 2. Create config
link nella parte superiore della pagina per tornare al passaggio 2 e ricreare il config.inc.php
file.
Se il test ha esito positivo, vai al tuo dominio Webmail senza /installer
e accedi.
Interfaccia Webmail di Roundcube
Ora dovresti rimuovere l'intera cartella del programma di installazione dalla radice del documento o assicurati che enable_installer
opzione in config.inc.php
il file è disabilitato.
sudo rm /var/www/roundcube/installer/ -r
Questi file possono esporre al pubblico dati di configurazione sensibili come password del server e chiavi di crittografia. Assicurati di non poter accedere alla pagina di installazione dal tuo browser.
Fase 8:Configura il filtro dei messaggi Sieve
Puoi creare cartelle nella webmail Roundcube e quindi creare regole per filtrare i messaggi di posta elettronica in cartelle diverse. Per fare ciò, è necessario installare il server ManageSieve con il seguente comando.
sudo apt install dovecot-sieve dovecot-managesieved
Per impostazione predefinita, Postfix utilizza il suo agente di consegna locale (LDA) integrato per spostare le e-mail in entrata nel negozio di messaggi (posta in arrivo, inviato, cestino, posta indesiderata, ecc.). Possiamo configurarlo per utilizzare Dovecot per consegnare e-mail, tramite il protocollo LMTP, che è una versione semplificata di SMTP. LMTP consente un sistema di posta altamente scalabile e affidabile ed è necessario se si desidera utilizzare il plug-in sieve per filtrare i messaggi in entrata in cartelle diverse.
Installa il server LMTP Dovecot.
sudo apt install dovecot-lmtpd
Modifica il file di configurazione principale di Dovecot.
sudo nano /etc/dovecot/dovecot.conf
Aggiungi lmtp
e sieve
ai protocolli supportati.
protocols = imap lmtp sieve
Salva e chiudi il file. Quindi modifica Dovecot 10-master.conf file.
sudo nano /etc/dovecot/conf.d/10-master.conf
Cambia il lmtp
definizione del servizio al seguente.
service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } }
Quindi, modifica il file di configurazione principale di Postfix.
sudo nano /etc/postfix/main.cf
Aggiungi le seguenti righe alla fine del file. La prima riga dice a Postfix di consegnare le e-mail al negozio di messaggi locale tramite il server LMTP di dovecot. La seconda riga disabilita SMTPUTF8 in Postfix, perché Dovecot-LMTP non supporta questa estensione email.
mailbox_transport = lmtp:unix:private/dovecot-lmtp smtputf8_enable = no
Salva e chiudi il file. Apri il /etc/dovecot/conf.d/15-lda.conf
file.
sudo nano /etc/dovecot/conf.d/15-lda.conf
Scorri fino alla fine del file, decommenta mail_plugins
riga e aggiungi il plug-in del setaccio all'agente di consegna locale (LDA).
protocol lda { # Space separated list of plugins to load (default is global mail_plugins). mail_plugins = $mail_plugins sieve }
Salva e chiudi il file. Se riesci a trovare il 20-lmtp.conf
file in /etc/dovecot/conf.d/
directory, quindi dovresti anche abilitare il plug-in sieve in quel file come di seguito.
protocol lmtp { mail_plugins = quota sieve }
Modifica il /etc/dovecot/conf.d/10-mail.conf
file.
sudo nano /etc/dovecot/conf.d/10-mail.conf
Gli script Sieve sono archiviati nella directory home di ciascun utente. Se hai seguito il mio tutorial su PostfixAdmin e stai utilizzando domini di cassette postali virtuali, devi abilitare mail_home
per gli utenti virtuali aggiungendo la riga seguente nel file, perché gli utenti virtuali non hanno home directory per impostazione predefinita.
mail_home = /var/vmail/%d/%n
Salva e chiudi il file.
Infine, riavvia Postfix e Dovecot.
sudo systemctl restart postfix dovecot
Ora puoi andare alla webmail di Roundcube, aprire un messaggio e-mail e fare clic su more
e seleziona create filters
per creare filtri di messaggi. Ad esempio, creo un filtro che sposta ogni email inviata da redhat.com nella cartella Red Hat.
Se non hai l'opzione di creazione del filtro, è probabilmente perché non hai abilitato managesieve
collegare. Modifica il config.inc.php
file.
sudo nano /var/www/roundcube/config/config.inc.php
Aggiungi il managesieve
plug-in nell'array alla fine di questo file. L'ordine dei plugin non ha importanza.
$config['plugins'] = array('acl', 'additional_message_headers', 'managesieve', .....);
Salva e chiudi il file.
Tieni presente che se sposti un set di filtri setaccio da un vecchio server di posta al tuo nuovo server di posta, devi andare su Impostazioni -> Filtri , quindi fai clic su Azioni e abilita il set di filtri, altrimenti il server Dovecot LMTP non eseguirà il filtro setaccio.
Passaggio 9:rimozione delle informazioni sensibili dalle intestazioni delle email
Per impostazione predefinita, Roundcube aggiungerà un User-Agent
intestazione dell'e-mail, che indica che stai utilizzando la webmail Roundcube e il numero di versione. Puoi dire a Postfix di ignorarlo in modo che il destinatario non possa vederlo. Esegui il comando seguente per creare un file di controllo dell'intestazione.
sudo nano /etc/postfix/smtp_header_checks
Inserisci le seguenti righe nel file.
/^User-Agent.*Roundcube Webmail/ IGNORE
Salva e chiudi il file. Quindi modifica il file di configurazione principale di Postfix.
sudo nano /etc/postfix/main.cf
Aggiungi la riga seguente alla fine del file.
smtp_header_checks = regexp:/etc/postfix/smtp_header_checks
Salva e chiudi il file. Quindi esegui il comando seguente per ricostruire la tabella hash.
sudo postmap /etc/postfix/smtp_header_checks
Ricarica Postfix per rendere effettive le modifiche.
sudo systemctl reload postfix
Ora Postfix non includerà User-Agent: Roundcube Webmail
nelle intestazioni durante l'invio di email in uscita.
Fase 10:configura il plug-in password in Roundcube
Roundcube include un plug-in per password che consente agli utenti di modificare le proprie password dall'interfaccia webmail. Modifica il config.inc.php
file.
sudo nano /var/www/roundcube/config/config.inc.php
Assicurati la password
plug-in nell'elenco dei plug-in alla fine di questo file. L'ordine dei plugin non ha importanza.
$config['plugins'] = array('acl', 'additional_message_headers', 'password', .....);
Salva e chiudi il file.
Tuttavia, dobbiamo configurare questo plugin prima che funzioni. Modifica il file di configurazione del plug-in della password. Esegui il comando seguente per copiare il file di configurazione del plug-in della password distribuita in un nuovo file.
sudo cp /var/www/roundcube/plugins/password/config.inc.php.dist /var/www/roundcube/plugins/password/config.inc.php
Modifica il file di configurazione del plug-in password.
sudo nano /var/www/roundcube/plugins/password/config.inc.php
Trova la riga seguente:
$config['password_db_dsn'] = '';
Questo parametro viene utilizzato per indicare al plug-in password dove sono memorizzate le password utente. Per impostazione predefinita, il valore è vuoto e interrogherà il roundcube
database, che non memorizza le password degli utenti. Se hai seguito il mio tutorial su PostfixAdmin, le password utente vengono memorizzate nella postfixadmin.mailbox
tabella, quindi dobbiamo cambiare il valore in:
$config['password_db_dsn'] = 'mysql://postfixadmin:[email protected]/postfixadmin';
Dice al plug-in della password di connettersi a postfixadmin
Banca dati. Se non ricordi la password del database postfixadmin, puoi trovarla in /etc/dovecot/dovecot-sql.conf.ext
file. Se la tua password PostfixAdmin contiene un singolo carattere di virgolette, puoi utilizzare la barra rovesciata (\'
) per evitarlo.
Quindi trova la riga seguente.
$config['password_query'] = 'SELECT update_passwd(%c, %u)';
Modificalo come segue.
$config['password_query'] = 'UPDATE mailbox SET password=%D,modified=NOW() WHERE username=%u';
Consiglio di abilitare un controllo della sicurezza della password per impedire agli utenti di impostare password settimanali. Vai all'inizio di questo file, puoi trovare la riga seguente.
$config['password_strength_driver'] = null;
Possiamo usare il zxcvbn
driver di sicurezza della password, quindi cambialo in:
$config['password_strength_driver'] = 'zxcvbn';
Aggiungi la riga seguente in questo file per consentire solo password complesse.
$config['password_zxcvbn_min_score'] = 5;
Nota :Il $config['password_minimum_score']
parametro non funziona con zxcvbn
conducente, quindi lascia perdere.
È inoltre possibile impostare una lunghezza minima per la password. Trova la riga seguente.
$config['password_minimum_length'] = 0;
Cambialo in:
$config['password_minimum_length'] = 8;
Ricordiamo che abbiamo utilizzato lo schema password ARGON2I nel tutorial di PostfixAdmin, quindi dobbiamo anche configurare il plug-in password per utilizzare ARGON2I. Trova le seguenti righe nel file.
$config['password_algorithm'] = 'clear';
Per impostazione predefinita, la password verrà memorizzata come testo non crittografato, modificare il valore come segue per utilizzare l'algoritmo di password integrato di Dovecot.
$config['password_algorithm'] = 'dovecot';
Quindi trova la riga seguente, che dice dove si trova il generatore di hash della password di Dovecot.
$config['password_dovecotpw'] = '/usr/local/sbin/dovecotpw'; // for dovecot-1.x
Modificalo come segue.
$config['password_dovecotpw'] = '/usr/bin/doveadm pw -r 5';
Quindi trova la riga seguente, che indica quale schema di password verrà utilizzato.
$config['password_dovecotpw_method'] = 'CRAM-MD5';
Cambialo in:
$config['password_dovecotpw_method'] = 'ARGON2I';
Trova la riga seguente.
$config['password_dovecotpw_with_method'] = false;
Cambia false
su true.
Questo aggiungerà un prefisso {ARGON2I} alla password con hash, in modo da riconoscere quale schema di password viene utilizzato.
$config['password_dovecotpw_with_method'] = true;
Salva e chiudi il file. Poiché questo file contiene la password del database, dovremmo consentire solo i www-data
utente di leggere e scrivere su questo file.
sudo chown www-data:www-data /var/www/roundcube/plugins/password/config.inc.php sudo chmod 600 /var/www/roundcube/plugins/password/config.inc.php
Ora gli utenti dovrebbero essere in grado di modificare le proprie password nell'interfaccia webmail di Roundcube.
Come impostare i messaggi di ferie/fuori sede
Possiamo usare il filtro setaccio per creare messaggi di ferie/fuori sede. Vai a Roundcube Impostazioni -> Filtri . Quindi fai clic su create
pulsante per creare un filtro.
- Assegna a questo filer un nome come "fuori sede".
- I nuovi filtri non sono disabilitati, quindi puoi lasciare il pulsante da solo.
- Nell'Ambito campo, seleziona tutti i messaggi.
- Seleziona Riproduci con messaggio nelle impostazioni Azioni e inserisci il messaggio che verrà inviato automaticamente.
- Inserisci 1 in quanto spesso inviare messaggi quindi l'auto-risposta verrà inviata solo una volta al giorno per ogni mittente. Se imposti questo valore su 7 , la risposta automatica verrà inviata una volta ogni 7 giorni per ciascun mittente.
- Lascia gli altri campi di testo vuoti.
- Fai clic su Salva pulsante e il gioco è fatto.
Quando torni in ufficio, puoi attivare il "Filtro disabilitato ” e fai clic su Salva pulsante per disabilitare questo filtro.
Aumenta il limite delle dimensioni del file di caricamento
Se utilizzi PHP-FPM per eseguire script PHP, i file come immagini, file PDF caricati su Roundcube non possono essere più grandi di 2 MB. Per aumentare il limite della dimensione del caricamento, modifica il file di configurazione PHP.
sudo nano /etc/php/7.2/fpm/php.ini
Trova la riga seguente (riga 846).
upload_max_filesize = 2M
Modifica il valore come di seguito. Tieni presente che questo valore non deve essere maggiore del limite di dimensione dell'allegato impostato dal server SMTP Postfix.
upload_max_filesize = 50M
Quindi trova la riga seguente (riga 694).
post_max_size = 8M
Modifica la dimensione massima dei dati POST che PHP accetterà.
post_max_size = 50M
Salva e chiudi il file. In alternativa, puoi eseguire i due comandi seguenti per modificare il valore senza aprire manualmente il file.
sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /etc/php/7.4/fpm/php.ini sudo sed -i 's/post_max_size = 8M/post_max_size = 50M/g' /etc/php/7.4/fpm/php.ini
Quindi riavvia PHP-FPM.
sudo systemctl restart php7.2-fpm
Nginx imposta anche un limite per la dimensione del file di caricamento. Il limite di dimensione massima del file di caricamento predefinito impostato da Nginx è 1 MB. Se usi Nginx, modifica il file di configurazione di Nginx.
sudo nano /etc/nginx/conf.d/mail.example.com.conf
Aggiungi la seguente riga nell'host virtuale SSL.
client_max_body_size 50M;
Salva e chiudi il file. Quindi ricarica Nginx per rendere effettive le modifiche.
sudo systemctl reload nginx
Ci sono 3 plugin in Roundcube per allegati/caricamento file:
- allegati_database
- filesystem_attachments
- allegati_ridondanti
Roundcube può utilizzare un solo plug-in per allegati/caricamenti di file. Ho scoperto che il database_attachment
il plug-in può essere soggetto a errori e causare problemi. Per disabilitarlo, modifica il file di configurazione di Roundcube.
sudo nano /var/www/roundcube/config/config.inc.php
Scorri verso il basso fino alla fine di questo file. Vedrai un elenco di plugin attivi. Rimuovi 'database_attachments'
dalla lista. Salva e chiudi il file.
Impostazione di più domini di posta
Per ospitare più domini di posta, leggi il seguente articolo:
- Come ospitare più domini di posta in PostfixAdmin su Ubuntu
Suggerimenti per la risoluzione dei problemi
Se riscontri errori, puoi controllare i log degli errori del server web in /var/log/apache2/roundcube_error.log
(se stai usando Apache) o /var/log/nginx/roundcube.error
(se stai usando Nginx.), anche l'errore Roundcube registra /var/www/roundcube/logs/
directory.
Connessione al server di archiviazione non riuscita
Se vedi Connection to storage server failed
errore quando si tenta di accedere a RoundCube, probabilmente è perché
- Il server Dovecot non è in esecuzione. Puoi riavviare Dovecot con
sudo systemctl restart dovecot
e controlla il suo stato consystemctl status dovecot
. - Stai utilizzando un certificato TLS autofirmato. Roundcube richiede un certificato TLS valido emesso da un'autorità di certificazione affidabile come Let's Encrypt.
- Il tuo certificato TLS è scaduto. Puoi rinnovare il certificato Let's Encrypt TLS con
sudo certbot renew
, quindi riavvia Postfix e Dovecot (sudo systemctl restart postfix dovecot
).
Puoi anche provare ad aggiungere una voce DNS personalizzata in /etc/hosts
come descritto nel passaggio 8 sul server Roundcube, in modo che Roundcube possa risolvere correttamente il nome host del server di posta.
Impossibile caricare il messaggio dal server
Se viene visualizzato il messaggio "Errore interno:impossibile caricare il messaggio dal server ” errore, è probabilmente perché stai tentando di aprire un'e-mail eliminata (URL non valido). Prova ad andare al dominio principale della posta (mail.example.com) per vedere se funziona.