GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie den Mailserver mit PostfixAdmin unter CentOS 7

In diesem Tutorial zeigen wir Ihnen, wie Sie den Mailserver mit PostfixAdmin unter CentOS 7 installieren und konfigurieren. Für diejenigen unter Ihnen, die es nicht wussten, Postfixadmin ist ein Web-Frontend für MySQL oder MariaDB-Datenbank, die von Postfix verwendet wird. Mit Postfixadmin können wir unseren Postfix-Dienst einfach über einen Webbrowser verwalten, E-Mail-Benutzer und -Domänen, E-Mail-Aliase, Festplattenkontingente usw. hinzufügen und entfernen.

Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt die Installation von Mail Server With PostfixAdmin auf einem CentOS 7 Server.

Voraussetzungen

  • Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:CentOS 7.
  • Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
  • SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
  • Ein non-root sudo user oder Zugriff auf den root user . Wir empfehlen, als non-root sudo user zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.

Mailserver mit PostfixAdmin auf CentOS 7 installieren

Schritt 1. Beginnen wir damit, sicherzustellen, dass Ihr System auf dem neuesten Stand ist.

yum clean allyum -y update

Schritt 2. Installieren Sie den LAMP-Server.

Ein CentOS 7 LAMP-Stack-Server ist erforderlich. Wenn Sie kein LAMP installiert haben, können Sie unserer Anleitung hier folgen. Installieren Sie auch die erforderlichen PHP-Module:

yum installiere php70w-cli php70w-gd php70w-xml php70w-curl php70w-mysql php70w-zip php70w-mbstring php70w-mcrypt

Schritt 3. MariaDB für PostfixAdmin konfigurieren.

Standardmäßig ist MariaDB nicht gehärtet. Sie können MariaDB mit mysql_secure_installation sichern Skript. Sie sollten jeden Schritt sorgfältig lesen und ausführen, der das Root-Passwort festlegt, anonyme Benutzer entfernt, die Remote-Root-Anmeldung verbietet und die Testdatenbank und den Zugriff auf die sichere MariaDB entfernt:

mysql_secure_installation

Konfiguriere es so:

- Root-Passwort setzen? [J/n] y- Anonyme Benutzer entfernen? [J/n] y- Root-Anmeldung aus der Ferne verbieten? [J/N] y- Testdatenbank entfernen und Zugriff darauf? [J/n] y- Berechtigungstabellen jetzt neu laden? [J/n] ja

Als Nächstes müssen wir uns bei der MariaDB-Konsole anmelden und eine Datenbank für PostfixAdmin erstellen. Führen Sie den folgenden Befehl aus:

mysql -u root -p

Dadurch werden Sie zur Eingabe eines Passworts aufgefordert, geben Sie also Ihr MariaDB-Root-Passwort ein und drücken Sie die Eingabetaste. Sobald Sie sich bei Ihrem Datenbankserver angemeldet haben, müssen Sie eine Datenbank für erstellen PostfixAdmin-Installation:

CMariaDB [(keine)]> CREATE DATABASE postfixadmin;MariaDB [(keine)]> GEWÄHREN SIE ALLE PRIVILEGIEN AUF postfixadmin.* AN 'postfixadmin'@'localhost' IDENTIFIED BY 'strong_password';MariaDB [(keine)]> FLUSH PRIVILEGIEN;MariaDB [(keine)]> \q

Schritt 4. Installation von PostfixAdmin.

Als erstes müssen Sie zur Download-Seite von PostfixAdmin gehen und die neueste stabile Version von PostfixAdmin herunterladen:

cd /var/www/htmlwget https://github.com/postfixadmin/postfixadmin/archive/refs/tags/postfixadmin-3.3.11.tar.gztar -xzf postfixadmin-3.3.11.tar.gz 

Öffne die Hauptkonfigurationsdatei:

nano /var/www/html/postfixadmin-3.3.11/config.inc.php

Bearbeiten Sie die folgenden Werte:

