Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| serveur_hebergement:serveur_mail:partie_3_postfixadmin [2022/08/31 18:15] – fate | serveur_hebergement:serveur_mail:partie_3_postfixadmin [2023/08/08 14:00] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Partie 3 : Postfixadmin ====== | ====== Partie 3 : Postfixadmin ====== | ||
| - | Postfixadmin | + | Postfixadmin |
| - | Vous avez besoin d' | ||
| - | Allez dans le répertoire /var/www et lancez la commande <code bash> | + | ===== Installation ===== |
| - | </ | + | |
| - | Créez le répertoire / | + | Allez dans le répertoire /var/www et lancez la commande suivante pour télécharger Postfixadmin : |
| + | <code bash> | ||
| + | |||
| + | Extrayez l' | ||
| + | <code bash> | ||
| + | |||
| + | Puis renommez le répertoire postfixadmin-postfixadmin-3.3.11 en postfixadmin : | ||
| + | <code bash> | ||
| + | |||
| + | Créez le répertoire / | ||
| + | <code bash> | ||
| + | |||
| + | ===== Base de données ===== | ||
| + | |||
| + | On a besoin de créer manuellement la base de données pour Postfixadmin. | ||
| + | |||
| + | Lancez mysql : | ||
| + | <code bash> | ||
| + | |||
| + | Créez la base de données : | ||
| + | <code sql> | ||
| + | |||
| + | Créez l' | ||
| + | <code sql> | ||
| + | |||
| + | Rechargez les droits : | ||
| + | <code sql> | ||
| + | |||
| + | Sortez : | ||
| + | <code bash> | ||
| + | |||
| + | ===== Configuration Dovecot ===== | ||
| + | |||
| + | Ouvrez le fichier dovecot-sql.conf.ext pour configurer l' | ||
| + | <code bash> | ||
| + | Ajoutez ces lignes à la fin (remplacez " | ||
| + | < | ||
| + | driver = mysql | ||
| + | |||
| + | connect = host=localhost dbname=postfixadmin user=postfixadmin password=motdepasse | ||
| + | |||
| + | default_pass_scheme = ARGON2I | ||
| + | |||
| + | password_query = SELECT username AS user, | ||
| + | |||
| + | user_query = SELECT maildir, 2000 AS uid, 2000 AS gid FROM mailbox WHERE username = ' | ||
| + | |||
| + | iterate_query = SELECT username AS user FROM mailbox | ||
| </ | </ | ||
| - | Créez | + | Passons à la configuration |
| - | <code sql>sudo mysql -u root | + | |
| - | create | + | ===== Configuration Postfixadmin ===== |
| + | |||
| + | Créez le fichier config.local.php dans le répertoire de Postfixadmin : | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes (remplacez le mot de passe) : | ||
| + | < | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | $CONF[' | ||
| + | if(@file_exists('/ | ||
| + | $CONF[' | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Maintenant, créez le dossier / | ||
| + | Créez le fichier / | ||
| + | < | ||
| + | user = postfixadmin | ||
| + | password = motdepassesqlpostfixadmin | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT domain FROM domain WHERE domain=' | ||
| + | #query = SELECT domain FROM domain WHERE domain=' | ||
| + | #optional query to use when relaying for backup MX | ||
| + | #query = SELECT domain FROM domain WHERE domain=' | ||
| + | # | ||
| + | </ | ||
| + | |||
| + | Ensuite, on configure Postfix. | ||
| + | |||
| + | ===== Configuration Postfix ===== | ||
| + | |||
| + | On va créer l' | ||
| + | <code bash> | ||
| + | |||
| + | Créez le répertoire /var/vmail : | ||
| + | <code bash> | ||
| + | |||
| + | Changer le propriétaire du répertoire : | ||
| + | <code bash> | ||
| + | |||
| + | Ouvrez le fichier main.cf : | ||
| + | <code bash> | ||
| + | |||
| + | Ajoutez les lignes suivantes pour la gestion des adresses et domaines avec Postfixadmin via la base de données précédemment créé : | ||
| + | < | ||
| + | # Noms de domaine des boites de courriel | ||
| + | virtual_mailbox_domains = proxy: | ||
| + | # Adresses des courriels (adresses réelles et alias) | ||
| + | virtual_mailbox_maps = proxy: | ||
| + | # Redirection des courriels à destination d'une adresse vers une autre adresse | ||
| + | virtual_alias_maps = proxy: | ||
| + | |||
| + | # UID et GID de l' | ||
| + | virtual_minimum_uid = 2000 | ||
| + | virtual_uid_maps = static: | ||
| + | virtual_gid_maps = static: | ||
| + | </ | ||
| + | |||
| + | On va maintenant créer tous les fichiers .cf que l'on a ajouté dans le fichier main.cf. Remplacez le " | ||
| + | |||
| + | Créez le fichier mysql_virtual_mailbox_maps.cf : | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes : | ||
| + | < | ||
| + | user = postfixadmin | ||
| + | password = motdepasses | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT maildir FROM mailbox WHERE username=' | ||
| + | # | ||
| + | </ | ||
| + | |||
| + | Créez le fichier mysql_virtual_alias_domain_mailbox_maps.cf : | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes : | ||
| + | < | ||
| + | user = postfixadmin | ||
| + | password = motdepasse | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT maildir FROM mailbox, | ||
| + | </ | ||
| + | |||
| + | Créez le fichier mysql_virtual_alias_maps.cf | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes : | ||
| + | < | ||
| + | user = postfixadmin | ||
| + | password = motdepasse | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT goto FROM alias WHERE address=' | ||
| + | # | ||
| + | </ | ||
| + | |||
| + | Créez le fichier mysql_virtual_alias_domain_maps.cf : | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes : | ||
| + | < | ||
| + | user = postfixadmin | ||
| + | password = motdepasse | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT goto FROM alias, | ||
| + | </ | ||
| + | |||
| + | Créez le fichier / | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes : | ||
| + | < | ||
| + | # handles catch-all settings of target-domain | ||
| + | user = postfixadmin | ||
| + | password = motdepasse | ||
| + | hosts = localhost | ||
| + | dbname = postfixadmin | ||
| + | query = SELECT goto FROM alias, | ||
| + | </ | ||
| + | |||
| + | On va protéger ces fichiers contenant le mot de passe d' | ||
| + | <code bash> | ||
| + | sudo chmod 0640 -R / | ||
| + | sudo chown root: | ||
| + | sudo chmod 755 / | ||
| + | </ | ||
| + | |||
| + | ===== Configuration Apache2 ===== | ||
| + | |||
| + | Postfixadmin étant une interface web, il va nous falloir configurer Apache2 pour pouvoir y accéder. | ||
| + | |||
| + | Créez le fichier de configuration postfixadmin.domaine.fr.conf (remplacez domaine.fr par votre nom de domaine) : | ||
| + | <code bash> | ||
| + | Ajoutez les lignes suivantes (remplacez domaine.fr par votre domaine) : | ||
| + | <code apache> | ||
| + | < | ||
| + | |||
| + | DocumentRoot / | ||
| + | |||
| + | ServerName postfixadmin.domaine.fr | ||
| + | |||
| + | Redirect / https:// | ||
| + | |||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | DocumentRoot / | ||
| + | |||
| + | ServerName postfixadmin.domaine.fr | ||
| + | |||
| + | CustomLog ${APACHE_LOG_DIR}/ | ||
| + | ErrorLog ${APACHE_LOG_DIR}/ | ||
| + | LogLevel warn | ||
| + | |||
| + | SSLEngine on | ||
| + | SSLCertificateFile / | ||
| + | SSLCertificateKeyFile / | ||
| + | |||
| + | Header set Content-Security-Policy " | ||
| + | |||
| + | < | ||
| + | Options FollowSymLinks MultiViews | ||
| + | AllowOverride All | ||
| + | Order allow, | ||
| + | allow from all | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Activez le fichier de configuration : | ||
| + | <code bash> | ||
| + | |||
| + | Installez les modules PHP nécessaires : | ||
| + | <code bash> | ||
| + | |||
| + | Redémarrer Apache2 : | ||
| + | <code bash> | ||
| + | |||
| + | Ajouter l' | ||
| + | <code bash> | ||
| + | |||
| + | Afin que l' | ||
| + | < | ||
| + | sudo chown root: | ||
| + | sudo chmod 660 / | ||
| + | </ | ||
| - | grant all privileges on postfixadmin.* to ' | + | Allez à l' |
| - | flush privileges; | + | Générez le setup_password et rajoutez la ligne $CONF[' |
| + | Rentrez le setup_password que vous avez utilisé précédemment puis créez l' | ||
| - | exit;</ | + | Connectez-vous sur postfixadmin.domaine.fr pour pouvoir configurer votre serveur de messagerie électronique. |
| + | Dovecot et Postfix sont installés, Postfixadmin configuré. Il est temps de faire connaissance avec [[serveur_hebergement: | ||
| + | Source : https:// | ||