In questo articolo ti guideremo attraverso i passaggi su come configurare un server di posta con Exim4 e DBMail su un VPS Linux Debian 7 (Wheezy) .
Cos'è Exim4?
È un agente di trasferimento della posta (MTA) utilizzato su sistemi operativi simili a Unix, responsabile della ricezione, dell'instradamento e della consegna dei messaggi di posta elettronica.
Cos'è DBMail?
È un servizio di posta elettronica basato su sql veloce e scalabile che archivia i messaggi di posta elettronica in un database relazionale. Supporta più front-end come IMAP4 , POP3 , Gestisci setaccio , LMTP ecc. e più back-end come MySQL , PostgreSQL , Oracolo e SQLite .
Principali vantaggi di DBMail sono:
- Scalabilità
- Gestibilità
- Velocità
- Sicurezza
- Flessibilità
Requisiti di sistema?
- Un hosting VPS Debian 7 Linux
- Server di database
- Exim MTA
AGGIORNAMENTO DEL SISTEMA
La prima cosa da fare è inviare un SSH al tuo VPS Debian, avviare uno screen
sessione e aggiorna il tuo linux vps usando i seguenti comandi:
## screen -U -S exim-dbmail ## apt-get update ## apt-get upgrade
AGGIUNGI FONTI DBMAIL
Procedi con l'aggiunta dei sorgenti di DBMail al tuo sources.list
in modo da poter installare i pacchetti richiesti nel passaggio successivo. Puoi aggiungere le sorgenti usando i seguenti comandi:
## cp /etc/apt/sources.list{,.orig} ## echo "deb http://debian.nfgd.net/debian stable main" >> /etc/apt/sources.list ## echo "deb-src http://debian.nfgd.net/debian stable main" >> /etc/apt/sources.list
INSTALLA I PACCHETTI NECESSARI
Aggiorna i sorgenti usando apt
e installa i pacchetti necessari eseguendo i seguenti comandi nel tuo terminale come root:
## apt-get update ## apt-get install exim4 exim4-daemon-heavy mysql-server mysql-client dbmail ## apt-get purge sendmail*
CREA DATABASE DBMAIL
Successivamente, DBMail richiede un database come back-end e poiché in questo articolo stiamo utilizzando il server di database MySQL, procedi con la creazione di un nuovo utente e database eseguendo i seguenti comandi:
## mysql -u root -p CREATE DATABASE dbmail; GRANT ALL ON dbmail.* TO dbmail@localhost IDENTIFIED BY 'DATABASE_PASSWORD'; \q
POPOLARE LE TABELLE DEL DATABASE DBMAIL
Ok, la prossima cosa da fare è popolare il database appena creato con le tabelle del database richieste fornite da DBMail. Puoi farlo usando i seguenti comandi:
## zcat /usr/share/doc/dbmail/examples/create_tables.mysql.gz > /tmp/dbmail_create_tables.sql ## mysql -u dbmail -p dbmail < /tmp/dbmail_create_tables.sql
CONFIGURA DBMAIL
Modifica /etc/dbmail/dbmail.conf
e imposta il back-end di DBMail impostando quanto segue:
## vim /etc/dbmail/dbmail.conf dburi = mysql://dbmail:DATABASE_PASSWORD@localhost:3306/dbmail authdriver = sql
non dimenticare di sostituire DATABASE_PASSWORD con la password effettiva che hai utilizzato quando hai creato il database
Quindi, modifica /etc/default/dbmail
e impostare quanto segue:
## vim /etc/default/dbmail START_IMAPD=true START_LMTPD=true
RIAVVIA IL SERVIZIO DBMAIL
Con la configurazione di DBMail in atto, procedi con l'avvio del servizio utilizzando:
## service dbmail restart
AGGIUNGI DBMAIL ALL'AVVIO DEL SISTEMA
Aggiungi il servizio DBMail all'avvio di Debain VPS in modo che il servizio venga avviato automaticamente al riavvio del server:
## update-rc.d -f dbmail enable
CONFIGURA EXIM
Successivamente, devi configurare in modo appropriato Exim con DBMail. Ciò include l'impostazione di ricerche nel database degli utenti, l'autenticazione, l'instradamento e il trasporto. Prima configurazione Esci dal file di configurazione principale e continua con le ricerche degli utenti, quindi:
## vim /etc/exim4/update-exim4.conf.conf dc_eximconfig_configtype='internet' dc_other_hostnames='mydomain.com' dc_local_interfaces='' dc_readhost='' dc_relay_domains='' dc_minimaldns='false' dc_relay_nets='127.0.0.0/8' dc_smarthost='' CFILEMODE='644' dc_use_split_config='true' dc_hide_mailname='' dc_mailname_in_oh='true' dc_localdelivery='maildir_home'
sostituisci miodominio.com con il tuo nome di dominio effettivo
## vim /etc/exim4/conf.d/main/05_exim4-config_dbmail_user_lookup hide mysql_servers = localhost/dbmail/dbmail/DATABASE_PASSWORD
Imposta il banner MTA aggiungendo quanto segue:
## vim /etc/exim4/conf.d/main/06_exim4-config_smtp_banner smtp_banner = $smtp_active_hostname MTA
Ora, imposta DBMail lmtp configurando quanto segue:
## vim /etc/exim4/conf.d/transport/30_exim4-config_dbmail_lmtp dbmail_lmtp: driver = smtp protocol = lmtp hosts = 127.0.0.1 allow_localhost return_path_add
Quindi, imposta la ricerca utente:
## vim /etc/exim4/conf.d/router/750_exim4-config_dbmail_user dbmail_user: debug_print = "R: dbmail_user for $local_part@$domain" driver = accept condition = ${lookup mysql{\ SELECT alias_idnr FROM dbmail_aliases WHERE \ alias='${quote_mysql:$local_part@$domain}' OR \ alias='${quote_mysql:@$domain}'}{yes}{no}} transport = dbmail_lmtp cannot_route_message = Unknown user
e procedere con la configurazione dell'autenticazione utente:
## vim /etc/exim4/conf.d/auth/10_exim4_config_dbmail_auth_plain auth_plain: driver = plaintext public_name = PLAIN server_condition = ${lookup mysql{\ SELECT user_idnr FROM dbmail_users WHERE \ userid='${quote_mysql:$2}' AND \ passwd='${quote_mysql:$3}'}{yes}{no}} server_prompts =: server_set_id = $2
## vim /etc/exim4/conf.d/auth/15_exim4-config_dbmail_auth_login auth_login: driver = plaintext public_name = LOGIN server_condition = ${lookup mysql{\ SELECT user_idnr FROM dbmail_users WHERE \ userid='${quote_mysql:$1}' AND \ passwd='${quote_mysql:$2}'}{yes}{no}} server_prompts = Username::: Password:: server_set_id = $1
## vim /etc/exim4/conf.d/auth/20_exim4-config_dbmail_auth_cram_md5 auth_cram_md5: driver = cram_md5 public_name = CRAM-MD5 server_secret = ${lookup mysql{\ SELECT passwd FROM dbmail_users WHERE \ userid='${quote_mysql:$1}'}{$value}fail} server_set_id = $1
Aggiungi lmtp a /etc/services
## vim /etc/services lmtp 24/tcp
e infine aggiorna la configurazione di Exim e riavvia l'MTA usando:
## update-exim4.conf ## service exim4 restart
CREA UN NUOVO ACCOUNT EMAIL
DBMail fornisce alcune utili utilità da riga di comando per gestire gli account. Ad esempio, per creare un nuovo account useresti:
## dbmail-users -a USERNAME -w PASSWORD -s [email protected]
Maggiori informazioni su questo si possono trovare su http://www.dbmail.org/dokuwiki/doku.php/manage_users
AGGIUNGERE UN ALTRO DOMINIO
Per aggiungere un altro dominio al server di posta, devi modificare /etc/exim4/update-exim4.conf.conf
e aggiungi il tuo dominio in dc_other_hostnames
separati da un punto e virgola come in:
## vim /etc/exim4/update-exim4.conf.conf dc_other_hostnames='mydomain.com;myotherdomain.org'
salvare e chiudere il file, aggiornare il file di configurazione di Exim e riavviare l'MTA utilizzando:
## update-exim4.conf ## service exim4 restart
Usa il seguente comando:
## tail -f /var/log/exim4/mainlog /var/log/dbmail/dbmail.* /var/log/mail.log
per leggere i file di registro del server di posta.
Questo è tutto. Vai a http://www.dbmail.org/dokuwiki/doku.php
per saperne di più su DBMail e su come usarlo.
Ovviamente non devi fare nulla di tutto questo se usi uno dei nostri servizi di hosting VPS Linux, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di installare Exim con DBMail . Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS. Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.