• Home
  • Installazione di ONLYOFFICE Mail per Docker su un server locale
Questo articolo è stato tradotto dall’AI

Installazione di ONLYOFFICE Mail per Docker su un server locale

Introduzione

ONLYOFFICE Mail è una soluzione completa di server di posta sviluppata sulla base del pacchetto iRedMail, contenente i seguenti componenti: Postfix, Dovecot, SpamAssassin, ClamAV, OpenDKIM, Fail2ban.

Integrato con ONLYOFFICE Workspace, ONLYOFFICE Mail ti consente di:

  • collegare il tuo nome di dominio;
  • creare caselle di posta;
  • aggiungere alias per ciascuna casella di posta;
  • creare gruppi di caselle di posta.

Questa guida ti mostrerà come installare la versione Docker di ONLYOFFICE Mail sulla tua macchina.

Requisiti di sistema

  • CPU
    dual core 2 GHz o superiore
  • RAM
    4 GB o più
  • HDD
    almeno 20 GB di spazio libero
  • SWAP
    almeno 4 GB, ma dipende dal sistema operativo host. Più è meglio
  • OS
    Distribuzione Linux amd64 con versione del kernel 3.10 o successiva
  • Requisiti aggiuntivi
    • Docker: qualsiasi versione supportata dal team Docker
Su Ubuntu 20.04, è necessario disabilitare il firewall predefinito ufw durante l'installazione di ONLYOFFICE Mail.

Prima di iniziare l'installazione

Prima di iniziare l'installazione di ONLYOFFICE Mail, è necessario collegare il computer su cui verrà installato ONLYOFFICE Mail con il dominio selezionato per il server di posta. Ti consigliamo di scegliere un nome come mx.tuodominio.com per il record A del tuo computer server di posta. Ciò significa che il record A nel tuo Sistema dei Nomi di Dominio (DNS) deve puntare all'indirizzo IP del computer su cui verrà installato ONLYOFFICE Mail e il record Pointer (PTR) su questo computer deve risolvere l'indirizzo IP del computer in un nome di dominio completamente qualificato (FQDN) in opposizione a quanto fa il record A.

Per verificare la correttezza delle impostazioni per il record A viene utilizzato il seguente comando:

dig -t A mx.tuodominio.com

Se tutto è corretto, dovresti vedere un output che contiene linee come queste tra le altre:

...
;; ANSWER SECTION:
mx.tuodominio.com.  IN  A   {il tuo indirizzo IP}
...

Al posto di {il tuo indirizzo IP} verrà mostrato l'indirizzo IP reale del server.

Il record PTR viene verificato con un altro comando:

dig -x {il tuo indirizzo IP}

Dovrebbe restituire un output che contiene linee come queste tra le altre:

...
;; ANSWER SECTION:
{il tuo indirizzo IP}   IN  PTR mx.tuodominio.com.
...

Una volta che ti assicuri che tutte le impostazioni siano corrette, puoi procedere ai passaggi successivi.

Dopo aver installato ONLYOFFICE Mail, sarà necessario aggiungere un record MX a tuodominio.com in modo che punti a mx.tuodominio.com. Questo è necessario affinché la posta raggiunga gli indirizzi @tuodominio.com.

Installazione di ONLYOFFICE Mail utilizzando il comando script automatico

Se non vuoi impostare tutto manualmente, puoi installare ONLYOFFICE Mail automaticamente utilizzando il nostro script Docker. Puoi scaricare lo script dalla nostra pagina di download. Oppure puoi utilizzare il link di download diretto, se ti è più comodo:

wget https://download.onlyoffice.com/install/workspace-install.sh

Una volta completato il download, esegui il seguente comando per installare ONLYOFFICE Mail:

bash workspace-install.sh -ics false -ids false -icp false -ims true -md tuodominio.com -es true

Installazione di ONLYOFFICE Mail manualmente

Se preferisci avere il pieno controllo su cosa e come viene installato, puoi eseguire l'installazione in modalità manuale. Per farlo, segui i passaggi seguenti.

Installazione dei prerequisiti

È necessario avere installata l'ultima versione di Docker. Se non ce l'hai, consulta la sezione Installazione sul sito Docker per sapere come ottenerla.

Docker specifica i server DNS di Google per impostazione predefinita. Se il tuo ONLYOFFICE Workspace non avrà accesso a Internet, ti consigliamo di cambiare l'indirizzo DNS predefinito di Docker con l'indirizzo del tuo server DNS locale. Per farlo, vai al file /etc/default/docker e cambia l'indirizzo IP nella seguente riga con l'indirizzo IP di un server DNS nella tua rete locale:
docker_OPTS="--dns 8.8.8.8"

