Configurație inițială necesară după instalarea Postfix pe CentOS și înainte de pornire.


Data publicării:4 ianuarie 2021.



INFOMARTION > Configurație inițială necesară după instalarea Postfix pe CentOS și înainte de pornire.

Prezentare generală.

Aceasta este procedura de configurare inițială necesară pentru a instala Postfix pe CentOS și pentru a-l porni. Informațiile se bazează pe ipoteza că se utilizează CentOS7. Am dori să stabilim acest lucru în portul de prezentare.

Dacă instalați și Dovecot, consultați și.

Postfix este destinat trimiterii de mesaje, iar Dovecot este destinat primirii de mesaje. Dacă aveți nevoie să procesați trimiterea de e-mailuri, instalați Postfix, iar dacă doriți să primiți e-mailuri, instalați Dovecot.

Versiunile sunt următoarele.

Versiunea CentOS7.6 (1810)
Versiunea Postfix2.10.1

Cuprins

  1. instalați
  2. Detalii de configurare
  3. rezumat

1. instalați

Această secțiune descrie configurarea Postfix de la instalare până la pornire.

1-1. Instalarea Postfix

Efectuați instalarea Postfix prin intermediul comenzii yum. Efectuați lucrările ca utilizator root.

[username@hostname ~]$ su -
[root@hostname ~]# yum -y install postfix

1-2. verificarea bootstrap

Pentru a verifica dacă a fost instalat cu succes, verificați pornirea.