$CONF['configured'] =true;$CONF['database_type'] ='mysqli';$CONF['database_host'] ='localhost';$CONF['database_user'] ='postfixadmin';$ CONF['database_password'] ='strong_password';$CONF['database_name'] ='postfixadmin';$CONF['domain_path'] ='NO';$CONF['domain_in_mailbox'] ='YES';

Nun müssen Sie den Besitz der Dateien und Ordner dem Benutzer und der Gruppe von Apache zuweisen. Dazu lautet der Befehl:

chown -R apache:/var/www/html/postfixadmin-3.3.11

Um die Datenbank zu füllen, gehen Sie zu https://Your_IP_Address/postfixadmin-3.0.2/setup.php und Sie sollten so etwas wie das Folgende sehen:

Datenbankverbindung wird getestet - OK - mysqli://postfixadmin:xxxxx@localhost/postfixadminAlles scheint in Ordnung zu sein... Versuch, Datenbankstruktur zu erstellen/aktualisieren

Neuen Admin-Benutzer erstellen:

bash /var/www/html/postfixadmin-3.3.11/scripts/postfixadmin-cli admin add admin@your_domain_idroot.us --password strong_password22 --password2 strong_password22 --superadmin 1 --active 1

Schritt 5. Postfix installieren und konfigurieren.

Installieren Sie Postfix mit dem folgenden Befehl:

yum -y postfix installieren

Sobald die Installation abgeschlossen ist, müssen wir Konfigurationsdateien erstellen:

mkdir -p /etc/postfix/sql/
nano /etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery  =SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain ='%d' and alias.address =CONCAT('@', alias_domain.target_domain) AND alias.active =1 AND alias_domain.active='1'
nano /etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT maildir FROM mailbox,alias_domain WHERE alias_domain.alias_domain ='%d' and mailbox.username =CONCAT('%u', '@', alias_domain.target_domain) AND mailbox .active =1 UND alias_domain.active='1'
nano /etc/postfix/sql/mysql_virtual_alias_domain_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias,alias_domain WHERE alias_domain.alias_domain ='%d' and alias.address =CONCAT('%u', '@', alias_domain.target_domain) AND alias .active =1 UND alias_domain.active='1'
nano /etc/postfix/sql/mysql_virtual_alias_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT goto FROM alias WHERE address='%s' AND active ='1'#expansion_limit =100
nano /etc/postfix/sql/mysql_virtual_domains_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery          =Domäne AUS Domäne AUSWÄHLEN WHERE domain='%s' UND aktiv ='1'#query          =Domäne AUS Domäne AUSWÄHLEN WHERE domain='%s'#optionale Abfrage, die wann verwendet werden soll Weiterleitung für Backup MX#query           =SELECT domain FROM domain WHERE domain='%s' AND backupmx ='0' AND active ='1'#expansion_limit =100
nano /etc/postfix/sql/mysql_virtual_mailbox_limit_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery =SELECT quota FROM mailbox WHERE username='%s' AND active ='1'
nano /etc/postfix/sql/mysql_virtual_mailbox_maps.cf

Bearbeiten Sie die folgenden Werte:

user =postfixadminpassword =strong_passwordhosts =localhostdbname =postfixadminquery           =SELECT maildir FROM mailbox WHERE username='%s' AND active ='1'#expansion_limit =100

Bearbeiten Sie als Nächstes die Datei main.cf:

