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 CentOS | 7.6 (1810) |
---|---|
Versiunea Postfix | 2.10.1 |
Cuprins
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ă.
#
#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/
#
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ă.
#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 =
Adăugați următoarele la sfârșitul fișierului 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ă.
#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
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ă.
#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.