Configuration initiale requise après l'installation de Postfix sur CentOS et avant le démarrage.


Date de publication:4 janvier 2021.



INFOMARTION > Configuration initiale requise après l'installation de Postfix sur CentOS et avant le démarrage.

Vue d'ensemble.

Il s'agit de la procédure de configuration initiale requise pour installer Postfix sur CentOS et le démarrer. Les informations sont basées sur l'hypothèse que CentOS7 est utilisé. Nous aimerions mettre cela en place dans le port de soumission.

Si vous installez également Dovecot, voir aussi.

Postfix sert à envoyer le courrier et Dovecot à le recevoir. Si vous devez traiter l'envoi de courriers électroniques, installez Postfix, et si vous souhaitez également recevoir des courriers électroniques, installez Dovecot.

Les versions sont les suivantes.

Version de CentOS7.6 (1810)
Version de Postfix2.10.1

Table des matières

  1. installer
  2. Détails de la configuration
  3. résumé

1. installer

Cette section décrit la configuration de Postfix, de l'installation au démarrage.

1-1. Installation de Postfix

Effectuez l'installation de Postfix au moyen de la commande yum. Effectuez le travail en tant qu'utilisateur root.

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

1-2. contrôle du bootstrap

Pour vérifier qu'il a été installé avec succès, vérifiez le démarrage.

[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

Tout processus s'exécutant en tant qu'utilisateur de postfix comme décrit ci-dessus est OK. Stop.

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

2. Détails de la configuration

2-1. initialisation

Configuration initiale de Postfix. Fondamentalement, la configuration de Postfix est décrite dans "/etc/postfix/main.cf", nous allons donc modifier main.cf.

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

Modifier comme suit.

main.cf【Avant le changement】


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

main.cf【après le changement】


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

myhostname", "mydomain" et "myorigin" Il s'agit de paramètres liés au domaine. La partie qui est modifiée en 'exemple.com' doit être définie comme le nom de domaine du serveur. La partie "exemple.com" de "https://example.com/" est le nom de domaine.

L'adresse électronique est username@example.com.

mynetworks" est un paramètre lié au réseau. Il s'agit d'une adresse IP qui peut être connectée à postfix. Si le serveur de messagerie est lié à un autre serveur, modifiez cette valeur en conséquence.

'home_mailbox' est le répertoire de messagerie. Sauvegarder l'email envoyé.

2-2. Utilisateur OS ou rejet si non défini dans $alias_maps

Configurer les paramètres pour l'envoi d'emails avec l'utilisateur du système d'exploitation et les utilisateurs listés dans $alias_maps. Un utilisateur OS est un utilisateur ajouté avec useradd.

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

Modifier comme suit.

main.cf【Avant le changement】


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

main.cf【après le changement】


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

Ajoutez ce qui suit à la fin du fichier main.cf.

main.cf


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

Les fichiers 'smtpd_tls_cert_file' et 'smtpd_tls_key_file' doivent être définis en fonction de l'environnement. Définissez le chemin où le certificat du serveur est stocké.

Les paramètres SSL sont requis à l'avance, donc si vous n'avez pas configuré les paramètres SSL, veuillez effectuer les paramètres SSL d'abord. Veuillez vous référer à ce qui suit.

Configuration initiale requise depuis l'installation d'Apache sur CentOS jusqu'au démarrage.

2-3. Paramètres du port de soumission de Postfix

Configurez les paramètres pour l'envoi d'e-mails en utilisant le port de soumission.

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

※Notez que le fichier à modifier est 'master.cf' et non 'main.cf', les noms des fichiers sont donc similaires.

Modifier comme suit.

master.cf【Avant le changement】


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

master.cf【après le changement】


submission inet n - n - - smtpd
~abrégé~
-o smtpd_sasl_auth_enable=yes
~abrégé~
-o smtpd_client_restrictions=permit_sasl_authenticated
~abrégé~
-o smtpd_sender_restriction=permit_sasl_authenticated
~abrégé~
-o smtpd_recipient_restrictions=permit_sasl_authenticated


Installez les bibliothèques nécessaires à l'authentification SASL avec 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

Modifiez saslauthd pour utiliser les comptes UNIX pour l'authentification.

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

Modifier comme suit.

saslauthd


#MECH=pam
MECH=shadow

2-4. Activation de SASL

Activez 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. contrôle du bootstrap

Vérifiez que Postfix démarre.

[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

Si un processus s'exécute en tant qu'utilisateur de postfix comme décrit ci-dessus, la configuration a été effectuée avec succès et le processus est en cours d'exécution. Une fois le démarrage confirmé, il est temps de s'arrêter.

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

2-6. Réglage du démarrage automatique

Enfin, bien que cela ne soit pas obligatoire, il est difficile de démarrer Postfix à chaque redémarrage du serveur. Il faut donc définir un paramètre pour que Postfix démarre automatiquement au démarrage du serveur. Il s'inscrit également à la commande systemctl. Veuillez noter que cette procédure est pour CentOS7, donc si vous utilisez autre chose que CentOS7, vous devrez utiliser la commande Service pour gérer cela.

Vérifiez si '/usr/lib/systemd/system/postfix.service' existe. S'il n'y en a pas, créez un 'postfix.service' en utilisant la procédure suivante. Exécuter en tant qu'utilisateur root.

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

Les informations suivantes sont fournies.

[Unit]
#Description.
Description=Postfix
#Contrôle avant et après l'exécution.
#Before=xxx.service
After=syslog.target network.target

[Service]
#Désignation des utilisateurs et des groupes
User=root
Group=root
#Une fois activé, mettez le statut sur Activé.
Type=oneshot
RemainAfterExit=yes
#Démarrer, arrêter et recharger.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload

[Install]
#Paramètres équivalents à Runlevel 3.
WantedBy=multi-user.target

Ensuite, enregistrez-vous avec la commande 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. résumé

Nous avons décrit la configuration initiale requise lors de l'installation de Postfix.

Il a été assez difficile à mettre en place, donc si vous construisez Postfix, veuillez vous référer à ceci.

Merci d'avoir regardé jusqu'à la fin.