Outils pour utilisateurs

Outils du site


issue140:tutoriel2

Suppose your email demands are rather modest and you just need to send occasional emails from your PC, especially if you like to send information from a job which is supposed to be run regularly. This may be a problem if you don't have access to the company email server. Webmail systems (such as Gmail) can be utilised, but they are ill-suited for this purpose and installing a full-featured email system on a PC would be a major undertaking. If your ISP's email offering is sufficiently reliable despite the various restrictions they will impose, then the sendemail command will be of some interest. Use of sendemail doesn't prevent you using full-featured email clients such as Thunderbird or webmail systems.

Supposez que les mails ne vous soient pas cruciaux et que vous ayez juste besoin d'envoyer occasionnellement des mails à partir de votre PC, particulièrement si vous aimez envoyer des informations à partir d'un programme qui est supposé tourner régulièrement. Ce pourrait être un problème si vous n'avez pas accès au serveur de mail de l'entreprise. Les systèmes de Webmail (comme Gmail) peuvent être utilisés, mais ils sont assez mal taillés pour ce besoin et l'installation d'un système de courriels complet sur un PC serait une tâche de grande ampleur. Si l'offre de messagerie de votre fournisseur internet (FAI) est suffisamment fiable en dépit des nombreuses restrictions qu'ils imposeront, alors la commande sendemail présentera quelque intérêt. L'utilisation de sendemail ne vous empêche nullement d'utiliser un client de messagerie complet comme Thunderbird ou des systèmes de Webmail.

Sendemail makes use of a facility provided by most ISP's (but not all) who provide a simple direct route into their email servers. This will be via a so-called “smart host” (or email relay, mailhost or mailhub) - officially a MTA (Mail Transfer Agent) that simply passes any emails sent to it to your ISP's mail servers for onward delivery. In order that this route cannot easily be used to send spam, your ISP will impose some limitations. They will certainly not allow large numbers of emails to be sent and they may additionally require you to provide user/password details. But the principal check on your identity is that when you make your internet connection they allocate you an IP address from the pool of addresses owned by them, so your email can be identified as being sent by one of their customers. So it is definitely not a means of sending anonymous emails!

Sendemail fait usage d'un service fourni par la plupart des FAI (mais pas tous), un simple routage direct dans leurs serveurs de courriels. Ceci sera via ce qu'on appelle un « smart host » (hôte intelligent) ou relais de messagerie, mailhost ou mailhub - officiellement un MTA (Mail Transfer Agent - Agent de transfert de courrier) qui passe simplement tous les mails qui lui sont envoyés aux serveurs de mail de votre FAI qui les feront suivre. De façon à ce que ce routage ne soit pas utilisé facilement pour l'envoi de pourriels, votre FAI vous imposera certaines limites. Il ne vous permettra certainement pas d'envoyer un grand nombre de messages et il vous imposera peut-être de fournir le détail de vos nom/mot de passe. Mais la vérification principale de votre identité est que, lors de votre connexion à Internet, il vous fournit un adresse IP tirée du lot d'adresses qu'il possède ; ainsi, votre message peut être identifié comme étant envoyé par l'un de ses clients. Ce n'est donc vraiment pas le bon moyen d'envoyer des mails anonymes.

Your ISP should be able to give full details about using their smart host (or SMTP relay). But if not, whilst any list of ISPs and their smart hosts is almost certainly wrong or out of date, one site that may be worth trying is:- https://www.iw-webhosting.co.uk/smtp_hosts.htm Installation of the lightweight email sender (which needs no configuration) is straightforward:- sudo apt install sendemail This is designed to be used in shell scripts, or possibly from the command line. Because emails can take quite a variety of options, the parameters required can be rather lengthy.

Votre FAI devrait pouvoir vous donner tous les détails concernant l'utilisation de leur hôte intelligent (ou relais SMTP). Sinon, bien que toute liste des FAI et de leurs relais intelligents puisse être erronée ou périmée, le site suivant mérite qu'on y jette un œil : https://www.iw-webhosting.co.uk/smtp_hosts.htm