postconf -e "myhostname =$(hostname -f)" postconf -e "virtual_mailbox_domains =proxy:mysql:/etc/postfix/sql/mysql_virtual_domains_maps.cf"postconf -e "virtual_alias_maps =proxy:mysql:/etc/ postfix/sql/mysql_virtual_alias_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf"postconf -e "virtual_mailbox_maps =proxy:mysql:/etc /postfix/sql/mysql_virtual_mailbox_maps.cf, proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf"postconf -e "smtpd_tls_cert_file =/etc/pki/tls/certs/localhost.crt"postconf -e "smtpd_tls_key_file =/ etc/pki/tls/private/localhost.key"postconf -e "smtpd_use_tls =yes"postconf -e "smtpd_tls_auth_only =yes"postconf -e "smtpd_sasl_type =dovecot"postconf -e "smtpd_sasl_path =private/auth"postconf -e " smtpd_sasl_auth_enable =yes"postconf -e "smtpd_recipient_restrictions =laub_sasl_authenticated,laub_meineNetzwerke,reject_unauth_destination"postcon f -e "mydestination =localhost"postconf -e "mynetworks =127.0.0.0/8"postconf -e "inet_protocols =ipv4"postconf -e "inet_interfaces =all"postconf -e "virtual_transport =lmtp:unix:private/dovecot- lmtp"

Öffnen Sie die master.cf finden Sie die Abschnitte „submission inet n“ und „smtps inet n“ und bearbeiten Sie sie wie folgt:

nano /etc/postfix/master.cf

Bearbeiten Sie die folgenden Werte:

 Vorlage inet n - n - - smtpd -o syslog_name =postfix / Unterwerfung -o smtpd_tls_security_level =encrypt -o smtpd_sasl_auth_enable =yes # -o smtpd_reject_unlisted_recipient =no # -o smtpd_client_restrictions =$ mua_client_restrictions # -o smtpd_helo_restrictions =$ mua_helo_restrictions # - o smtpd_sender_restrictions =$ mua_sender_restrictions # -o smtpd_recipient_restrictions =-o smtpd_relay_restrictions =permit_sasl_authenticated lehnen -o milter_macro_daemon_name =ORIGINATINGsmtps inet n - n - - smtpd -o syslog_name =postfix / smtps # -o smtpd_tls_wrappermode =yes -o smtpd_sasl_auth_enable =yes # -o smtpd_reject_unlisted_recipient =no # -o smtpd_client_restrictions =$ mua_client_restrictions # -o smtpd_helo_restrictions =$ mua_helo_restrictions # -o smtpd_sender_restrictions =$ mua_sender_restrictions # -o smtpd_recipient_restrictions =-o smtpd_relay_restrictions =permit_sasl_authenticated, ablehnen -o milter_macro_daemon_name =ORIGIN ATING

Aktivieren Sie schließlich den Postfix-Dienst:

systemctl postfix aktivierensystemctl postfix neu starten

Schritt 6. Dovecot installieren und konfigurieren.

Installieren Sie dovecot mit dem folgenden Befehl:

yum install dovecot dovecot-mysql

Öffnen Sie die Datei /etc/dovecot/conf.d/10-mail.conf:

nano /etc/dovecot/conf.d/10-mail.conf

Ändern Sie die folgenden Werte:

mail_location =maildir:/var/vmail/%d/%nmail_privileged_group =mailmail_uid =vmailmail_gid =mailfirst_valid_uid =150last_valid_uid =150

Öffnen Sie die Datei /etc/dovecot/conf.d/10-auth.conf:

nano /etc/dovecot/conf.d/10-auth.conf

Ändern Sie die folgenden Werte:

auth_mechanisms =einfache Anmeldung#!include auth-system.conf.ext!include auth-sql.conf.ext

Erstellen Sie eine neue dovecot-sql.conf.ext-Datei:

nano /etc/dovecot/dovecot-sql.conf.ext

Bearbeiten Sie die folgenden Werte:

driver =mysqlconnect =host=localhost dbname=postfixadmin user=postfixadmin password=strong_passworddefault_pass_scheme =MD5-CRYPTpassword_query =SELECT username as user, password, '/var/vmail/%d/%n' as userdb_home, 'maildir:/ var/vmail/%d/%n' als userdb_mail, 150 als userdb_uid, 8 als userdb_gid FROM mailbox WHERE username ='%u' AND active ='1'user_query =SELECT '/var/vmail/%d/%u' als home, 'maildir:/var/vmail/%d/%u' as mail, 150 AS uid, 8 AS gid, concat('dirsize:storage=',  quota) AS quota FROM mailbox WHERE username ='%u' UND aktiv ='1'

