Vroeger moest je altijd zelf de servergegevens paraat hebben om je mailadres toe te voegen aan een mailprogramma zoals Outlook, Thunderbird of een ander mail client zoals voor je telefoon/tablet, maar dit is verleden tijd met autodiscover.
Door als hostingpartij/server beheerder een autodiscover mogelijkheid aan te bieden aan je gebruikers/klanten is dit een stuk gebruikersvriendelijker geworden.
Via de onderstaande manieren kun je een Autodisover voor een DirectAdmin paneel instellen:
Microsoft methode
Verander het onderstaande door je eigen gegevens:
- clientdomain.com de domeinnaam van je client.
- server.hostname.com voor IMAP en SMTP je eigen servernaam.
- autodiscover.hostname.com een subdomein voor je eigen domeinnaam.
- Een SRV record aanmaken in de DNS zone van de client domeinnaam:
_autodiscover._tcp.clientdomain.com. 3600 IN SRV 10 10 443 autodiscover.hostname.com.
- Maak de subdomeinnaam autodiscover.hostname.com aan in de DirectAdmin, en voeg daarin de subdomeinnaam map de onderstaande code in een bestand met als bestandsnaam autodiscover.php:
<?php
// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);
$data = file_get_contents('php://input');
$matches = array();
preg_match('/<EMailAddress>(.*)<\/EMailAddress>/', $data, $matches);
$email = $matches[1];
if (!filter_var($email,FILTER_VALIDATE_EMAIL)){
// plonk, no remorse
die();
}
list($user,$domain) = preg_split("/@/",$email,2);
header('Content-Type: application/xml');
?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
<Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a">
<User>
<DisplayName><?=$email?></DisplayName>
</User>
<Account>
<AccountType>email</AccountType>
<Action>settings</Action>
<Protocol>
<Type>IMAP</Type>
<Server>mail.<?=$domain?></Server>
<Port>993</Port>
<DomainRequired>off</DomainRequired>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
<LoginName><?=$email?></LoginName>
</Protocol>
<Protocol>
<Type>POP3</Type>
<Server>mail.<?=$domain?></Server>
<Port>995</Port>
<DomainRequired>off</DomainRequired>
<LoginName><?=$email?></LoginName>
<SPA>off</SPA>
<SSL>on</SSL>
<AuthRequired>on</AuthRequired>
</Protocol>
<Protocol>
<Type>SMTP</Type>
<Server>mail.<?=$domain?></Server>
<Port>587</Port>
<DomainRequired>off</DomainRequired>
<SPA>off</SPA>
<Encryption>TLS</Encryption>
<AuthRequired>on</AuthRequired>
<UsePOPAuth>off</UsePOPAuth>
<SMTPLast>off</SMTPLast>
</Protocol>
</Account>
</Response>
</Autodiscover>
- Houdt rekening mee dat de SRV record poort 443 gebruikt voor autodiscover.hostname.com, dus zorg dat je een geldig certificaat is ingesteld voor dat subdomeinnaam.
Je kunt het testen door naar https://autodiscover.hostname.com te gaan om zeker te zijn dat jee een groene slotje in de browser ziet staan. Het script zoekt voor XML input in het <EMailAddress> tag om daar de de <LoginName> in het resultaat veld toe te voegen.
Mocht het nodig zijn, dan kun je SMTP poort 465 instellen, maar dan moet je de <Encryption> van TLS naar SSL instellen, als het protocol anders is dan 465.
Poort 587 heeft smtp-auth nodig maar slaat sommige spam controles over en gebruikt STARTTLS om SSL te activeren. Poort 465 is volledig SSL maar de clients hebben wellicht problemen met verzenden als hun IP/range in een RBL (een e-mail blacklist) voorkomt. - Als laatst, moeten we een .htaccess bestand aanmaken (indien het een Apache webserver betreft) zodat alle verzoeken naar autodiscover.hostname.com subdomein resultaten verwijst in de autodiscover.php wordt aangeroepen. In de subdomeinen DocumentRoot, voeg de onderstaande code toe:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ autodiscover.php [NC,L]
Thunderbird methode
Hou je niet van de Microsoft auto-detect manier? Thunderbird doet het op een directe manier via:
https://autodiscover.hostname.com/mail/config-v1.1.xml?emailaddress=user@domain.com
Maak de subdomeinnaam autodiscover.hostname.com aan in de DirectAdmin, en voeg daarin een nieuwe map mail. Maak een bestand config-v1.1.xml met daarin de onderstaande code in het bestand:
Voeg DNS SRV record standaard toe voor nieuwe domeinnamen
cd /usr/local/directadmin/data/templates/custom/
cp ../dns_srv.conf .
Open de dns_srv.conf
bestand:
vi dns_srv.conf
En voeg het onderstaande toe (pas autodiscover.hostname.com aan naar je eigen domeinnaam):
_autodiscover._tcp.|DOMAIN|.=10 10 443 autodiscover.hostname.com.
Bronvermelding
Autodiscover information for mail clients to setup pop/imap/smtp settings automatically.