Initial konfiguration krävs efter installation av Postfix på CentOS och före start.
Datum för offentliggörande:4 januari 2021.
INFOMARTION > Initial konfiguration krävs efter installation av Postfix på CentOS och före start.
Översikt.
Detta är den inledande konfigurationsproceduren som krävs för att installera Postfix på CentOS och starta det. Informationen bygger på antagandet att CentOS7 används. Vi skulle vilja ställa in det här i inlämningshamnen.
Om du också installerar Dovecot, se också.
Postfix är till för att skicka e-post och Dovecot är till för att ta emot e-post. Om du behöver skicka e-post installerar du Postfix, och om du också vill ta emot e-post installerar du Dovecot.
Versionerna är följande.
CentOS-version | 7.6 (1810) |
---|---|
Postfix-version | 2.10.1 |
Innehållsförteckning
1. installera
Det här avsnittet beskriver konfigurationen av Postfix från installation till uppstart.
1-1. Installation av Postfix
Installera Postfix med hjälp av kommandot yum. Utför arbetet som rotanvändare.
[username@hostname ~]$ su -
[root@hostname ~]# yum -y install postfix
1-2. kontroll av uppstartsklämma
För att kontrollera att den har installerats framgångsrikt kan du kontrollera starten.
[root@hostname ~]# /usr/sbin/postfix start
[root@hostname ~]# ps aux | grep postfix
root 1485 0.7 0.2 89744 2128 ? Ss 16:02 0:00 /usr/libexec/postfix/master -w
postfix 1486 0.2 0.4 89848 4080 ? S 16:02 0:00 pickup -l -t unix -u
postfix 1487 0.2 0.4 89916 4104 ? S 16:02 0:00 qmgr -l -t unix -u
root 1489 0.0 0.1 112824 964 pts/0 S+ 16:02 0:00 grep --color=auto postfix
Alla processer som körs som postfix-användare enligt beskrivningen ovan är OK. Stopp.
[root@hostname ~]# /usr/sbin/postfix stop
2. Uppsättningsinformation
2-1. Initialisering
Initial konfiguration av Postfix. Postfix konfiguration beskrivs i princip i "/etc/postfix/main.cf", så vi kommer att ändra main.cf.
[root@hostname ~]# vi /etc/postfix/main.cf
Ändra på följande sätt.
#
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
~förkortning~
#
#mydomain = domain.tld
~förkortning~
#myorigin = $myhostname
#myorigin = $mydomain
~förkortning~
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
~förkortning~
mydestination = $myhostname, localhost.$mydomain, localhost
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
~förkortning~
#mynetworks = 168.100.189.0/24, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~förkortning~
#
#home_mailbox = Mailbox
#home_mailbox = Maildir/
#
myhostname = example.com
#myhostname = virtual.domain.tld
~förkortning~
#
mydomain = example.com
~förkortning~
#myorigin = $myhostname
myorigin = $mydomain
~förkortning~
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost
~förkortning~
#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
~förkortning~
mynetworks = 127.0.0.0/8, 192.168.100.0/24
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~förkortning~
#
#home_mailbox = Mailbox
home_mailbox = Maildir/
myhostname", "mydomain" och "myorigin" Detta är inställningar som rör domänen. Den del som ändras till "example.com" ska anges till serverns domännamn. Delen "example.com" i "https://example.com/" är domännamnet.
E-postadressen är username@example.com.
"mynetworks" är en nätverksrelaterad inställning. Detta är en IP-adress som kan anslutas till postfix. Om e-postservern är kopplad till en annan server, ändra det här värdet i enlighet med detta.
"home_mailbox" är e-postkatalogen. Spara det skickade e-postmeddelandet.
2-2. OS-användare eller förkasta om det inte är definierat i $alias_maps.
Konfigurera inställningarna för att skicka e-post med OS-användaren och de användare som anges i $alias_maps. En OS-användare är en användare som läggs till med useradd.
[root@hostname ~]# vi /etc/postfix/main.cf
Ändra på följande sätt.
#local_recipient_maps = unix:passwd.byname $alias_maps
#local_recipient_maps = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =
local_recipient_maps = unix:passwd.byname $alias_maps
#local_recipient_maps = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =
Lägg till följande i slutet av main.cf.
### MAIL SIZE (20 Mbyte.)
message_size_limit = 20971520
### TLS
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/tls/certs/localhost.crt
smtpd_tls_key_file = /etc/pki/tls/private/localhost.key
"smtpd_tls_cert_file" och "smtpd_tls_key_file" ska ställas in i enlighet med miljön. Ange sökvägen där servercertifikatet lagras.
SSL-inställningar krävs i förväg, så om du inte har ställt in SSL-inställningar bör du göra det först. Se följande.
Initial konfiguration krävs från installation av Apache på CentOS till uppstart.
2-3. Inställningar för Postfix inlämningsport
Konfigurera inställningarna för att skicka e-postmeddelanden med hjälp av inlämningsporten.
[root@hostname ~]# vi /etc/postfix/master.cf
※Observera att filen som ska redigeras är "master.cf", inte "main.cf", så filnamnen liknar varandra.
Ändra på följande sätt.
#submission inet n - n - - smtpd
~förkortning~
#-o smtpd_sasl_auth_enable=yes
~förkortning~
#-o smtpd_client_restrictions=$mua_helo_restrictions
~förkortning~
#-o smtpd_sender_restrictions=$mua_sender_restrictions
~förkortning~
#-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
submission inet n - n - - smtpd
~förkortning~
-o smtpd_sasl_auth_enable=yes
~förkortning~
-o smtpd_client_restrictions=permit_sasl_authenticated
~förkortning~
-o smtpd_sender_restriction=permit_sasl_authenticated
~förkortning~
-o smtpd_recipient_restrictions=permit_sasl_authenticated
Installera de nödvändiga biblioteken för SASL-autentisering med yum.
[root@hostname ~]# yum -y install cyrus-sasl
[root@hostname ~]# yum -y install cyrus-sasl-plain
[root@hostname ~]# yum -y install cyrus-sasl-md5
[root@hostname ~]# yum -y install cyrus-sasl-devel
Redigera saslauthd för att använda UNIX-konton för autentisering.
[root@hostname ~]# vi /etc/sysconfig/saslauthd
Ändra på följande sätt.
#MECH=pam
MECH=shadow
2-4. Aktivering av SASL
Aktivera SASL.
[root@hostname ~]# systemctl enable saslauthd
[root@hostname ~]# systemctl is-enabled saslauthd
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep saslauthd
saslauthd.service enabled
[root@hostname ~]# systemctl daemon-reload
2-5. kontroll av uppstartsklämma
Kontrollera att Postfix startar.
[root@hostname ~]# /usr/sbin/postfix start
[root@hostname ~]# ps aux | grep postfix
root 1838 0.0 0.1 89744 2080 ? Ss 18:14 0:00 /usr/libexec/postfix/master -w
postfix 1839 0.0 0.3 89848 3988 ? S 18:14 0:00 pickup -l -t unix -u
postfix 1840 0.0 0.3 89916 4008 ? S 18:14 0:00 qmgr -l -t unix -u
root 1845 0.0 0.0 112824 968 pts/0 S+ 18:15 0:00 grep --color=auto postfix
Om det finns en process som körs som postfix-användare enligt beskrivningen ovan har konfigurationen slutförts framgångsrikt och den körs. När startskottet har bekräftats är det dags att sluta.
[root@hostname ~]# /usr/sbin/postfix stop
2-6. Inställning för automatisk start
Slutligen, även om det inte är obligatoriskt, är det svårt att starta Postfix varje gång servern startas om, så lägg in en inställning så att Postfix startar automatiskt när servern startar. Den registrerar också kommandot systemctl. Observera att den här proceduren gäller för CentOS7, så om du använder något annat än CentOS7 måste du använda kommandot Service för att hantera detta.
Kontrollera om "/usr/lib/systemd/system/postfix.service" finns. Om det inte finns någon, skapa en "postfix.service" med hjälp av följande procedur. Kör som root-användare.
[root@hostname ~]# touch /etc/systemd/system/postfix.service
[root@hostname ~]# vi /etc/systemd/system/postfix.service
Följande information tillhandahålls.
[Unit]
#Beskrivning.
Description=Postfix
#Kontroll före och efter utförandet.
#Before=xxx.service
After=syslog.target network.target
[Service]
#Användar- och gruppbeteckning
User=root
Group=root
#När den är aktiverad, sätts statusen till Aktiverad.
Type=oneshot
RemainAfterExit=yes
#Starta, stoppa och ladda om.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload
[Install]
#Motsvarande inställningar för Runlevel 3.
WantedBy=multi-user.target
Registrera dig sedan med kommandot systemctl.
[root@hostname ~]# systemctl enable postfix
[root@hostname ~]# systemctl is-enabled postfix
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep postfix
postfix.service enabled
[root@hostname ~]# systemctl daemon-reload
3. sammanfattning
Vi har beskrivit den första konfigurationen som krävs när Postfix installeras.
Det var ganska svårt att sätta upp, så om du bygger Postfix bör du läsa det här.
Tack för att du tittade på till slutet.
■INFORMATION
Klicka här för att komma till den översta sidan med information.
■PROFILE
■Kontaktuppgifter.