Administration des utilisateurs, des alias et des domaines - Debian 9.0 Stretch
Rédigé par Marc GUILLAUME | 6 commentairesTraduction de la page : https://workaround.org/ispmail/stretch/managing-users-aliases-domains
Peut-être savez-vous déjà ce que vous avez à faire pour créer des domaines de mail et des utilisateurs. Après-tout j'ai essayé d'expliquer le schéma de la base de données sur la page traitant de la préparation de la base de données. Mais si ce n'était pas assez clair, laissez-moi vous expliquer ce que vous avez à faire pour gérer vos comptes.
Interfaces Web
Si vous n'aimez pas utiliser des requêtes SQL pour gérer votre serveur mail vous pouvez installer une application web de gestion de votre serveur. Plusieurs développeurs ont créé des interfaces web pour des versions précédentes de ce guide et elles fonctionnent probablement toujours car le shéma de base de données n'a pas changé, elles vont simplement créer des hachage de mots de passe faibles. Avec un peu d'expérience dans le développement web vous devriez être capables de développer votre propre système de gestion. J'explique plus bas quelques requêtes SQL de base.
Ces interfaces web vous sont fournies par d'autres mains diligentes :
ISPmail Admin
La page du projet : http://ima.jungclaussen.com/
Une page de démonstration : http://ima.jungclaussen.com/demo/
Gestionnaire de mails virtuels GRSoft
Peter Gutwein a mis à jour son interface web en Php pour ajouter les hachages de mots de passe forts recommandés dans ce guide. Elle est traduite en anglais, allemand, espagnol, français, italien, russe et suédois.
Page du projet -> http://www.grs-service.ch/pub/grs_mminstallation.html
Quelques copies d'écran de l'application en fonctinnement :
Administrer directement dans la base de données
Les tâches courantes avec PHPMyAdmin
Ce tableau détaille les modifications devant être apportées à la base de données en utilisation quotidienne. Vous pouvez parcourir PhpMyAdmin en suivant les instructions de ce tableau :
Créer un domaine de courrier | Insérer une nouvelle ligne dans la table virtual_domains en mettant le nom du nouveau domaine dans le champ name. |
Effacer un domaine de courrier | Effacer la ligne de la table virtual_domains qui correspond à ce nom de domaine. Toutes les redirections et les utilisateurs seront automatiquement effacés en cascade. Cependant les boîtes aux lettres vont rester sur le disque dans /var/vmail/… et vous devrez les effacer à la main. |
Créer un compte mail | Chercher l'identifiant du domaine dans la table virtual_domains. Insérez une ligne dans la table virtual_users. Mettez comme domain_id la valeur que vous venez de chercher dans la table virtual_domain. Mettez dans le champ email l'adresse mail complète du nouvel utilisateur. Créez un nouveau mot de passe dans une console terminal shell avec la commande « dovecot pw -s SHA256-CRYPT » et copiez le résultat dans le champ password. |
Changer le mot de passe d'un utilisateur | Trouvez la bonne ligne dans la table virtual_users en cherchant la bonne valeur dans le champ email. Créez un nouveau mot de passe dans une console terminal shell avec la commande « dovecot pw -s SHA256-CRYPT » et copiez le résultat dans le champ password. |
Supprimer un utilisateur de mail | Trouvez la bonne ligne dans la table virtual_users en cherchant la bonne valeur dans le champ email et effacez-la. La boîte mail reste sur le disque dans /var/vmail/… et il vous faudra l'effacer à la main. |
Créer une redirection de mail | Vous pouvez rediriger les mails depuis une adresse mail (la source) vers d'autres adresses mail (les destinations) et même vers des adresses extérieures à votre serveur de mail. Cherchez l'identifiant du bon domaine (la partie après l'arobase (@) de l'adresse source) dans la table virtual_domains. Créez une nouvelle ligne dans la table virtual_aliases pour chaque destination (si vous avez plusieurs adresses de destination). Placez dans le champ source l'adresse email source complète. Et dans le champ destination mettez l'adresse complète de destination. |
Supprimer une redirection de mail | Recherchez toutes les lignes dans la table virtual_aliases qui contiennent dans le champ source la bonne adresse mail. Supprimez toutes les lignes parmi celle-ci qui contiennent dans le champ destination une adresse à laquelle vous ne voulez plus transférer de mails. |
Les requêtes SQL
Créer un domaine de mail |
INSERT INTO virtual_domains (name) VALUES (“example.org”);
|
Supprimer un domaine de mail |
DELETE FROM virtual_domains where name=’example.org’;
|
Créer un utilisateur de mail |
INSERT INTO virtual_users (domain_id, email, password) VALUES ( (SELECT id FROM virtual_domains WHERE name=’example.org’), ‘john@example.org’, CONCAT(‘{SHA256-CRYPT}’, ENCRYPT (‘new password’, CONCAT(‘$5$’, SUBSTRING(SHA(RAND()), -16)) ) ) ); |
Changer le mot de passe d'un utilisateur |
UPDATE virtual_users SET password=CONCAT(‘{SHA256-CRYPT}’, ENCRYPT (‘new password’, CONCAT(‘$5$’, SUBSTRING(SHA(RAND()), -16)))) WHERE email=’email@address’; |
Supprimer un utilisateur |
DELETE FROM virtual_users WHERE email=’john@example.org’;
|
Créer une redirection de mail |
INSERT INTO virtual_aliases ( domain_id, source, destination ) VALUES ( (SELECT id FROM virtual_domains WHERE name=’example.org’), ‘melissa@example.org’, ‘juila@example.net’ ); |
Supprimer une redirection de mail |
DELETE FROM virtual_aliases WHERE source=’melissa@example.org’;
|