web-dev-qa-db-fra.com

Ubuntu 14.04: Comment envoyer un courrier électronique sans enregistrer un domaine ni avoir un enregistrement MX ou A?

  1. Ubuntu 14.04 sur une machine virtuelle qui n’est pas mon PC. J'utilise mon PC (Windows 7 et PuTTY 0.63) pour y intégrer Shell.
  2. Uname = Linux ubuntucomp 3.13.0-24-generic # 46-Ubuntu SMP Jeu 10 avr. 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
  3. Cette machine est sur notre réseau privé et ne possède pas de nom de domaine enregistré officiel. Il a sa propre adresse IP mais je pense que c'est une adresse IP interne. Cet ordinateur n’est pas accessible de l’extérieur de notre réseau, je ne l’utilise que pour envoyer des courriels sortants aux personnes de notre société. J'ai demandé à Perl d'envoyer un courrier électronique à notre fournisseur SMTP et cela fonctionne bien.
  4. Nous payons pour un service SMTP externe, cette partie est donc effectuée. La seule authentification SMTP que j'utilise est un nom d'utilisateur et un mot de passe. SSL n'est pas nécessaire.
  5. Je n'ai aucune intention de recevoir des courriels du monde extérieur sur cette machine.
  6. Actuellement, mes courriels sont bloqués par mon fournisseur SMTP, peut-être parce que je n'ai pas de nom de domaine complet. L'erreur que je reçois est "connexion expirée".
  7. Je ne parviens même pas à établir une connexion telnet entre mon ordinateur et le serveur SMTP, le message d'erreur "timeout" s'affiche également. J'ai utilisé PuTTY 0.63. Pourtant, je peux toujours envoyer un courrier électronique via un programme Perl sur Ubuntu.
  8. IT ne peut pas m'aider alors je suis seul. Je suis nouveau sur sysadmin pour Ubuntu.

J'ai besoin d'un moyen d'envoyer des courriels avec une pièce jointe via la ligne de commande (pour un processus cron automatisé) sans configurer un domaine enregistré, un enregistrement MX ou A. Quelles sont mes options? Postfix ne le fera pas, car il nécessite un ensemble de paramètres réseau ainsi qu'un enregistrement (DNS?).

Étant donné que le module Perl utilise le protocole SMTP pour se connecter directement au serveur SMTP, je suppose que j'ai besoin d'un paquet Ubuntu qui répète la même chose, sans passer la tâche à un autre MTA.

j'ai essayé SSMTP

  1. En utilisant ssmtp j'ai eu cette erreur de /var/log/mail.log: 22 octobre 10:18:19 ubuntucomp sSMTP [16075]: Impossible de se connecter au port "smtpout.payserv.net" 587. Le processus a échoué avec le code d'erreur 1. 22 oct 10:18:19 sSMTP ubuntucomp [16075]: Impossible d'ouvrir smtpout.payserv.net:587
  2. Dans /etc/ssmtp/ssmtp.conf, j'ai même changé le paramètre "Rewritedomain" pour qu'il soit le nom de domaine de notre société.
  3. Et comment redémarrer le démon SSMTP après avoir modifié le fichier ssmtp.conf? Peut-être que cela fait partie du problème.

J'ai essayé le telnet sur le serveur SMTP

  1. J'ai essayé telnetting dans le port 25 smtpout.payserv.net et viens de recevoir "220 ******************", puis PuTTY 0.63 abandonné.

Est-il possible que mon entreprise SMTP ait bloqué mon IP? Devrais-je les appeler?

revenons un peu en arrière

  1. J'ai fait 'netstat -an | grep smtp' et je n'ai pas vu de service smtp en cours d'exécution. Comment puis-je commencer?
  2. Dois-je ajouter le serveur smtp à/etc/hosts?

Merci.

1
Bulrush

Vous pouvez utiliser l'option mail depuis la ligne de commande Linux. Le format par défaut est donné ci-dessous.

mail -s "Hello ASKUBUNTU" [email protected]

Pour ajouter du contenu au corps du courrier lors de l'exécution de la commande, vous pouvez utiliser les options suivantes. Si vous souhaitez ajouter du texte vous-même:

echo "This will go into the body of the mail." | mail -s "Hello world" [email protected]

Et si vous voulez que le courrier lise le contenu d'un fichier:

mail -s "Hello world" [email protected] < /home/calvin/application.log

Voici d'autres options utiles dans la commande mail:

-s subject (Le sujet du mail)

-c adresse e-mail (marquer une copie dans cette “adresse e-mail” ou CC)

-b email-address (Marquer une copie carbone invisible à cette "adresse e-mail" ou BCC) Voici comment utiliser ces options:

echo "Welcome to the world of Calvin n Hobbes" | mail -s "Hello world" [email protected] -c [email protected] -b [email protected]

Pour ajouter des pièces jointes, vous pouvez utiliser l’option -a dans un courrier électronique.

mail -a /path/to/file.to.attach -s "Hello ASKUBUNTU" [email protected] 

J'espère que cela t'aides.

2
vembutech

Je l'ai! Dans /etc/ssmtp/ssmtp.conf, la ligne "hostname =" doit correspondre au nom de ma machine "ubuntucomp.net". C'est tout ce qui n'allait pas.

Cependant, il n'envoie pas de pièces jointes. Il semble que d'autres personnes ont eu le même problème: comment envoyer un email avec une pièce jointe sans installer de MTA. Et je ne peux pas trouver de solution jusqu'à présent.

0
Bulrush