Per i sistemi operativi basati su RPM come CentOS:

  1. Crea il file di configurazione /etc/docker/daemon.json con il seguente contenuto:
    { "dns" : [ "8.8.8.8" ] }
  2. Riavvia il servizio Docker:
    
    sudo systemctl restart docker.service

Prima di iniziare l'installazione, è necessario creare le seguenti cartelle:

  1. Per il server MySQL
    sudo mkdir -p "/app/onlyoffice/mysql/conf.d";
    sudo mkdir -p "/app/onlyoffice/mysql/data";
    sudo mkdir -p "/app/onlyoffice/mysql/initdb";
  2. E per i dati e i log di ONLYOFFICE Mail
    sudo mkdir -p "/app/onlyoffice/MailServer/data/certs";
    sudo mkdir -p "/app/onlyoffice/MailServer/logs";

Quindi crea la rete onlyoffice:

sudo docker network create --driver bridge onlyoffice
Installazione di MySQL

Dopo di ciò, è necessario creare il container Docker del server MySQL. Crea il file di configurazione:

echo "[mysqld]
sql_mode = 'NO_ENGINE_SUBSTITUTION'
max_connections = 1000
max_allowed_packet = 1048576000
group_concat_max_len = 2048" > /app/

onlyoffice/mysql/conf.d/onlyoffice.cnf

Crea lo script SQL che genererà gli utenti e assegnerà loro i diritti. L'onlyoffice_user è richiesto per il ONLYOFFICE Community Server, e il mail_admin è richiesto per ONLYOFFICE Mail nel caso in cui venga installato:

echo "ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'my-secret-pw';
CREATE USER IF NOT EXISTS 'onlyoffice_user'@'%' IDENTIFIED WITH mysql_native_password BY 'onlyoffice_pass';
CREATE USER IF NOT EXISTS 'mail_admin'@'%' IDENTIFIED WITH mysql_native_password BY 'Isadmin123';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'onlyoffice_user'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'mail_admin'@'%';
FLUSH PRIVILEGES;" > /app/onlyoffice/mysql/initdb/setup.sql
Si noti che lo script sopra imposterà i permessi per accedere al server SQL da qualsiasi dominio (%). Se si desidera limitare l'accesso, è possibile specificare gli host che avranno accesso al server SQL.

Ora puoi creare il contenitore MySQL impostando la versione MySQL su 8.0.29:

sudo docker run --net onlyoffice -i -t -d --restart=always --name onlyoffice-mysql-server \
 -v /app/onlyoffice/mysql/conf.d:/etc/mysql/conf.d \
 -v /app/onlyoffice/mysql/data:/var/lib/mysql \
 -v /app/onlyoffice/mysql/initdb:/docker-entrypoint-initdb.d \
 -e MYSQL_ROOT_PASSWORD=my-secret-pw \
 -e MYSQL_DATABASE=onlyoffice \
 mysql:8.0.29
Se desideri utilizzare un database esterno, devi configurarlo (ovvero, aggiungere un utente):
CREATE USER 'mail_admin'@'localhost' IDENTIFIED BY 'Isadmin123';
GRANT ALL PRIVILEGES ON * . * TO 'mail_admin'@'%' IDENTIFIED BY 'Isadmin123';
FLUSH PRIVILEGES;
Installazione di ONLYOFFICE Mail

Dopo aver preparato tutto, esegui il seguente comando:

sudo docker run --init --net onlyoffice --privileged -i -t -d --restart=always --name onlyoffice-mail-server -p 25:25 -p 143:143 -p 587:587 -p 8081:8081 \
 -e MYSQL_SERVER=onlyoffice-mysql-server \
 -e MYSQL_SERVER_PORT=3306 \
 -e MYSQL_ROOT_USER=root \
 -e MYSQL_ROOT_PASSWD=my-secret-pw \
 -e MYSQL_SERVER_DB_NAME=onlyoffice_mailserver \
 -v /app/onlyoffice/MailServer/data:/var/vmail \
 -v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver \
 -v /app/onlyoffice/MailServer/logs:/var/log \
 -h yourdomain.com \
 onlyoffice/mailserver

Dove yourdomain.com è il nome host del tuo server di posta.

