GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer un serveur de messagerie avec PostfixAdmin sur Debian 11

PostfixAdmin est une interface Web gratuite, à source ouverte et utilisée pour gérer le serveur de messagerie Postfix à partir du navigateur Web. Il vous permet d'ajouter des utilisateurs, des alias, de définir un quota de disque, d'ajouter et de supprimer des domaines de l'interface Web. Il prend en charge plusieurs backends de base de données, notamment PostgreSQL, MySQL, MariaDB et SQLite. Il peut être intégré à Squirrelmail et Roundcube via des plugins.

Dans cet article, je vais vous expliquer comment installer PostfixAdmin sur Debian 11.

Prérequis

  • Un serveur exécutant Debian 11 avec postfix installé.
  • Un nom de domaine valide est pointé vers l'adresse IP de votre serveur.
  • Un enregistrement MX valide est pointé avec l'adresse IP de votre serveur.

Mise en route

Tout d'abord, mettez à jour vos packages système avec la dernière version à l'aide de la commande suivante :

apt-get update -y

Une fois votre système mis à jour, définissez le nom d'hôte complet de votre serveur.

hostnamectl set-hostname mail.domain.com

Ensuite, exécutez la commande suivante pour appliquer les modifications.

hostname -f

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer Nginx, MariaDB et PHP

Ensuite, vous devrez installer le serveur Web Nginx, MariaDB, PHP et les autres extensions PHP requises sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

apt-get install nginx mariadb-server php-fpm php-cli php-imap php-json php-mysql php-opcache php-mbstring php-readline unzip sudo -y

Une fois tous les packages installés, vous pouvez passer à l'étape suivante.

Créer une base de données PostfixAdmin

Ensuite, vous devrez créer une base de données et un utilisateur pour PostfixAdmin. Tout d'abord, connectez-vous à la console MariaDB avec la commande suivante :

mysql

Une fois connecté, créez une base de données et un utilisateur avec la commande suivante :

MariaDB [(none)]> CREATE DATABASE postfixadmin;
MariaDB [(none)]> GRANT ALL ON postfixadmin.* TO 'postfixadmin'@'localhost' IDENTIFIED BY 'securepassword';

Ensuite, videz les privilèges et quittez le shell MariaDB avec la commande suivante :

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

À ce stade, la base de données MariaDB est créée pour PostfixAdmin. Vous pouvez maintenant passer à l'étape suivante.

Installer PostfixAdmin

Tout d'abord, vous devrez télécharger la dernière version de PostfixAdmin à partir du site Web de Sourceforge. Vous pouvez le télécharger avec la commande suivante :

wget https://webwerks.dl.sourceforge.net/project/postfixadmin/postfixadmin-3.3.8/PostfixAdmin%203.3.8.tar.gz

Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :

tar -xvzf PostfixAdmin\ 3.3.8.tar.gz

Ensuite, déplacez le répertoire extrait vers le répertoire racine Web de Nginx :

mv postfixadmin-postfixadmin-7d04685 /var/www/html/postfixadmin

Ensuite, créez un répertoire requis pour installer PostfixAdmin :

mkdir /var/www/html/postfixadmin/templates_c

Ensuite, définissez la propriété appropriée sur le répertoire PostfixAdmin :

chown -R www-data: /var/www/html/postfixadmin/

Créez ensuite un fichier config.local.php :

nano /var/www/html/postfixadmin/config.local.php

Ajoutez les lignes suivantes :

<?php
$CONF['configured'] = true;
 
$CONF['database_type'] = 'mysqli';
$CONF['database_host'] = 'localhost';
$CONF['database_user'] = 'postfixadmin';
$CONF['database_password'] = 'securepassword';
$CONF['database_name'] = 'postfixadmin';
 
$CONF['default_aliases'] = array (
 'abuse' => '[email protected]',
 'hostmaster' => '[email protected]',
 'postmaster' => '[email protected]',
 'webmaster' => '[email protected]'
);
 
$CONF['fetchmail'] = 'NO';
$CONF['show_footer_text'] = 'NO';
 
$CONF['quota'] = 'YES';
$CONF['domain_quota'] = 'YES';
$CONF['quota_multiplier'] = '1024000';
$CONF['used_quotas'] = 'YES';
$CONF['new_quota_table'] = 'YES';
 
$CONF['aliases'] = '0';
$CONF['mailboxes'] = '0';
$CONF['maxquota'] = '0';
$CONF['domain_quota_default'] = '0';
?>

