Ich sende eine E-Mail von Postfix, aber die E-Mail erreicht Outlook.com in Office 365 nicht. Weil es ein Fehler war Senden Sie an Stornierungsanfrageformular Notwendig bei der Verzögerung der Post, Ich werde die Methode vom Aufbau eines Mailservers bis zur Erstellung eines Kontos schreiben, damit Sie E-Mails empfangen können.
Liste der Websites, auf die ich verwiesen habe Erstellen Sie einen Mailserver in der CentOS 7-Umgebung Konstruktionsverfahren für Mailserver (Postfix / Dovecot) Hinweise, die auch Anfänger ausführen können [Mail Server Aufbau (Postfix + Dovecot)] (https://centossrv.com/postfix.shtml) [Mail User Account Registrierung # 2] (https://www.server-world.info/query?os=CentOS_7&p=mail&f=10)
Version CentOS Linux Release 7.3.1611 (Core)
■ Postfix-Installation
[root@centos ~]# yum -y Postfix installieren ← Postfix-Installation
■ Postfix-Einstellungen (1) Postfix-Einstellungen
[root@centos ~]# vi /etc/postfix/main.Siehe ← Postfix-Einstellungsdatei bearbeiten
# INTERNET HOST AND DOMAIN NAMES
#
# The myhostname parameter specifies the internet hostname of this
# mail system. The default is to use the fully-qualified domain name
# from gethostname(). $myhostname is used as a default value for many
# other configuration parameters.
#
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
myhostname = mail.centossrv.com ← hinzugefügt(Geben Sie Ihren eigenen FQDN-Namen an)
# The mydomain parameter specifies the local internet domain name.
# The default is to use $myhostname minus the first component.
# $mydomain is used as a default value for many other configuration
# parameters.
#
#mydomain = domain.tld
mydomain = centossrv.com ← hinzugefügt(Geben Sie Ihren Domainnamen an)
# SENDING MAIL
#
# The myorigin parameter specifies the domain that locally-posted
# mail appears to come from. The default is to append $myhostname,
# which is fine for small sites. If you run a domain with multiple
# machines, you should (1) change this to $mydomain and (2) set up
# a domain-wide alias database that aliases each user to
# [email protected].
#
# For the sake of consistency between sender and recipient addresses,
# myorigin also specifies the default domain name that is appended
# to recipient addresses that have no @domain part.
#
#myorigin = $myhostname
#myorigin = $mydomain
myorigin = $mydomain ← hinzugefügt(E-Mail-Adresse des Absenders beim Senden einer lokalen E-Mail@Fügen Sie den Domainnamen nach hinzu)
# The inet_interfaces parameter specifies the network interface
# addresses that this mail system receives mail on. By default,
# the software claims all active interfaces on the machine. The
# parameter also controls delivery of mail to user@[ip.address].
#
# See also the proxy_interfaces parameter, for network addresses that
# are forwarded to us via a proxy or network address translator.
#
# Note: you need to stop/start Postfix when this parameter changes.
#
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
↓
inet_interfaces =alle ← ändern(Ermöglichen Sie den Empfang von E-Mails von außerhalb)
# The mydestination parameter specifies the list of domains that this# machine considers itself the final destination for.
#
# These domains are routed to the delivery agent specified with the
# local_transport parameter setting. By default, that is the UNIX
# compatible delivery agent that lookups all recipients in /etc/passwd
# and /etc/aliases or their equivalent.
#
# The default is $myhostname + localhost.$mydomain. On a mail domain
# gateway, you should also include $mydomain.
#
# Do not specify the names of virtual domains - those domains are
# specified elsewhere (see VIRTUAL_README).
#
# Do not specify the names of domains that this machine is backup MX
# host for. Specify those names via the relay_domains settings for
# the SMTP server, or use permit_mx_backup if you are lazy (see
# STANDARD_CONFIGURATION_README).
#
# The local machine is always the final destination for mail addressed
# to user@[the.net.work.address] of an interface that the mail system
# receives mail on (see the inet_interfaces parameter).
#
# Specify a list of host or domain names, /file/name or type:table
# patterns, separated by commas and/or whitespace. A /file/name
# pattern is replaced by its contents; a type:table is matched when
# a name matches a lookup key (the right-hand side is ignored).
# Continue long lines by starting the next line with whitespace.
#
# See also below, section "REJECTING MAIL FOR UNKNOWN LOCAL USERS".
#
mydestination = $myhostname, localhost.$mydomain, localhost
↓
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ← ändern(Ermöglichen Sie den Empfang von E-Mails an Ihre Domain)
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
# DELIVERY TO MAILBOX
#
# The home_mailbox parameter specifies the optional pathname of a
# mailbox file relative to a user's home directory. The default
# mailbox file is /var/spool/mail/user or /var/mail/user. Specify
# "Maildir/" for qmail-style delivery (the / is required).
#
#home_mailbox = Mailbox
#home_mailbox = Maildir/
home_mailbox = Maildir/← Ergänzung(Ändern Sie das Mail-Speicherformat in das Maildir-Format)
# SHOW SOFTWARE VERSION OR NOT
#
# The smtpd_banner parameter specifies the text that follows the 220
# code in the SMTP server's greeting banner. Some people like to see
# the mail version advertised. By default, Postfix shows no version.
#
# You MUST specify $myhostname at the start of the text. That is an
# RFC requirement. Postfix itself does not care.
#
#smtpd_banner = $myhostname ESMTP $mail_name
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
smtpd_banner = $myhostname ESMTP unbekannt ← hinzugefügt(Verschleierung des Mail-Server-Software-Namens)
Fügen Sie der letzten Zeile Folgendes hinzu(SMTP-Authentifizierungseinstellungen)
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
Fügen Sie der letzten Zeile Folgendes hinzu(Größenbeschränkung für eingehende E-Mails)
message_size_limit =10485760 ← hinzugefügt(Empfangene Mailgröße 10 MB=10*1024*Begrenzt auf 1024)
[root@centos ~]# vi /etc/postfix/master.cf ← master.Siehe Bearbeiten
submission inet n - n - -smtpd ← am Zeilenanfang#Löschen und kommentieren(SUBMISSION-Port aktiviert)
# -o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=ja ← am Zeilenanfang#Löschen und kommentieren(Aktivieren Sie die SMTP-Authentifizierung am SUBMISSION-Port)
(2) SMTP-Authentifizierungseinstellungen Bei Verwendung des Systembenutzernamens und des Kennworts für die SMTP-Authentifizierung
[root@centos ~]# yum -y install cyrus-sasl ← cyrus-sasl Installation
[root@centos ~]#systemctl start saslauthd ← starte saslauthd
[root@centos ~]#systemctl enable saslauthd ← saslauthd automatische Starteinstellung
# vim /etc/sasl2/smtpd.conf
Von saslauthd zu auxprop geändert
pwcheck_method: auxprop
mech_list: plain login
(3) Erstellen Sie ein Postfach im Maildir-Format Das E-Mail-Speicherformat von Postfix ist ein freigegebenes Verzeichnisformat (ein Format, in dem alle E-Mails in einer Datei mit dem Namen "/ var / spool / mail / user name" gespeichert sind), das jedoch unter dem Gesichtspunkt der Verbesserung der Zugriffsleistung und der Verbesserung der Sicherheit in das Maildir-Format verschoben wird. ..
[Umgang mit neuen Benutzern] Das Postfach im Maildir-Format wird automatisch im Ausgangsverzeichnis erstellt, wenn ein neuer Benutzer hinzugefügt wird
[root@centos ~]# mkdir -p /etc/skel/Maildir/{new,cur,tmp}← Mailbox im Maildir-Format wird automatisch erstellt, wenn ein neuer Benutzer hinzugefügt wird
[root@centos ~]# chmod -R 700 /etc/skel/Maildir/← Mailbox-Berechtigungseinstellung
[root@centos ~]# vi /etc/postfix/main.Siehe ← Postfix-Einstellungsdatei bearbeiten
Fügen Sie der letzten Zeile Folgendes hinzu(E-Mails an nicht vorhandene Benutzer sind nicht bekannt_Lieferung an den Benutzer)
local_recipient_maps =
luser_relay = unknown_user@localhost
[root@centos ~]# echo unknown_user: /dev/null >> /etc/aliases ← unknown_Benutzer-Mail verwerfen
[root@centos ~]# newaliases ← /etc/Aliase ändern die Reflexion
■ Starten Sie Postfix (1) Starten Sie Postfix
[root@centos ~]#systemctl postfix neu starten ← Postfix neu starten * Bei CentOS7
[root@centos ~]#systemctl postfix aktivieren ← Postfix automatische Starteinstellung * Für CentOS 7
■ Dovecot-Installation
[root@centos ~]# yum -y Dovecot installieren ← Dovecot-Installation
■ Dovecot-Einstellungen
[root@centos ~]# vi /etc/dovecot/conf.d/10-mail.conf ← 10-mail.conf bearbeiten
# Location for users' mailboxes. The default is empty, which means that Dovecot
# tries to find the mailboxes automatically. This won't work if the user
# doesn't yet have any mail, so you should explicitly tell Dovecot the full
# location.
#
# If you're using mbox, giving a path to the INBOX file (eg. /var/mail/%u)
# isn't enough. You'll also need to tell Dovecot where the other mailboxes are
# kept. This is called the "root mail directory", and it must be the first
# path given in the mail_location setting.
#
# There are a few special variables you can use, eg.:
#
# %u - username
# %n - user part in user@domain, same as %u if there's no domain
# %d - domain part in user@domain, empty if there's no domain
# %h - home directory
#
# See doc/wiki/Variables.txt for full list. Some examples:
#
# mail_location = maildir:~/Maildir
# mail_location = mbox:~/mail:INBOX=/var/mail/%u
# mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
#
#
#
#mail_location =
mail_location = maildir:~/Maildir ← hinzugefügt(Ändern Sie das Mail-Speicherformat in das Maildir-Format)
# ':' separated list of directories under which chrooting is allowed for mail
# processes (ie. /var/mail will allow chrooting to /var/mail/foo/bar too).
# This setting doesn't affect login_chroot, mail_chroot or auth chroot
# settings. If this setting is empty, "/./" in home dirs are ignored.
# WARNING: Never add directories here which local users can modify, that
# may lead to root exploit. Usually this should be done only if you don't
# allow shell access for users.
#valid_chroot_dirs =
valid_chroot_dirs = /home ← hinzugefügt * OpenSSH+Nur wenn Sie Chroot installiert haben
[root@centos ~]# vi /etc/dovecot/conf.d/10-auth.conf ← 10-auth.conf bearbeiten
# Disable LOGIN command and all other plaintext authentications unless
# SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP
# matches the local IP (ie. you're connecting from the same computer), the
# connection is considered secure and plaintext authentication is allowed.
#disable_plaintext_auth = yes
disable_plaintext_auth =nein ← hinzugefügt(Zulassen der Nur-Text-Authentifizierung)
* Empfohlen, um die Verschlüsselung von Kommunikationsinhalten zwischen Mailservern einzuführen
[root@centos ~]# vi /etc/dovecot/conf.d/10-ssl.conf ← 10-ssl.conf bearbeiten
# SSL/TLS support: yes, no, required.
# disable plain pop3 and imap, allowed are only pop3+TLS, pop3s, imap+TLS and imaps
# plain imap and pop3 are still allowed for local connections
ssl =nein ← SSL-Verbindung deaktiviert
* Empfohlen, um die Verschlüsselung von Kommunikationsinhalten zwischen Mailservern einzuführen
■ Starten Sie Dovecot (1) Starten Sie Dovecot
[root@centos ~]#systemctl start dovecot ← Start Dovecot * Für CentOS 7
[root@centos ~]#systemctl enable dovecot ← Dovecot automatische Starteinstellung * Für CentOS 7
(2) Öffnen Sie den Port TCP 110 (für POP) oder TCP 143 (für IMAP) 【Router】 Übertragen Sie in den Einstellungen auf der Routerseite den Zugriff auf den Port TCP 110 (für POP) oder TCP 143 (für IMAP) auf den Server.
[Firewall] * Nur wenn eine Firewall installiert ist Ermöglichen Sie den Zugriff auf den Port TCP 110 (für POP) oder TCP 143 (für IMAP) in den serverseitigen Firewall-Einstellungen.
■ Mail-Benutzer hinzufügen Fügen Sie als Beispiel den E-Mail-Benutzer centos (E-Mail-Adresse: [email protected]) hinzu.
[root@centos ~]#useradd centos ← Benutzer hinzufügen * Beim Aktivieren der Remoteverbindung über SSH
[root@centos ~]# useradd -s /sbin/nologin centos ← Benutzer hinzufügen * Beim Aktivieren der Remoteverbindung über SSH
[root@centos ~]#passwd centos ← Passworteinstellung
Changing password for user centos.
New UNIX password:← Passwortantwort
Retype new UNIX password:← Passwortantwort(Bestätigung)
passwd: all authentication tokens updated successfully.
Das Folgende gilt nur, wenn Sie einen separaten Benutzernamen und ein separates Kennwort für die SMTP-Authentifizierung verwenden
[root@centos ~]# echo "Passwort" | saslpasswd2 -p -u centos.centossrv.com -c centos ← SMTP認証用ユーザー/Passwort登録
[root@centos ~]#sasldblistusers2 ← SMTP-Authentifizierung Benutzer- / Passwortbestätigung
[email protected]: userPassword
[root@centos ~]# chgrp postfix /etc/sasldb2 ← /etc/Ändern Sie die Gruppe von sasldb2 in postfix * Nur beim ersten Mal
* Beim Löschen des Benutzers / Passworts für die SMTP-Authentifizierung
[root@centos ~]# saslpasswd2 -d centos -u centos.centossrv.com ← Benutzer / Passwort für SMTP-Authentifizierung löschen
■ Funktionsprüfung des Mailservers (bei Verwendung mit CUI)
Absender
$ telnet localhost 25 #Zugriff per SMTP
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.bobo.com ESMTP unknown
HELO bobo.com #Erfolgreicher Zugriff
502 5.5.2 Error: command not recognized
MAIL FROM: [email protected] #Absender-E-Mail-Adresse
250 2.1.0 Ok
RCPT TO: [email protected] #RCPT TO-Überprüfung
250 2.1.5 Ok
DATA #Beschreiben Sie den Inhalt der E-Mail von hier aus
354 End data with .
From: [email protected] #Ziel-E-Mail-Adresse
Subject: test #Gegenstand
Hello wrold. #Inhalt der Mail von hier ↓
test
test
test
test
. #Ende (Punkt)
250 2.0.0 Ok: queued as 576F6245A
QUIT #Ende der Mail (senden)
221 2.0.0 Bye
Connection closed by foreign host.
$
Bestätigen Sie, dass die E-Mail normal im Protokoll gesendet wurde.
$ less /var/log/maillog
Jan 10 17:51:19 t-bobo011 postfix/smtpd[24686]: connect from localhost[::1]
Jan 10 17:51:55 t-bobo011 postfix/smtpd[24686]: 576F6245A: client=localhost[::1]
Jan 10 17:52:50 t-bobo011 postfix/cleanup[24691]: 576F6245A: message-id=<[email protected]>
Jan 10 17:52:50 t-bobo011 postfix/qmgr[12693]: 576F6245A: from=<[email protected]>, size=369, nrcpt=1 (queue active)
Jan 10 17:52:50 t-bobo011 postfix/local[24694]: 576F6245A: to=<[email protected]>, relay=local, delay=69, delays=69/0.01/0/0.01, dsn=2.0.0, status=sent (delivered to maildir)
Jan 10 17:52:50 t-bobo011 postfix/qmgr[12693]: 576F6245A: removed
Empfänger
$ telnet localhost 110 #Zugriff mit POP3
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
USER bobo #Benutzereingabe
+OK
PASS cocobat5555 #Geben Sie das Benutzerpasswort ein
+OK Logged in.
LIST #Bestätigung der Nachrichtenliste
+OK 5 messages:
1 422
2 455
3 429
4 322
5 458
.
RETR 5 #Überprüfen Sie die 5. Nachricht
+OK 458 octets
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]
Received: from localhost (localhost [IPv6:::1])
by mail.bobo.com (Postfix) with SMTP id 576F6245A
for <[email protected]>; Fri, 10 Jan 2014 17:51:41 +0900 (JST)
From: [email protected]
Subject: test
Message-Id: <[email protected]>
Date: Fri, 10 Jan 2014 17:51:41 +0900 (JST)
To: undisclosed-recipients:;
Hello wrold.
test
test
test
test
.
QUIT #Ende
+OK Logging out.
Connection closed by foreign host.
$
Bestätigen Sie, dass die E-Mail normal im Protokoll empfangen wurde.
$ less /var/log/maillog
Jan 10 17:58:29 t-bobo011 dovecot: pop3-login: Login: user=, method=PLAIN, rip=::1, lip=::1, mpid=24714, secured
Jan 10 17:59:05 t-bobo011 dovecot: pop3(bobo): Disconnected: Logged out top=0/0, retr=1/474, del=0/5, size=2086
■ Mail-Client-Einstellungen (wenn der Posteingangsserver auf POP eingestellt ist) Wenn Sie E-Mails an mehreren Orten verwenden, z. B. zu Hause oder im Büro, und Ihre Postfächer nicht synchronisieren müssen (z. B. müssen Sie keine in Ihrem Büro zu Hause empfangenen E-Mails empfangen können), senden Sie POP an den Posteingangsserver. Benutzen. Hier wird Thunderbird als Mail-Software verwendet.
Starten Sie Thunderbird und legen Sie das Mail-Konto im Menü "Datei" ⇒ "Neu" ⇒ "Vorhandenes Mail-Konto" fest. "Ihr Name" ⇒ Anzeigename (Beispiel: [email protected]) "E-Mail-Adresse" ⇒ E-Mail-Adresse (Beispiel: [email protected]) "Passwort" ⇒ Passwort "weitermachen" Wählen Sie "Incoming Server" ⇒ "POP3" "Incoming Server" - "Server Host Name" ⇒ Mail Server Name (Beispiel: mail.centossrv.com) Wählen Sie "Eingehender Server" - "Portnummer" ⇒ "110" Wählen Sie "Eingehender Server" - "SSL" ⇒ "Kein Verbindungsschutz" Wählen Sie "Server empfangen" - "Authentifizierungsmethode" ⇒ "Normale Kennwortauthentifizierung" "Outgoing Server" - "Server Host Name" ⇒ Mail Server Name (Beispiel: mail.centossrv.com) Wählen Sie "Ausgangsserver" - "Portnummer" ⇒ "587" Wählen Sie "Outgoing Server" - "SSL" ⇒ "Kein Verbindungsschutz" Wählen Sie "Outgoing Server" - "Authentifizierungsmethode" ⇒ "Normale Kennwortauthentifizierung" "erneut testen" Vergewissern Sie sich, dass "Die folgenden Kontoeinstellungen wurden durch Überprüfen des angegebenen Servers gefunden" angezeigt wird, und klicken Sie auf "Fertig stellen". Aktivieren Sie "Ich verstehe die Gefahren des Verbindens" und "Fertig".
■ Mail-Client-Einstellungen (wenn der Posteingangsserver auf IMAP eingestellt ist) Wenn Sie E-Mails an mehreren Orten verwenden möchten, z. B. zu Hause oder im Büro, und Ihre Postfächer synchronisieren möchten (z. B. wenn Sie E-Mails empfangen möchten, die in Ihrem Büro zu Hause eingehen), verwenden Sie IMAP als Posteingangsserver. Hier wird Thunderbird als Mail-Software verwendet.
Starten Sie Thunderbird und legen Sie das Mail-Konto im Menü "Datei" ⇒ "Neu" ⇒ "Vorhandenes Mail-Konto" fest.
"Ihr Name" ⇒ Anzeigename (Beispiel: [email protected]) "E-Mail-Adresse" ⇒ E-Mail-Adresse (Beispiel: [email protected]) "Passwort" ⇒ Passwort "weitermachen" Wählen Sie "Incoming Server" ⇒ "IMAP" "Incoming Server" - "Server Host Name" ⇒ Mail Server Name (Beispiel: mail.centossrv.com) Wählen Sie "Eingehender Server" - "Portnummer" ⇒ "143" Wählen Sie "Eingehender Server" - "SSL" ⇒ "Kein Verbindungsschutz" Wählen Sie "Server empfangen" - "Authentifizierungsmethode" ⇒ "Normale Kennwortauthentifizierung" "Outgoing Server" - "Server Host Name" ⇒ Mail Server Name (Beispiel: mail.centossrv.com) Wählen Sie "Ausgangsserver" - "Portnummer" ⇒ "587" Wählen Sie "Outgoing Server" - "SSL" ⇒ "Kein Verbindungsschutz" Wählen Sie "Outgoing Server" - "Authentifizierungsmethode" ⇒ "Normale Kennwortauthentifizierung" "erneut testen" Vergewissern Sie sich, dass "Die folgenden Kontoeinstellungen wurden durch Überprüfen des angegebenen Servers gefunden" angezeigt wird, und klicken Sie auf "Fertig stellen". Aktivieren Sie "Ich verstehe die Gefahren des Verbindens" und "Fertig".
■ Überprüfen Sie den Mailserver □ Senden und Empfangen von E-Mails zwischen denselben Benutzern intern □ Senden und Empfangen von E-Mails zwischen anderen Benutzern intern □ Internes Senden und Empfangen von und nach außen (E-Mail-Adresse des Anbieters usw.) □ Internes Senden und Empfangen mit Mobiltelefonen * □ Senden und Empfangen von E-Mails zwischen denselben Benutzern außerhalb (Firma usw.) □ Senden und Empfangen von E-Mails zwischen anderen Benutzern außerhalb (Unternehmen usw.) □ Senden und Empfangen von außerhalb (Unternehmen usw.) nach außen (E-Mail-Adresse des Anbieters usw.) □ Senden und Empfangen mit Mobiltelefonen außerhalb (Firma usw.) *
■ Ablehnungstest für nicht autorisierte Mail-Relays Geben Sie im Open Relay-Test den Hostnamen Ihres Heimservers (z. B. centossrv.com) unter "Mailserver" ein und klicken Sie auf die Schaltfläche "Auf offenes Relay prüfen". Es werden 18 Arten von Tests durchgeführt, und es ist in Ordnung, wenn für alle Tests Relais NICHT akzeptiert angezeigt wird.
Recommended Posts