Il tuo dominio che verrà utilizzato per mantenere la corrispondenza deve essere valido e configurato per questa macchina (cioè, deve avere il corretto record A nelle impostazioni DNS che punta il nome del tuo dominio all'indirizzo IP della macchina dove è installato ONLYOFFICE Mail).
Nel comando sopra, il parametro "yourdomain.com" deve essere inteso come un dominio di servizio per ONLYOFFICE Mail. Di solito è specificato nel record MX del dominio che verrà utilizzato per mantenere la corrispondenza. Di norma, "yourdomain.com" appare come mx1.onlyoffice.com

In questo caso, il server di posta garantirà la consegna della posta agli indirizzi interni ospitati su questo server.

Memorizzazione dei dati al di fuori dei contenitori

Tutti i dati sono memorizzati nelle directory appositamente designate, i volumi di dati, nella seguente posizione:

  • /var/log per i log di ONLYOFFICE Mail
  • /var/lib/mysql per i dati del database MySQL
  • /var/vmail per l'archiviazione della posta
  • /etc/pki/tls/mailserver per i certificati
Consigliamo Consigliamo vivamente di memorizzare i dati al di fuori dei contenitori Docker sulla macchina host poiché consente di aggiornare facilmente ONLYOFFICE Mail una volta rilasciata la nuova versione senza perdere i tuoi dati.

Per accedere ai tuoi dati situati al di fuori del contenitore, devi montare i volumi. Può essere fatto specificando l'opzione -v nel comando docker run.

sudo docker run --privileged -i -t -d -p 25:25 -p 143:143 -p 587

:587 -p 8081:8081 \
        -v /app/onlyoffice/MailServer/logs:/var/log  \
        -v /app/onlyoffice/MailServer/mysql:/var/lib/mysql  \
        -v /app/onlyoffice/MailServer/data:/var/vmail  \
        -v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver -h yourdomain.com onlyoffice/mailserver
Si prega di notare che, nel caso in cui si tenti di montare cartelle non ancora create, queste verranno create ma l'accesso ad esse sarà limitato. Sarà necessario modificare manualmente i loro diritti di accesso.

Memorizzare i dati sulla macchina host consente di aggiornare facilmente ONLYOFFICE Mail una volta rilasciata la nuova versione senza perdere i dati.

Configurazione dell'immagine Docker

Per garantire la consegna della posta ad indirizzi interni così come ad indirizzi di server esterni, è necessario ottenere un proprio nome di dominio e configurare un server DNS.

Sono richiesti i seguenti record DNS:

  • Record A (utilizzato per puntare un dominio all'indirizzo IP dell'host dove è distribuita questa immagine docker).
  • Record Pointer (PTR) o un record DNS inverso (utilizzato per mappare un'interfaccia di rete (IP) a un nome host).
sudo docker run --privileged -i -t -d -p 25:25 -p 143:143 -p 587:587 \
-v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver -h yourdomain.com onlyoffice/mailserver

Dove yourdomain.com è il nome host del tuo server di posta.

Installazione dei certificati SSL

I certificati autofirmati per il tuo dominio verranno creati per impostazione predefinita durante l'esecuzione del container docker. Se desideri utilizzare certificati certificati CA, dovrai rinominarli e copiarli nella directory /app/onlyoffice/MailServer/data/certs prima di eseguire l'immagine. Sono richiesti i seguenti file:

  • /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.key
  • /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.crt
  • /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.ca-bundle

Puoi copiare i certificati SSL nella directory /app/onlyoffice/MailServer/data/certs dopo aver eseguito l'immagine. Ma in questo caso sarà necessario riavviare il container docker.

Parametri di configurazione disponibili
Si prega di fare riferimento alle opzioni del comando docker run per il flag `--env-file` dove è possibile specificare tutte le variabili d'ambiente richieste in un unico file. Questo ti eviterà di scrivere un comando docker run potenzialmente lungo.

Di seguito è riportato l'elenco completo dei parametri che possono essere impostati utilizzando variabili d'ambiente.

  • STORAGE_BASE_DIR: Il percorso per l'archiviazione della posta. Impostazione predefinita su /var/vmail.
  • FIRST_DOMAIN: Il primo dominio virtuale, dove verrà ospitato l'indirizzo del postmaster. Questo dominio non deve coincidere con il dominio principale del server di posta. Impostazione predefinita su mailserver.onlyoffice.com.
  • DOMAIN_ADMIN_PASSWD: La password del postmaster. L'indirizzo predefinito del postmaster è postmaster@mailserver.onlyoffice.com.

Installazione di ONLYOFFICE Mail integrato con ONLYOFFICE Docs

ONLYOFFICE Mail è parte di ONLYOFFICE Workspace che comprende anche ONLYOFFICE Docs, ONLYOFFICE Control Panel e ONLYOFFICE Community Server. Nel caso tu voglia installarli tutti e integrarli tra loro, leggi queste istruzioni.

Modi alternativi per installare ONLYOFFICE Mail

In alternativa, puoi utilizzare uno script di installazione automatica per installare l'intero Workspace in una volta sola. Per il corretto funzionamento del server di posta è necessario specificare il suo nome host yourdomain.com.

PASSO 1: Scarica il file dello script di installazione

Esegui il seguente comando:

wget https://download.onlyoffice.com/install/workspace-install.sh

PASSO 2: Installa Workspace

Esegui il seguente comando per farlo:

bash workspace-install.sh -md yourdomain.com
Voci con l'etichetta tag:
Sfoglia tutti i tag