Enregistrez et fermez le fichier puis créez le schéma de la base de données PostfixAdmin avec la commande suivante :

sudo -u www-data php /var/www/html/postfixadmin/public/upgrade.php

Ensuite, vous devrez créer un compte super administrateur pour PostfixAdmin. Vous pouvez le créer avec la commande suivante :

bash /var/www/html/postfixadmin/scripts/postfixadmin-cli admin add

Indiquez votre nom d'utilisateur, votre mot de passe et votre domaine d'administrateur comme indiqué ci-dessous :

Welcome to Postfixadmin-CLI v0.3
---------------------------------------------------------------

Admin:  
> [email protected]

Password:  
> [email protected]

Password (again):  
> [email protected]

Super admin:
(Super admins have access to all domains, can manage domains and admin accounts.) (y/n) 
> y

Domain:  
> domain.com

Active: (y/n) 
> y

The admin [email protected] has been added!

---------------------------------------------------------------

Configurer Nginx pour PostfixAdmin

Ensuite, vous devrez créer un fichier de configuration d'hôte virtuel Nginx pour PostfixAdmin. Vous pouvez le créer avec la commande suivante :

nano /etc/nginx/conf.d/domain.com.conf

Ajoutez les lignes suivantes :

server {
        listen 80;
        root /var/www/html/postfixadmin/public;
        index index.html index.htm index.php;
        server_name mail.domain.com;

        location ~ \.php$ {
          fastcgi_split_path_info ^(.+\.php)(/.+)$;
          fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
          fastcgi_index index.php;
          include fastcgi_params;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          fastcgi_intercept_errors off;
          fastcgi_buffer_size 16k;
          fastcgi_buffers 4 16k;
          fastcgi_connect_timeout 600;
          fastcgi_send_timeout 600;
          fastcgi_read_timeout 600;
        }


   location / {
       try_files $uri $uri/ =404;
   }

}

Enregistrez et fermez le fichier puis redémarrez le service Nginx pour appliquer les modifications :

systemctl restart nginx

Vous pouvez également vérifier l'état de Nginx avec la commande suivante :

systemctl status nginx

Vous devriez obtenir le résultat suivant :

? nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-28 08:13:22 UTC; 7s ago
       Docs: man:nginx(8)
    Process: 74644 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 74645 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 74646 (nginx)
      Tasks: 2 (limit: 2341)
     Memory: 3.2M
        CPU: 57ms
     CGroup: /system.slice/nginx.service
             ??74646 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??74647 nginx: worker process

Aug 28 08:13:22 mail.domain.com systemd[1]: Starting A high performance web server and a reverse proxy server...
Aug 28 08:13:22 mail.domain.com systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Aug 28 08:13:22 mail.domain.com systemd[1]: Started A high performance web server and a reverse proxy server.

Accéder à PostfixAdmin

À ce stade, PostfixAdmin est installé et configuré. Vous pouvez maintenant y accéder en utilisant l'URL http://mail.domain.com . Vous serez redirigé vers la page de connexion de PostfixAdmin :

Indiquez votre adresse e-mail d'administrateur, votre mot de passe et cliquez sur Connexion bouton. Vous devriez voir le tableau de bord PostfixAdmin sur l'écran suivant :

Conclusion

Toutes nos félicitations! vous avez installé PostfixAdmin avec succès sur Debian 11. Vous pouvez maintenant gérer facilement votre serveur de messagerie Postfix à partir du navigateur Web. N'hésitez pas à me demander si vous avez des questions.


Debian
  1. Comment configurer un serveur SFTP sur le serveur Debian 11

  2. Configurer un serveur de messagerie avec PostfixAdmin et MariaDB sur CentOS 7

  3. Comment configurer un serveur de messagerie avec PostfixAdmin sur CentOS 7

  4. Comment installer un serveur de messagerie avec PostfixAdmin sur Ubuntu 20.04

  5. Comment configurer un serveur OpenVPN sur Debian 10

Comment configurer facilement un serveur de messagerie sur Debian 9 Stretch avec iRedMail

Comment configurer facilement un serveur de messagerie sur Debian 10 Buster avec iRedMail

Comment configurer LAMP avec Debian 11

Comment configurer le serveur Samba avec Debian 11

Comment installer le serveur de messagerie avec PostfixAdmin sur CentOS 7

Comment configurer un serveur de messagerie avec Modoboa sur Ubuntu 20.04