Počiatočná konfigurácia potrebná po inštalácii Postfixu v systéme CentOS a pred spustením.


Dátum vydania:4. januára 2021.



INFOMARTION > Počiatočná konfigurácia potrebná po inštalácii Postfixu v systéme CentOS a pred spustením.

Prehľad.

Toto je úvodný postup konfigurácie potrebný na inštaláciu a spustenie služby Postfix v systéme CentOS. Informácie vychádzajú z predpokladu, že sa používa systém CentOS7. Chceli by sme to nastaviť v porte na odosielanie.

Ak si nainštalujete aj aplikáciu Dovecot, pozrite si tiež.

Postfix slúži na odosielanie pošty a Dovecot na prijímanie pošty. Ak potrebujete spracovávať odosielanie e-mailov, nainštalujte si Postfix, a ak chcete e-maily aj prijímať, nainštalujte si Dovecot.

Verzie sú nasledovné.

Verzia systému CentOS7.6 (1810)
Verzia služby Postfix2.10.1

Obsah

  1. nainštalovať
  2. Podrobnosti o nastavení
  3. zhrnutie

1. nainštalovať

Táto časť opisuje konfiguráciu programu Postfix od inštalácie až po spustenie.

1-1. Inštalácia aplikácie Postfix

Inštaláciu Postfixu vykonajte pomocou príkazu yum. Vykonajte prácu ako používateľ root.

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

1-2. kontrola štartovacieho pásu

Ak chcete skontrolovať, či bola úspešne nainštalovaná, skontrolujte spustenie.

[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

Každý proces spustený ako používateľ postfixu, ako je popísané vyššie, je v poriadku. Zastavte.

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

2. Podrobnosti o nastavení

2-1. inicializácia

Počiatočná konfigurácia aplikácie Postfix. Konfigurácia Postfixu je v podstate popísaná v súbore "/etc/postfix/main.cf", preto upravíme súbor main.cf.

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

Zmeniť a doplniť takto.

main.cf【Pred zmenou】


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

main.cf【po zmene】


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

myhostname", "mydomain" a "myorigin" Toto sú nastavenia týkajúce sa domény. Časť, ktorá je upravená na "example.com", by mala byť nastavená na názov domény servera. Časť "example.com" v "https://example.com/" je názov domény.

E-mailová adresa je username@example.com.

"mynetworks" je nastavenie týkajúce sa siete. Toto je IP adresa, ktorá môže byť pripojená k službe postfix. Ak je poštový server prepojený s iným serverom, upravte túto hodnotu zodpovedajúcim spôsobom.

'home_mailbox' je e-mailový adresár. Uloženie odoslaného e-mailu.

2-2. Používateľ OS alebo odmietnuť, ak nie je definované v $alias_maps

Konfigurácia nastavení na odosielanie e-mailov s používateľom OS a používateľmi uvedenými v položke $alias_maps. Používateľ OS je používateľ, ktorý je pridaný pomocou funkcie useradd.

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

Zmeniť a doplniť takto.

main.cf【Pred zmenou】


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

main.cf【po zmene】


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

Na koniec main.cf pridajte nasledujúci text.

main.cf


### MAIL SIZE (20 MB.)
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

Súbory 'smtpd_tls_cert_file' a 'smtpd_tls_key_file' by mali byť nastavené podľa prostredia. Nastavenie cesty, kde je uložený certifikát servera.

Nastavenia SSL sa vyžadujú vopred, takže ak ste nenastavili nastavenia SSL, najprv vykonajte nastavenia SSL. Pozrite si, prosím, nasledujúce informácie.

Počiatočná konfigurácia potrebná od inštalácie Apache v systéme CentOS až po spustenie.

2-3. Nastavenia portu pre odosielanie správy Postfix

Nakonfigurujte nastavenia na odosielanie e-mailov pomocou portu na odosielanie.

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

※Všimnite si, že upravovaný súbor je "master.cf", nie "main.cf", takže názvy súborov sú podobné.

Zmeniť a doplniť takto.

master.cf【Pred zmenou】


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

master.cf【po zmene】


submission inet n - n - - smtpd
~skrátenie~
-o smtpd_sasl_auth_enable=yes
~skrátenie~
-o smtpd_client_restrictions=permit_sasl_authenticated
~skrátenie~
-o smtpd_sender_restriction=permit_sasl_authenticated
~skrátenie~
-o smtpd_recipient_restrictions=permit_sasl_authenticated


Nainštalujte potrebné knižnice pre overovanie SASL pomocou 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

Upravte saslauthd na používanie účtov UNIX na overovanie.

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

Zmeniť a doplniť takto.

saslauthd


#MECH=pam
MECH=shadow

2-4. Povolenie protokolu SASL

Povolenie protokolu 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. kontrola štartovacieho pásu

Skontrolujte, či sa spustil program Postfix.

[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

Ak je proces spustený ako používateľ postfixu, ako je popísané vyššie, konfigurácia bola úspešne dokončená a je spustená. Po potvrdení spustenia je čas zastaviť.

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

2-6. Nastavenie automatického spustenia

Nakoniec, hoci to nie je povinné, je ťažké spúšťať Postfix pri každom reštarte servera, preto nastavte, aby sa Postfix spúšťal automaticky pri štarte servera. Registruje sa aj do príkazu systemctl. Upozorňujeme, že tento postup sa týka systému CentOS7, takže ak používate iný systém ako CentOS7, budete musieť použiť príkaz Service.

Skontrolujte, či existuje súbor '/usr/lib/systemd/system/postfix.service'. Ak neexistuje, vytvorte súbor 'postfix.service' pomocou nasledujúceho postupu. Spustite ako používateľ root.

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

Uvádzajú sa tieto informácie.

[Unit]
#Popis.
Description=Postfix
#Kontrola pred a po vykonaní.
#Before=xxx.service
After=syslog.target network.target

[Service]
#Označenie používateľa a skupiny
User=root
Group=root
#Po aktivácii nastavte stav na možnosť Aktivované.
Type=oneshot
RemainAfterExit=yes
#Spustenie, zastavenie a opätovné načítanie.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload

[Install]
#Ekvivalentné nastavenia úrovne Runlevel 3.
WantedBy=multi-user.target

Potom sa zaregistrujte pomocou príkazu 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. zhrnutie

Opísali sme počiatočnú konfiguráciu potrebnú pri inštalácii programu Postfix.

Nastavenie bolo dosť náročné, takže ak vytvárate Postfix, pozrite si tento dokument.

Ďakujeme vám za sledovanie až do konca.