Aktivieren Sie in der Datei /etc/dovecot/conf.d/10-ssl.conf die SSL-Unterstützung:

ssl =ja

Öffnen Sie die Datei /etc/dovecot/conf.d/15-lda.conf und legen Sie die E-Mail-Adresse postmaster_address fest:

postmaster_address =postmaster@your_domain_name.com

Öffnen Sie die Datei /etc/dovecot/conf.d/10-master.conf, suchen Sie den Dienst-lmtp-Abschnitt und ändern Sie ihn in:

service lmtp {  unix_listener /var/spool/postfix/private/dovecot-lmtp {    mode =0600    user =postfix    group =postfix  }}

Suchen Sie den Service Auth-Abschnitt und ändern Sie ihn in:

Service auth {  unix_listener /var/spool/postfix/private/auth {    mode =0666    user =postfix    group =postfix  }  unix_listener auth-userdb {    mode =0600    user =vmail    #group =vmail  }  user =dovecot} 

Ändern Sie den Abschnitt service auth-worker wie folgt:

Service-Authentifizierungs-Worker {  user =vmail}

Jetzt müssen Sie den Besitz der Dateien und Ordner zuweisen. Dazu lautet der Befehl:

chown -R vmail:dovecot /etc/dovecotchmod -R o-rwx /etc/dovecot

Aktivieren Sie schließlich den Dovecot-Dienst und starten Sie ihn neu:

systemctl dovecot aktivieren systemctl dovecot neu starten

Schritt 7. Installieren und Konfigurieren von Spamassassin.

Installieren Sie SpamAssassin mit dem folgenden Befehl:

yum -y spamassassin installieren

Erstellen Sie einen SpamAssassin-Systembenutzer:

groupadd spamduseradd -g spamd -s /bin/false -d /var/log/spamassassin spamdchown spamd:spamd /var/log/spamassassin

Als nächstes konfigurieren Sie Postfix für die Verwendung von SpamAssassin:

nano /etc/postfix/master.cf

Werte ändern:

smtp      inet  n       -       n       -       -       smtpd

Mit:

smtp      inet  n       -       n       -       -       smtpd -o content_filter=spamassassin

Fügt die folgende Zeile am Ende der Datei hinzu:

systemctl spamassassin aktivieren systemctl spamassassin neu starten

Starten Sie abschließend den Postfix-Dienst neu:

systemctl Neustart Postfix

Schritt 8. Zugriff auf PostfixAdmin.

Wenn jetzt alles richtig eingerichtet ist, sollten Sie sich bei Ihrem PostfixAdmin-Backend anmelden können, indem Sie zu http://Your_IP_Address/postfixadmin-3.0.2.2 und erstellen Sie Ihre erste virtuelle Domain und Mailbox.

Herzlichen Glückwunsch! Sie haben PostfixAdmin erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von Mail Server With PostfixAdmin auf einem CentOS 7-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, die offizielle PostfixAdmin-Website zu besuchen.


Cent OS
  1. So installieren Sie SpamAssassin auf einem virtuellen Server mit CentOS 6

  2. So installieren Sie Website Baker auf einem CentOS 7 VPS

  3. Richten Sie einen Mailserver mit PostfixAdmin und MariaDB auf CentOS 7 ein

  4. So richten Sie einen Mailserver mit PostfixAdmin auf CentOS 7 ein

  5. So installieren Sie einen Mailserver mit PostfixAdmin unter Ubuntu 20.04

So verwalten Sie CentOS 7-Server mit Webmin

So installieren Sie Lighttpd mit PHP-FPM und MariaDB unter CentOS 8

So installieren Sie Cacti Monitoring Server unter CentOS 8

So installieren Sie Zabbix Server 5.0 / 4.0 auf CentOS 8 / RHEL 8

So installieren Sie den Exim-Mailserver unter CentOS 6

So installieren Sie den LEMP-Server unter CentOS 8