De quelle manière les administrateurs système utilisent-ils Ubuntu pour recevoir des notifications système, qui prennent généralement la forme de messages électroniques envoyés au compte racine?
Des exemples de telles notifications sont la sortie des tâches cron ou notifications RAID dégradées .
Sur une installation à peu près implicite d'Ubuntu 10.04, je ne trouve aucun moyen de modifier le courrier de root si ce n'est d'être déposé dans /var/mail/root
. Comment les utilisateurs sont-ils supposés 1. le découvrir et 2. le lire au fur et à mesure de son arrivée?
Je remarque que sur une verrue, l’installateur a ajouté root: myusername
à /etc/aliases
. Donc, à l’époque, l’utilisateur qui a installé le système s’il lit le courrier local. Il semble donc y avoir eu une régression quelque part sur le chemin. Néanmoins, il ne s’agissait pas d’une solution complète, car les utilisateurs d’Ubuntu ne peuvent pas savoir qu’ils ont un courrier local et doivent configurer leur client de messagerie pour le lire.
AJOUTÉ: compte tenu des réponses actuelles, un utilisateur de serveur devrait être en mesure de faire face, à condition qu'il soit au courant du problème. C'est suffisant. Mais considérons J. Random Desktop User, qui ne sait pas utiliser une ligne de commande et sait seulement cliquer sur l'icône de la boîte aux lettres pour lire son courrier. Comment peut-il être averti que son système veut lui dire quelque chose? (Autorisez une intervention ponctuelle d'un utilisateur plus compétent si cela est inévitable.)
Encouragé dans les commentaires par Gilles , j'ai adapté et développé une autre réponse:
(J'utilise Ubuntu 12.04.1 LTS, mais le processus de configuration générale devrait s'appliquer à Ubuntus précédent et futur.)
La première chose à faire est d'installer un agent de transfert de courrier (MTA) afin que le courrier puisse être relayé vers un agent de messagerie tel que Thunderbird
name__. Cela n’est nécessaire que parce que nous traitons du courrier local et voulons pouvoir l’envoyer et le recevoir; avec les comptes de type gmail distants normaux, seul un agent d'utilisateur tel que Thunderbird
est nécessaire.
J'utilise postfix
name__, qui est lui-même une alternative à sendmail
name__, dont il existe des versions commerciales et à code source ouvert. Des informations supplémentaires sur les fonctionnalités de postfix sont disponibles sur le site officiel et les utilisateurs peuvent constater que les listes de diffusion contiennent des informations utiles en cas de problème.
Donc, pour installer le programme, lancez
Sudo apt-get install postfix
Vous pouvez soit le configurer lors de son installation, soit décliner l'offre et l'exécuter ultérieurement.
Sudo dpkg-reconfigure postfix
créer le fichier de configuration important (/etc/postfix/main.cfg
). Si vous modifiez manuellement ce fichier, ce qui n'est pas forcément recommandé, vous devez exécuter Sudo newaliases
et Sudo service postfix restart
ultérieurement pour appliquer les modifications.
Postfix
est assez simple à configurer, bien que vous souhaitiez appliquer certains paramètres. Dans le premier écran que vous voyez ci-dessous, vous devez choisir l'option locale pour votre courrier:
Ensuite, sur l’écran suivant, choisissez votre "nom de messagerie"; il est généralement identique à /etc/hostname
. Vous pouvez accepter les valeurs par défaut pour la plupart des écrans suivants.
Quand il mentionne /etc/aliases
et le destinataire de la racine et du postmaster (comme ci-dessus), vous pouvez entrer votre nom d'utilisateur, mais assurez-vous que votre fichier d'alias est comme il se doit en lisant la prochaine section de ce tutoriel.
Tout d’abord, comme également recommandé dans cette discussion , votre /etc/aliases
devrait ressembler à ceci s'il est configuré correctement:
postmaster: root
root: mike
Sinon, modifiez-le avec Sudo nano /etc/aliases
, puis exécutez Sudo newaliases
et Sudo service postfix restart
afin que la configuration soit mise à jour. La fonction d'alias Postfix's
permet de rediriger le courrier. La configuration est donc très importante pour le reste de ce didacticiel.
Comme indiqué également dans le lien ci-dessus , vous devez créer un fichier .forward
contenant votre nom d'utilisateur et votre hôte local: par exemple. mike@localhost
afin que le courrier de la racine vous soit transmis. Pour ce faire, entrez ces commandes:
Sudo touch /root/.forward
puis courir
Sudo nano /root/.forward
pour placer votre utilisateur: par exemple mike@localhost
dans le fichier et enregistrez-le.
En outre , j'ai découvert qu'il était nécessaire d'ajouter votre utilisateur au groupe de messagerie pour que Thunderbird
puisse accéder aux fichiers courrier:
Sudo adduser $USER mail
puis déconnectez-vous et connectez-vous pour que les modifications prennent effet. Il n'est pas nécessaire de chown
ou chmod
aucun fichier, comme le suggèrent certains articles, et l'ajout de votre utilisateur au groupe de courrier est une pratique bien plus efficace et évite toute modification directe des autorisations sur le système de fichiers racine.
Passons maintenant à la configuration Thunderbird
name__. Allez dans Edition> Paramètres du compte> Actions sur le compte> Ajouter un autre compte> Sélectionnez Spoolmail Unix, puis dans l’écran suivant, indiquez votre nom d’utilisateur dans la première case et placez yourusername@localhost
dans la seconde.
Maintenant, accédez à votre nouveau compte dans les paramètres de compte, sélectionnez les paramètres du serveur, puis sélectionnez le répertoire local sous le nom /var/mail
ou /var/mail/username
(le cas échéant), comme dans la capture d'écran ci-dessous.
Selon les instructions dans cet article vous devrez configurer le serveur smtp si vous souhaitez tester le compte en envoyant un courrier à root@localhost
, puis en cliquant sur obtenir un courrier dans Thunderbird pour le recevoir, car le courrier de root est étant redirigé vers youruser@localhost
.
Accédez à paramètres du compte> serveur sortant et choisissez d’en ajouter un nouveau. Les paramètres doivent être comme dans la capture d'écran ci-dessous:
Enfin, testez enfin votre compte en composant un courrier électronique à root@localhost
puis quelques secondes plus tard, en cliquant sur le bouton obtenir un courrier sur votre compte. Vous devriez voir un email comme ceci:
Certains programmes ou journaux devront être configurés de manière à ce qu'ils envoient un courrier à la racine, mais cela peut être décidé en fonction des besoins. J'espère que cet article sera utile car il n'est pas toujours simple de configurer Thunderbird
pour recevoir le courrier local.
S'il s'agit d'un serveur, je vous conseillerais fortement d'alias la racine en une adresse email réelle pour que votre courrier soit livré à vos administrateurs. C'est aussi simple que d'ajouter
# Person who should get root's mail
root: [email protected]
à la fin de/etc/aliases
Sinon, vous pouvez configurer le courrier de manière à ce que le courrier soit associé à votre nom d'utilisateur local. Lorsque vous vous connecterez, vous obtiendrez le message "Vous avez un courrier", que vous pouvez vérifier à l'aide de la commande mail
ou en installant pine/mutt/Alpine ou un système similaire serveur..
J'utilise personnellement un agent de messagerie appelé nullmailer. Il agit en tant que proxy de messagerie et transfère tous les courriers envoyés à root vers une adresse de votre choix.
Vous devez définir ses paramètres dans les fichiers de configuration sous/etc/nullmailer. Fondamentalement: donnez-lui votre adresse mail et vos identifiants, ainsi que l'adresse sur laquelle vous souhaitez recevoir les emails racine.
Vous pouvez l'installer avec
Sudo apt-get install nullmailer
Vous pouvez obtenir plus d'informations sur sa configuration ici: http://jviz.research.iat.sfu.ca/wiki/index.php?title=HOWTO_Setup_Nullmailer
À l'heure actuelle, il n'existe aucune notification à l'utilisateur indiquant qu'une boîte aux lettres locale racine existe, car user
! = root
Si vous deviez vérifier la boîte aux lettres, vous pouvez taper: Sudo mail
pour lancer l'application de messagerie sous root.
Vous pouvez également vous connecter en tant que root sur ce serveur. Pour déverrouiller le mot de passe root, tapez simplement: Sudo passwd
et entrez un nouveau mot de passe pour root.
Une alternative - J'archive tout le courrier root dans certains fichiers, puis je supprime le courrier d'origine.
Je cron un script (voici la partie clé) -
#!/bin/bash
if `/usr/bin/mail -e`; then
/usr/bin/mail --print 2>&1 > /tmp/email_${date +"%Y-%m-%d_%H.%M").log
echo ‘d *’ | /usr/bin/mail -N > /dev/null
fi
exit 0
Cela garde les choses en ordre et je peux garder un œil dessus. Je pourrais envoyer un fichier courrier quotidien à un identifiant de messagerie externe, etc.