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-version7.6 (1810)
Postfix-version2.10.1

Innehållsförteckning

  1. installera
  2. Uppsättningsinformation
  3. sammanfattning

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.

main.cf【Före förändring】


#
#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/

main.cf【efter ändringen】


#
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.

main.cf【Före förändring】


#local_recipient_maps = unix:passwd.byname $alias_maps
#local_recipient_maps = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =

main.cf【efter ändringen】


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.

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.

master.cf【Före förändring】


#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

master.cf【efter ändringen】


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.

saslauthd


#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

Klicka här för en profil.


■Kontaktuppgifter.

För frågor om artikeln, vänligen kontakta oss här.