Mail in web-applicaties

Web-applicaties die zich in het appcluster of testcluster bevinden kunnen zowel over uitgaande als inkomende mail beschikken.

Denk bijvoorbeeld aan bevestigingsmails bij registratie van gebruikers (uitgaand) en de eventuele bounce-mails die dit veroorzaakt als gevolg van type-fouten (inkomend).

Uitgaande mail kan verstuurd worden via de volgende smtp-server:

smtp.mail.omroep.nl

In de DNS hebben we hiervoor zowel een A/AAAA als een aantal MX records opgenomen.

Let er altijd op dat het afzenderadres/bounceadres, waar afleverproblemen worden gemeld, een geldig adres is en dat bounces ook daadwerkelijk in behandeling worden genomen.

Mail in webapplicaties zijn echter nogal eens doelwit van criminelen.

Een veilige methode om mail te faciliteren in web-applicaties is om het To: en From: adres te laten verwijzen naar een eigen vast mail-adres. Een eventueel door webgebruikers ingevuld email adres kan dan in de Reply-To: headers opgenomen worden. Zodoende is dit, mogelijk gefingeerde, adres niet van invloed op het transport van de mail en kan dus niet misbruikt worden.

Een voorbeeld van gebruik van smtp in php in combinatie met· PHPMailer

<?php 
require 'PHPMailerAutoload.php';
 
$mail = new PHPMailer;
 
$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.mail.omroep.nl';  // Specify main and backup SMTP servers
$mail->Port = 25;                                    // TCP port to connect to
 
$mail->From = 'redactie@website.nl';
$mail->FromName = 'De redactie';
$mail->addAddress('redactie@website.nl', 'De redactie');
$mail->addReplyTo('info@example.com', 'Information'); 
 
$mail->isHTML(true);
 
$mail->Subject = 'Here is the subject';
$mail->Body    = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
 
if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else { 
    echo 'Message has been sent';
}

We hebben 2 smaken in de aanbieding:

  • real-time scripts
  • een pop3s/imaps service

real-time scripts

Deze service bestaat er uit dat een door u opgeleverd script wordt uitgevoerd bij de ontvangst van een mail. Dit kan bijvoorbeeld gebruikt worden om bounces te analyseren en dus bijv. fout ingevulde email adressen weer uit een database te halen. Via standaard-invoer krijgt u het bericht aangeboden van een postfix-instantie. Voorbeeld:

/e/ap/www.foo.tld/config/myscript.php

Optioneel kunnen we een argumentenlijst meegeven.

pop3s/imaps

Standaard protocollen, geschikt voor standaard libraries. Geschikt voor het batch-gewijs verwerken van mail.

Voor de volgende clusters is er een pop3s/imaps instantie beschikbaar:

cluster pop3s/imaps hostnaam
appcluster app.pop.omroep.nl
testcluster app-test.pop.omroep.nl
  • mail/clusterservices.txt
  • Last modified: 2019/05/28 10:47
  • (external edit)