In diesem Artikel führen wir Sie durch die Schritte zum Einrichten eines Mailservers mit Exim4 und DBMail auf einem Debian 7 (Wheezy) Linux VPS .
Was ist Exim4?
Es ist ein Mail Transfer Agent (MTA), der auf Unix-ähnlichen Betriebssystemen verwendet wird und für das Empfangen, Weiterleiten und Zustellen von E-Mail-Nachrichten verantwortlich ist.
Was ist DBMail?
Es ist ein schneller und skalierbarer SQL-basierter E-Mail-Dienst, der E-Mail-Nachrichten in einer relationalen Datenbank speichert. Es unterstützt mehrere Frontends wie IMAP4 , POP3 , ManageSieve , LMTP usw. und mehrere Backends wie MySQL , PostgreSQL , Oracle und SQLite .
Wichtigste Vorteile von DBMail sind:
- Skalierbarkeit
- Verwaltbarkeit
- Geschwindigkeit
- Sicherheit
- Flexibilität
Systemanforderungen?
- Ein Debian 7 Linux VPS-Hosting
- Datenbankserver
- Exim-MTA
SYSTEM AKTUALISIEREN
Als erstes müssen Sie eine SSH-Verbindung zu Ihrem Debian-VPS herstellen und einen screen
starten Sitzung und aktualisieren Sie Ihr Linux vps mit den folgenden Befehlen:
## screen -U -S exim-dbmail ## apt-get update ## apt-get upgrade
DBMAIL-QUELLEN HINZUFÜGEN
Fahren Sie mit dem Hinzufügen der Quellen von DBMail zu Ihrer sources.list
fort damit Sie im nächsten Schritt die benötigten Pakete installieren können. Sie können die Quellen mit den folgenden Befehlen hinzufügen:
## 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
ERFORDERLICHE PAKETE INSTALLIEREN
Aktualisieren Sie die Quellen mit apt
und installieren Sie die erforderlichen Pakete, indem Sie die folgenden Befehle in Ihrem Terminal als root ausführen:
## apt-get update ## apt-get install exim4 exim4-daemon-heavy mysql-server mysql-client dbmail ## apt-get purge sendmail*
DBMAIL-DATENBANK ERSTELLEN
Als nächstes benötigt DBMail eine Datenbank als Back-End und da wir in diesem Artikel den MySQL-Datenbankserver verwenden, fahren Sie mit der Erstellung eines neuen Benutzers und einer neuen Datenbank fort, indem Sie die folgenden Befehle ausführen:
## mysql -u root -p CREATE DATABASE dbmail; GRANT ALL ON dbmail.* TO dbmail@localhost IDENTIFIED BY 'DATABASE_PASSWORD'; \q
DBMAIL-DATENBANKTABELLEN BEFÜLLEN
Ok, als nächstes müssen Sie die neu erstellte Datenbank mit den erforderlichen Datenbanktabellen füllen, die von DBMail bereitgestellt werden. Sie können dies mit den folgenden Befehlen erreichen:
## 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
DBMAIL KONFIGURIEREN
Bearbeiten Sie /etc/dbmail/dbmail.conf
und richten Sie das DBMail-Backend ein, indem Sie Folgendes einrichten:
## vim /etc/dbmail/dbmail.conf dburi = mysql://dbmail:DATABASE_PASSWORD@localhost:3306/dbmail authdriver = sql
Vergessen Sie nicht, DATABASE_PASSWORD durch das tatsächliche Passwort zu ersetzen, das Sie beim Erstellen der Datenbank verwendet haben
Als nächstes bearbeiten Sie /etc/default/dbmail
und stellen Sie Folgendes ein:
## vim /etc/default/dbmail START_IMAPD=true START_LMTPD=true
DBMAIL-DIENST NEU STARTEN
Wenn die Konfiguration von DBMail vorhanden ist, fahren Sie mit dem Starten des Dienstes fort mit:
## service dbmail restart
DBMAIL ZUM SYSTEMSTART HINZUFÜGEN
Fügen Sie den DBMail-Dienst zu Ihrem Debain-VPS-Start hinzu, damit der Dienst automatisch gestartet wird, wenn Sie Ihren Server neu starten:
## update-rc.d -f dbmail enable
EXIM KONFIGURIEREN
Als nächstes müssen Sie Exim mit DBMail entsprechend konfigurieren. Dazu gehören das Einrichten von Benutzerdatenbanksuchen, Authentifizierung, Routing und Transport. Richten Sie zuerst die Exim-Hauptkonfigurationsdatei ein und fahren Sie mit der Benutzersuche fort, also:
## 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'
ersetzen Sie mydomain.com durch Ihren tatsächlichen Domainnamen
## vim /etc/exim4/conf.d/main/05_exim4-config_dbmail_user_lookup hide mysql_servers = localhost/dbmail/dbmail/DATABASE_PASSWORD
Richten Sie das MTA-Banner ein, indem Sie Folgendes hinzufügen:
## vim /etc/exim4/conf.d/main/06_exim4-config_smtp_banner smtp_banner = $smtp_active_hostname MTA
Richten Sie nun DBMail lmtp ein, indem Sie Folgendes konfigurieren:
## 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
Richten Sie als Nächstes die Benutzersuche ein:
## 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
und fahren Sie mit der Einrichtung der Benutzerauthentifizierung fort:
## 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
Fügen Sie lmtp zu /etc/services
hinzu
## vim /etc/services lmtp 24/tcp
und aktualisieren Sie schließlich die Exim-Konfiguration und starten Sie den MTA neu mit:
## update-exim4.conf ## service exim4 restart
ERSTELLEN SIE EIN NEUES E-MAIL-KONTO
DBMail bietet einige nette Befehlszeilenprogramme zum Verwalten der Konten. Um beispielsweise ein neues Konto zu erstellen, verwenden Sie:
## dbmail-users -a USERNAME -w PASSWORD -s [email protected]
Weitere Informationen hierzu finden Sie unter http://www.dbmail.org/dokuwiki/doku.php/manage_users
HINZUFÜGEN EINER WEITEREN DOMAIN
Um dem Mailserver eine weitere Domain hinzuzufügen, müssen Sie /etc/exim4/update-exim4.conf.conf
bearbeiten und fügen Sie Ihre Domain in dc_other_hostnames
hinzu getrennt durch ein Semikolon wie in:
## vim /etc/exim4/update-exim4.conf.conf dc_other_hostnames='mydomain.com;myotherdomain.org'
Speichern und schließen Sie die Datei, aktualisieren Sie die Exim-Konfigurationsdatei und starten Sie den MTA neu mit:
## update-exim4.conf ## service exim4 restart
Verwenden Sie den folgenden Befehl:
## tail -f /var/log/exim4/mainlog /var/log/dbmail/dbmail.* /var/log/mail.log
um die Protokolldateien Ihres Mailservers zu lesen.
Das ist es. Gehen Sie zu http://www.dbmail.org/dokuwiki/doku.php
um mehr über DBMail und seine Verwendung zu erfahren.
Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, Exim mit DBMail zu installieren . Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.
PS. Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.