Počáteční konfigurace vyžadovaná po instalaci služby Postfix v systému CentOS a před spuštěním.


Datum vydání:4. ledna 2021.



INFOMARTION > Počáteční konfigurace vyžadovaná po instalaci služby Postfix v systému CentOS a před spuštěním.

Přehled.

Toto je úvodní konfigurační postup potřebný k instalaci a spuštění služby Postfix v systému CentOS. Informace vycházejí z předpokladu, že je používán systém CentOS7. Rádi bychom to nastavili v přístavu pro odesílání.

Pokud instalujete také službu Dovecot, viz také.

Postfix slouží k odesílání pošty a Dovecot k jejímu přijímání. Pokud potřebujete zpracovávat odesílání e-mailů, nainstalujte si Postfix, a pokud chcete e-maily také přijímat, nainstalujte si Dovecot.

Verze jsou následující.

Verze systému CentOS7.6 (1810)
Verze aplikace Postfix2.10.1

Obsah

  1. nainstalovat
  2. Podrobnosti o nastavení
  3. shrnutí

1. nainstalovat

Tato část popisuje konfiguraci služby Postfix od instalace až po spuštění.

1-1. Instalace aplikace Postfix

Instalaci Postfixu proveďte pomocí příkazu yum. Práci proveďte jako uživatel root.

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

1-2. kontrola bootstrapu

Chcete-li zkontrolovat, zda byla úspěšně nainstalována, zkontrolujte spuštění.

[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

Jakýkoli proces spuštěný jako uživatel postfixu, jak je popsáno výše, je v pořádku. Zastavte.

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

2. Podrobnosti o nastavení

2-1. inicializace

Počáteční konfigurace služby Postfix. Konfigurace Postfixu je v podstatě popsána v souboru "/etc/postfix/main.cf", takže upravíme soubor main.cf.

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

Změnit takto.

main.cf【Před změnou】


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

main.cf【po změně】


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

myhostname", "mydomain" a "myorigin" Jedná se o nastavení týkající se domény. Část, která je upravena na 'example.com', by měla být nastavena na název domény serveru. Část "example.com" ve slově "https://example.com/" je název domény.

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

"mynetworks" je nastavení související se sítí. Jedná se o IP adresu, která může být připojena k serveru postfix. Pokud je poštovní server propojen s jiným serverem, upravte tuto hodnotu odpovídajícím způsobem.

'home_mailbox' je e-mailový adresář. Uložení odeslaného e-mailu.

2-2. uživatel OS nebo odmítnout, pokud není definováno v $alias_maps

Konfigurace nastavení pro odesílání e-mailů s uživatelem operačního systému a uživateli uvedenými v poli $alias_maps. Uživatel operačního systému je uživatel přidaný pomocí příkazu useradd.

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

Změnit takto.

main.cf【Před změnou】


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

main.cf【po změně】


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

Na konec souboru main.cf přidejte následující příkaz.

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

Soubory 'smtpd_tls_cert_file' a 'smtpd_tls_key_file' by měly být nastaveny podle prostředí. Nastavte cestu, kde je uložen certifikát serveru.

Nastavení SSL je vyžadováno předem, takže pokud jste nastavení SSL nenastavili, nejprve proveďte nastavení SSL. Podívejte se prosím na následující informace.

Počáteční konfigurace potřebná od instalace Apache v systému CentOS až po spuštění.

2-3. Nastavení portu pro odesílání zpráv Postfix

Konfigurace nastavení pro odesílání e-mailů pomocí portu pro odesílání.

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

※Všimněte si, že upravovaný soubor je 'master.cf', nikoli 'main.cf', takže názvy souborů jsou podobné.

Změnit takto.

master.cf【Před změnou】


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

master.cf【po změně】


submission inet n - n - - smtpd
~zkrácení~
-o smtpd_sasl_auth_enable=yes
~zkrácení~
-o smtpd_client_restrictions=permit_sasl_authenticated
~zkrácení~
-o smtpd_sender_restriction=permit_sasl_authenticated
~zkrácení~
-o smtpd_recipient_restrictions=permit_sasl_authenticated


Nainstalujte potřebné knihovny pro ověřování SASL pomocí nástroje 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 tak, aby pro ověřování používal účty UNIX.

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

Změnit takto.

saslauthd


#MECH=pam
MECH=shadow

2-4. Povolení protokolu SASL

Povolte 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 bootstrapu

Zkontrolujte, zda se spustí služba 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

Pokud je proces spuštěn jako uživatel postfixu, jak je popsáno výše, byla konfigurace úspěšně dokončena a je spuštěn. Po potvrzení spuštění je čas zastavit.

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

2-6. Nastavení automatického spuštění

A konečně, ačkoli to není povinné, je obtížné spouštět Postfix při každém restartu serveru, proto nastavte, aby se Postfix spouštěl automaticky při startu serveru. Registruje se také do příkazu systemctl. Upozorňujeme, že tento postup je určen pro systém CentOS7, takže pokud používáte jiný systém než CentOS7, budete muset použít příkaz Service.

Zkontrolujte, zda existuje soubor '/usr/lib/systemd/system/postfix.service'. Pokud není k dispozici, vytvořte soubor 'postfix.service' následujícím postupem. Spusťte jako uživatel root.

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

K dispozici jsou následující informace.

[Unit]
#Popis.
Description=Postfix
#Kontrola před a po provedení.
#Before=xxx.service
After=syslog.target network.target

[Service]
#Označení uživatele a skupiny
User=root
Group=root
#Po aktivaci nastavte stav na Aktivováno.
Type=oneshot
RemainAfterExit=yes
#Spuštění, zastavení a opětovné načtení.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload

[Install]
#Ekvivalentní nastavení úrovně Runlevel 3.
WantedBy=multi-user.target

Poté se zaregistrujte pomocí pří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. shrnutí

Popsali jsme počáteční konfiguraci vyžadovanou při instalaci služby Postfix.

Nastavení bylo docela náročné, takže pokud vytváříte Postfix, podívejte se na tento dokument.

Děkujeme, že jste se dívali až do konce.




■INFORMATION

Kliknutím sem přejdete na horní stránku s informacemi.


■PROFILE

Kliknutím sem získáte profil.


■Kontaktní údaje.

V případě dotazů k článku nás prosím kontaktujte zde.