@slm n'est pas vraiment le même que cette question laisse entendre que l'on a besoin d'un serveur SMTP pour exécuter le courrier, mais je demande si c'est absolument nécessaire
puk
1
Oui, c'est un doublon possible, je vous ai répondu b / c que Q le prenait un peu trop spécifique. On se sent toujours comme un dup mais je vous ai quand même répondu 8-)
slm
Réponses:
14
Non, vous n'avez pas besoin d'un serveur de messagerie pour envoyer du courrier. Je suis le plus familier avec Sendmail et il existe 3 classifications de fonctionnalités qui répondent aux e-mails en tant que service. MDA (Mail Delivery Agents) est 1, et MTA (Mail Transfer Agents) est 2, et 3 est MUA (Mail User Agents).
La terminologie devient confuse, mais vous n'avez pas besoin qu'un MTA soit exécuté tout le temps. Le MTA sera appelé chaque fois que le MUA ( mail) veut "envoyer" du courrier.
Lorsque vous exécutez mailet vous spécifiez une adresse pour envoyer du courrier à, [email protected]. Le client de messagerie invoquera le MTA ( /usr/bin/sendmail) qui interrogera ensuite DNS pour cet hôte / domaine (example.com) et découvrira quelle valeur est désignée pour son enregistrement MX. MX signifie Mail Exchanger.
Exemple
Vous pouvez utiliser la digcommande pour voir ceci:
Le client tentera donc de se connecter à eggs.gnu.org sur le port 25 pour envoyer cet e-mail.
Serveur dns?
@puk a posé la question de suivi suivante:
Ce DNS est-il sur ma machine locale?
A quoi j'ai répondu:
@puk - cela peut être de la même manière que le serveur de messagerie, mais ce n'est généralement pas le cas. Regardez dans votre /etc/resolv.conffichier et aussi lorsque vous exécutez la digcommande, vous remarquerez la SERVER: ...ligne en bas. C'est le serveur DNS qui répond à votre demande.
Exemple
Mon /etc/resolv.confdossier contient les éléments suivants:
Et pour le lecteur astucieux, une ma demande, comment est-ce configuré? La réponse est le /etc/nsswitch.conffichier. Plus précisément cette ligne:
hosts: files mdns4_minimal [NOTFOUND=return] dns
Cela dit, utilisez d'abord les fichiers ( /etc/hosts), puis mdns4_minimal. C'est un DNS multicast. Il s'agit essentiellement d'un cache de recherches précédentes. Enfin, il utilise dnsqui est l'adresse IP du nameserverdésigné dans le /etc/resolv.conffichier.
Cela dépend vraiment de la version que mailvous utilisez.
Toutes les versions ont besoin d'un MTA pour délivrer le courrier, mais certaines versions sont capables d'utiliser SMTP pour parler à un MTA distant (le "smarthost", par exemple le serveur de messagerie de votre FAI) et certaines ne peuvent que diriger le message /usr/sbin/sendmailpour envoyer le courrier via un MTA local.
Dans ce dernier cas, le MTA local pourrait être un MTA à part entière comme sendmail ou exim ou postfix . Ou il peut s'agir d'un simple MTA d'envoi uniquement comme nullmailer ou ssmtp . Ou un mini-MTA légèrement plus sophistiqué comme msmtp qui prend également en charge la mise en file d'attente du courrier pour une livraison ultérieure.
Dans le monde du logiciel libre et open source, il existe deux variantes principales du mailxpackage (qui fournit la mailcommande): bsd-mailxet heirloom-mailx.
bsd-mailx ne parle pas SMTP et ne peut envoyer du courrier qu'en le redirigeant vers/usr/sbin/sendmail
hierloom-mailx peut parler SMTP à un smarthost ainsi que la méthode traditionnelle «pipe-to-sendmail».
Donc, pour répondre à votre question "Avez-vous besoin d'un serveur de messagerie?". Oui, en quelque sorte. Vous en avez besoin mais, selon la version du courrier que vous avez installée, il se peut que vous n'ayez pas à l'installer et à la configurer sur votre propre système.
OMI, vous êtes mieux avec un MTA minimal que msmtpde compter uniquement sur un smarthost heirloom-mailxcar vous devez toujours mettre en file d'attente le courrier pour une livraison ultérieure lorsque votre connexion Internet est en panne ou que votre smarthost est inaccessible. Avec une file d'attente locale, mailet d' crondautres programmes peuvent simplement envoyer et oublier n'importe quel courrier. Sans file d'attente locale, ils doivent en quelque sorte gérer la condition d'erreur si l'hôte intelligent n'est pas disponible.
Réponses:
Non, vous n'avez pas besoin d'un serveur de messagerie pour envoyer du courrier. Je suis le plus familier avec Sendmail et il existe 3 classifications de fonctionnalités qui répondent aux e-mails en tant que service. MDA (Mail Delivery Agents) est 1, et MTA (Mail Transfer Agents) est 2, et 3 est MUA (Mail User Agents).
La terminologie devient confuse, mais vous n'avez pas besoin qu'un MTA soit exécuté tout le temps. Le MTA sera appelé chaque fois que le MUA (
mail
) veut "envoyer" du courrier.Lorsque vous exécutez
mail
et vous spécifiez une adresse pour envoyer du courrier à,[email protected]
. Le client de messagerie invoquera le MTA (/usr/bin/sendmail
) qui interrogera ensuite DNS pour cet hôte / domaine (example.com) et découvrira quelle valeur est désignée pour son enregistrement MX. MX signifie Mail Exchanger.Exemple
Vous pouvez utiliser la
dig
commande pour voir ceci:Le client tentera donc de se connecter à eggs.gnu.org sur le port 25 pour envoyer cet e-mail.
Serveur dns?
@puk a posé la question de suivi suivante:
A quoi j'ai répondu:
@puk - cela peut être de la même manière que le serveur de messagerie, mais ce n'est généralement pas le cas. Regardez dans votre
/etc/resolv.conf
fichier et aussi lorsque vous exécutez ladig
commande, vous remarquerez laSERVER: ...
ligne en bas. C'est le serveur DNS qui répond à votre demande.Exemple
Mon
/etc/resolv.conf
dossier contient les éléments suivants:Et des requêtes comme celle-ci, en utilisant
dig
:Résultat en bas:
Et pour le lecteur astucieux, une ma demande, comment est-ce configuré? La réponse est le
/etc/nsswitch.conf
fichier. Plus précisément cette ligne:Cela dit, utilisez d'abord les fichiers (
/etc/hosts
), puismdns4_minimal
. C'est un DNS multicast. Il s'agit essentiellement d'un cache de recherches précédentes. Enfin, il utilisedns
qui est l'adresse IP dunameserver
désigné dans le/etc/resolv.conf
fichier.la source
Cela dépend vraiment de la version que
mail
vous utilisez.Toutes les versions ont besoin d'un MTA pour délivrer le courrier, mais certaines versions sont capables d'utiliser SMTP pour parler à un MTA distant (le "smarthost", par exemple le serveur de messagerie de votre FAI) et certaines ne peuvent que diriger le message
/usr/sbin/sendmail
pour envoyer le courrier via un MTA local.Dans ce dernier cas, le MTA local pourrait être un MTA à part entière comme sendmail ou exim ou postfix . Ou il peut s'agir d'un simple MTA d'envoi uniquement comme nullmailer ou ssmtp . Ou un mini-MTA légèrement plus sophistiqué comme msmtp qui prend également en charge la mise en file d'attente du courrier pour une livraison ultérieure.
Dans le monde du logiciel libre et open source, il existe deux variantes principales du
mailx
package (qui fournit lamail
commande):bsd-mailx
etheirloom-mailx
.bsd-mailx ne parle pas SMTP et ne peut envoyer du courrier qu'en le redirigeant vers
/usr/sbin/sendmail
hierloom-mailx peut parler SMTP à un smarthost ainsi que la méthode traditionnelle «pipe-to-sendmail».
Donc, pour répondre à votre question "Avez-vous besoin d'un serveur de messagerie?". Oui, en quelque sorte. Vous en avez besoin mais, selon la version du courrier que vous avez installée, il se peut que vous n'ayez pas à l'installer et à la configurer sur votre propre système.
OMI, vous êtes mieux avec un MTA minimal que
msmtp
de compter uniquement sur un smarthostheirloom-mailx
car vous devez toujours mettre en file d'attente le courrier pour une livraison ultérieure lorsque votre connexion Internet est en panne ou que votre smarthost est inaccessible. Avec une file d'attente locale,mail
et d'crond
autres programmes peuvent simplement envoyer et oublier n'importe quel courrier. Sans file d'attente locale, ils doivent en quelque sorte gérer la condition d'erreur si l'hôte intelligent n'est pas disponible.la source