[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

Orice proces care rulează ca utilizator postfix, așa cum este descris mai sus, este în regulă. Stop.

[root@hostname ~]# /usr/sbin/postfix stop

2. Detalii de configurare

2-1. inițializare

Configurația inițială a Postfix. Practic, configurația Postfix este descrisă în "/etc/postfix/main.cf", așa că vom modifica main.cf.

[root@hostname ~]# vi /etc/postfix/main.cf

Se modifică după cum urmează.

main.cf【Înainte de schimbare】


#
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
~abrevierea~
#
#mydomain = domain.tld
~abrevierea~
#myorigin = $myhostname
#myorigin = $mydomain
~abrevierea~
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
~abrevierea~
mydestination = $myhostname, localhost.$mydomain, localhost
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
#       mail.$mydomain, www.$mydomain, ftp.$mydomain
~abrevierea~
#mynetworks = 168.100.189.0/24, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~abrevierea~
#
#home_mailbox = Mailbox
#home_mailbox = Maildir/

main.cf【după modificare】


#
myhostname = example.com
#myhostname = virtual.domain.tld
~abrevierea~
#
mydomain = example.com
~abrevierea~
#myorigin = $myhostname
myorigin = $mydomain
~abrevierea~
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost
~abrevierea~
#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
#       mail.$mydomain, www.$mydomain, ftp.$mydomain
~abrevierea~
mynetworks = 127.0.0.0/8, 192.168.100.0/24
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~abrevierea~
#
#home_mailbox = Mailbox
home_mailbox = Maildir/

myhostname", "mydomain" și "myorigin" Acestea sunt setări legate de domeniu. Partea care este modificată la "example.com" ar trebui să fie setată la numele de domeniu al serverului. Partea "example.com" din "https://example.com/" este numele de domeniu.

Adresa de e-mail este username@example.com.

"mynetworks" este o setare legată de rețea. Aceasta este o adresă IP care poate fi conectată la postfix. În cazul în care serverul de poștă electronică este conectat la un alt server, modificați această valoare în mod corespunzător.

"home_mailbox" este directorul de e-mail. Salvați e-mailul trimis.

2-2. Utilizator OS sau respinge dacă nu este definit în $alias_maps

Configurați setările pentru trimiterea de e-mailuri cu utilizatorul sistemului de operare și cu utilizatorii enumerați în $alias_maps. Un utilizator al sistemului de operare este un utilizator care este adăugat cu useradd.

[root@hostname ~]# vi /etc/postfix/main.cf

Se modifică după cum urmează.

main.cf【Înainte de schimbare】


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

main.cf【după modificare】


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

Adăugați următoarele la sfârșitul fișierului main.cf.

main.cf


### MAIL SIZE (20 Mbytes.)
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" și "smtpd_tls_tls_key_file" trebuie să fie setate în funcție de mediu. Setați calea în care este stocat certificatul serverului.

Setările SSL sunt necesare în prealabil, astfel încât, dacă nu ați configurat setările SSL, vă rugăm să efectuați mai întâi setările SSL. Vă rugăm să consultați următoarele.

Configurația inițială necesară de la instalarea Apache pe CentOS până la pornire.

2-3. Setări ale portului de trimitere Postfix

Configurați setările pentru trimiterea de e-mailuri utilizând portul de trimitere.

[root@hostname ~]# vi /etc/postfix/master.cf

※Rețineți că fișierul care trebuie editat este "master.cf", nu "main.cf", astfel încât numele fișierelor sunt similare.

Se modifică după cum urmează.

master.cf【Înainte de schimbare】


#submission inet n - n - - smtpd
~abrevierea~
#-o smtpd_sasl_auth_enable=yes
~abrevierea~
#-o smtpd_client_restrictions=$mua_helo_restrictions
~abrevierea~
#-o smtpd_sender_restrictions=$mua_sender_restrictions
~abrevierea~
#-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject

master.cf【după modificare】


submission inet n - n - - smtpd
~abrevierea~
-o smtpd_sasl_auth_enable=yes
~abrevierea~
-o smtpd_client_restrictions=permit_sasl_authenticated
~abrevierea~
-o smtpd_sender_restriction=permit_sasl_authenticated
~abrevierea~
-o smtpd_recipient_restrictions=permit_sasl_authenticated


Instalați bibliotecile necesare pentru autentificarea SASL cu 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

Modificați saslauthd pentru a utiliza conturi UNIX pentru autentificare.

[root@hostname ~]# vi /etc/sysconfig/saslauthd

Se modifică după cum urmează.

saslauthd


#MECH=pam
MECH=shadow

2-4. Activarea SASL

Activați 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. verificarea bootstrap

Verificați dacă Postfix pornește.

[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

Dacă există un proces care rulează ca utilizator postfix, așa cum este descris mai sus, configurația a fost finalizată cu succes și acesta rulează. Odată ce a fost confirmată pornirea, este timpul să vă opriți.

[root@hostname ~]# /usr/sbin/postfix stop

2-6. Setare pentru pornire automată

În cele din urmă, deși nu este obligatoriu, este dificil să se pornească Postfix de fiecare dată când serverul este repornit, așa că introduceți o setare astfel încât Postfix să pornească automat la pornirea serverului. De asemenea, se înregistrează la comanda systemctl. Vă rugăm să rețineți că această procedură este pentru CentOS7, așa că, dacă folosiți orice altceva decât CentOS7, va trebui să utilizați comanda Service pentru a rezolva această problemă.

Verificați dacă '/usr/lib/systemd/system/postfix.service' există. Dacă nu există, creați un "postfix.service" folosind următoarea procedură. Rulați ca utilizator root.

[root@hostname ~]# touch /etc/systemd/system/postfix.service
[root@hostname ~]# vi /etc/systemd/system/postfix.service

Sunt furnizate următoarele informații.

[Unit]
#Descriere.
Description=Postfix
#Controlul înainte și după execuție.
#Before=xxx.service
After=syslog.target network.target

[Service]
#Desemnarea utilizatorului și a grupului
User=root
Group=root
#Odată activat, setați statutul pe Activat.
Type=oneshot
RemainAfterExit=yes
#Porniți, opriți și reîncărcați.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload

[Install]
#Setări echivalente Runlevel 3.
WantedBy=multi-user.target

În continuare, înregistrați-vă cu ajutorul comenzii 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. rezumat

Am descris configurația inițială necesară atunci când Postfix este instalat.

A fost destul de greu de configurat, așa că, dacă construiți Postfix, vă rugăm să consultați acest lucru.

Vă mulțumim că ne-ați urmărit până la sfârșit.