L'installation du transmetteur de mail léger (qui ne nécessite aucune configuration) est simple :

sudo apt install sendemail

Ceci est conçu pour être utilisé directement dans des scripts shell, ou probablement en ligne de commande. Comme les mails peuvent avoir un bon nombre d'options, les paramètres nécessaires peuvent être assez longs.

The only required parameters are the senders email address, a destination address and the name of the smart host. Because email servers usually check that the IP address of the sender matches that recorded in the DNS system and we aren't able to provide that kind of information we can invent a sender’s email address (as it can't be checked, it doesn't matter whether it is valid or not). This seems to work well, for example, Gmail doesn't mark these emails as Spam, although it does warn that it couldn't verify the sender’s identity. Note that should the receiver reply to the email, the sender’s email address will only be used if there is no “reply-to” address supplied. So if the email might be replied to, it is important to include a valid “reply-to” address.

Les seuls paramètres exigés sont l'adresse mail de l'envoyeur, une adresse de destination et le nom du « smart host ». Comme les serveurs de mail vérifient habituellement que l'adresse IP de l'envoyeur correspond à celle enregistrée dans le système DNS et que nous ne sommes pas capables de fournir ce genre d'information, nous pouvons inventer l'adresse mail de l'envoyeur (comme elle ne peut pas être vérifiée, peu importe si elle est valable ou pas). Ceci semble bien marcher ; par exemple Gmail ne marque pas ces messages comme Spam, bien qu'il vous avertisse qu'il ne peut pas vérifier l'identité de l'envoyeur. Notez que si le récepteur répond au mail, l'adresse mail de l'envoyeur sera utilisé uniquement si aucune adresse « répondre à » n'a été fournie. Aussi, si une réponse doit être donnée au message, il est important d'inclure une adresse « répondre à » valide.

Incidentally, this is how a lot of spam is constructed; you are presented with a faked, but reasonable seeming sender’s address, but any reply is sent to the reply-to address which tells the spammer that your email address is active and used by a real person and therefore of value. As a rather trivial example we could enter into a command line:- sendemail -f xxxx@zzzz.com -o reply-to=myemail@mydomainname.com -t test@gmail.com -u 'test of sendemail' -s relay.plus.net I have used a genuine smart host (relay.plus.net) and have specified my invented from-address with the -f parameter, but note that the domain, zzzz.com almost certainly belongs to somebody.

D'ailleurs, c'est comme ça qu'un grand nombre de spams sont créés ; ils vous sont présentés avec une adresse fausse, mais raisonnablement véridique, mais toute réponse est envoyée à l'adresse « répondre à » qui dit au spammeur que votre adresse est active et utilisée par une vraie personne ; donc de valeur.

Comme exemple plutout trivial, nous pouvons entrer ceci en ligne de commande :

sendemail -f xxxx@zzzz.com -o reply-to=myemail@mydomainname.com -t test@gmail.com -u 'test of sendemail' -s relay.plus.net

J'ai utilisé un « smart host » véritable (relay.plus.net) et j'ai spécifié mon adresse d'expéditeur inventée avec un paramètre -f, mais notez que le domaine zzzz.com, doit presque sûrement appartenir à quelqu'un.

The optional -o reply-to= specifies the real email address where I want any replies to go to – otherwise an attempt will be made to send replies to the zzzz.com mail server (if it exists). The -t parameter specifies a destination address (but don't use test@gmail.com – that must belong to someone); this should be a valid email address that you have access to. The -u parameter specifies the subject field, it is enclosed in quotes because of the presence of special characters (spaces). Finally, I've used the -s parameter to specify my ISP's smart host (relay.plus.net).

La partie -o reply-to=, optionnelle, spécifie l'adresse mail réelle vers laquelle je veux que toutes les réponses soient envoyées - autrement, un essai sera fait d'envoyer les réponses vers le serveur de mail zzzz.com (s'il existe).

Le paramètre -t spécifie l'adresse de destination (mais n'utilisez pas test@gmail.com – elle doit appartenir à quelqu'un) ; ce devrait être une adresse valide à laquelle vous avez accès.

Le paramètre -u spécifie le champ du sujet ; il est entre guillemets du fait de la présence de caractères spéciaux (des espaces).

Enfin, j'ai utilisé le paramètre -s pour spécifier le smart host de mon ISP (relay.plus.net).

However, since I've omitted any reference to the email body, sendemail will attempt to take it from standard input. This can be very useful in a script, but if I enter the above example into the command line, I would be prompted for some body text:- Reading message body from STDIN because the '-m' option was not used. If you are manually typing in a message: - First line must be received within 60 seconds. - End manual input with a CTRL-D on its own line. This isn't usually very convenient so I can specify the message body in two ways, either directly with the -m parameter (example: -m “This is the message body”) or by giving the name of a text file that contains the message body (example: -o message-file=/var/log/user.log).

Cependant, comme j'ai omis une référence au corps du message, sendemail essaiera à le récupérer de l'entrée standard. Ce pourra être très utile dans un script, mais, si j'entre l'exemple ci-dessus en ligne de commande, je serai alerté pour fournir un corps de texte :

Le corps de message sera lu à partir de STDIN parce que l'option '-m' n'a pas été utilisée. Si vous tapez votre message à la main : - La première ligne doit être reçue dans les 60 prochaines secondes. - Terminez la saisie manuelle avec un CTRL-D sur sa propre ligne.

Habituellement, ce n'est pas très pratique ; aussi, je peux spécifier le corps de message de deux façons, soit directement avec le paramètre -m (exemple : -m “Ceci est le corps du message”), soit en donnant le nom d'un fichier texte qui contient le corps du message (exemple : -o message-file=/var/log/user.log).

File attachments are included with the -a parameter, followed by a list of file names separated by spaces or other acceptable delimiters. In a similar way, sending to multiple email addresses is possible by specifying a list of addresses for the -t parameter. Lists of addresses can also be entered for the -cc and -bcc (copy & blind copy) parameters. It should be mentioned that the usual smart host port number is 25, which is the default. However, other values are possible so that the smart host might read relay.plus.net:587 (if port 587 is required). In addition you might need to use the -xu and -xp parameters (for user and password), but hopefully your ISP hasn't encountered sufficient abuse of the facility to make this necessary.

Les fichiers joints sont compris dans le paramètre -a, suivi par la liste des noms de fichiers séparés par des espaces ou d'autres séparateurs acceptés.

D'une manière similaire, l'envoi à plusieurs adresses mail est possible en spécifiant une liste d'adresses avec le paramètre -t.

Des listes d'adresses peuvent aussi être saisies avec les paramètres -cc et -bcc (copie et copie cachée).

Il pourrait être aussi noté que le numéro de port habituel du smart host est 25, par défaut. Cependant, d'autres valeurs sont possibles ; ainsi, le smart host pourrait se lire relay.plus.net:587 (si le port 587 est requis). De plus, vous pourriez utiliser les paramètres -xu et -xp (pour utilisateur et mot de passe), mais on peut espérer que votre ISP n'a pas rencontré suffisamment d'abus de ce service pour les rendre nécessaire.

I have only scratched the surface of what this command can do. For a brief summary of what is possible, enter man sendemail For a fuller summary, enter sendemail –help For detailed help, enter one of sendemail –help addressing sendemail –help message sendemail –help misc sendemail –help networking sendemail –help output

Je n'ai fait qu'effleurer tout ce que cette commande peut faire.

Pour un résumé rapide de ce qui est possible, entrez

man sendemail

Pour un revue complète, entrez

sendemail –help

Pour une aide détaillée, entrez l'un des suivants

sendemail –help addressing (destination)

sendemail –help message

sendemail –help misc (divers)

sendemail –help networking (réseau)

sendemail –help output (sortie)

issue140/tutoriel2.txt · Dernière modification : 2019/01/07 11:37 de auntiee