Automatická konfigurace poštovní schránky nejen na Postfixu | Buchtič blog o IT a PC Buchtič blog

... je jedním z nejnavštěvovanějších tuzemských blogů zabývajících se IT a češtinami do programů a her. Pokud máte problém nejen
s počítačem pravděpodobně u mě naleznete řešení, případně si o něj napište. Zajímám se rovněž o herní průmysl a internet věcí - každý produkt pořádně prověřím. Přiblížíme si tvorbu webových prezentací a budeme cestovat po světě skrz Google Earth. »

 

Automatická konfigurace poštovní schránky nejen na Postfixu

31 Říj 2020

Možná jste již zažili tu pohodu, kdy dostanete firemní laptop, přihlásíte se do systému, spustíte Outlook a pro konfiguraci stačí jen zadat heslo. Tato funkce však není výsadou pouze poštovního serveru MS Exchange a klienta MS Outlook. Automatickou konfiguraci IMAP/SMTP můžete svým uživatelům nabídnout také v případě, kdy provozujete mj. Postfix.

Autodiscover pro Microsoft Outlook

  1. Na doméně vytvoříme SRV záznam:
    _autodiscover._tcp.mojedomena.cz. 3600 IN SRV 10 10 443 autodiscover.mojedomena.cz
    Ten Outlooku řekne, že konfigurační soubor má hledat na adrese https://autodiscover.mojedomena.cz . To znamená, že musíte mít na webovém serveru platný HTTPS certifikát.
  2. Na webovém serveru vytvoříme subdoménu autodiscover a umístíme do ní soubor autodiscover.php:
    <?php
    //get raw POST data so we can extract the email address
    $data = file_get_contents("php://input");
    preg_match("/\<EMailAddress\>(.*?)\<\/EMailAddress\>/", $data, $email);
    
    //set Content-Type
    header("Content-Type: application/xml");
    echo '<?xml version="1.0" encoding="utf-8" ?>'; ?>
    
    <Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
       <Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a">
           <Account>
               <AccountType>email</AccountType>
               <Action>settings</Action>
               <Protocol>
                   <Type>IMAP</Type>
                   <Server>posta.mojedomena.cz</Server>
                   <Port>143</Port>
                   <DomainRequired>off</DomainRequired>
                   <LoginName><?php echo $email[1]; ?></LoginName>
                   <SPA>off</SPA>
                   <Encryption>TLS</Encryption>
                   <SSL>on</SSL>
                   <AuthRequired>on</AuthRequired>
               </Protocol>
               <Protocol>
                   <Type>SMTP</Type>
                   <Server>posta.mojedomena.cz</Server>
                   <Port>587</Port>
                   <DomainRequired>off</DomainRequired>
                   <LoginName><?php echo $email[1]; ?></LoginName>
                   <SPA>off</SPA>
                   <Encryption>TLS</Encryption>
                   <AuthRequired>on</AuthRequired>
                   <UsePOPAuth>off</UsePOPAuth>
                   <SMTPLast>off</SMTPLast>
               </Protocol>
           </Account>
       </Response>
    </Autodiscover>
  3. Modifikujeme jej dle potřeby. Více informací naleznete na Technetu.
  4. Ve stejné složce vytvoříme soubor .htaccess a umístíme do něj následující obsah:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.$ - [NC,L] RewriteRule ^.$ autodiscover.php [NC,L]

    Tím zajistíme, že při jakémkoli požadavku o přístup na URL autodiscover.mojedomena.cz bude doručen obsah souboru autodiscover.php.
  5. Pokud jste vše správně nastavili, nyní si Outlook automaticky převezme konfiguraci.

Autoconfig pro Mozilla Thunderbird

Thunderbird bohužel neumí automatickou detekci a vždy jde přímo na URL http://autoconfig.mojedomena.cz/mail/config-v1.1.xml. Pokud jej vaši uživatelé používají, i jim můžete usnadnit život.

  1. Na webovém serveru vytvoříme subdoménu autoconfig, v ní další složku s názvem mail a umístíme do ní soubor config-v1.1.php
    <?php header("Content-Type: application/xml"); ?>
    <?xml version="1.0" encoding="UTF-8"?>
    
    <clientConfig version="1.1">
      <emailProvider id="mojedomena.cz">
        <domain><?php echo $_SERVER["SERVER_NAME"]; ?></domain>
    
        <incomingServer type="imap">
          <hostname>posta.mojedomena.czd</hostname>
          <port>143</port>
          <socketType>STARTTLS</socketType>
          <username>%EMAILADDRESS%</username>
          <authentication>password-cleartext</authentication>
        </incomingServer>
    
        <outgoingServer type="smtp">
          <hostname>posta.mojedomena.cz</hostname>
          <port>587</port>
          <socketType>STARTTLS</socketType>
          <username>%EMAILADDRESS%</username>
          <authentication>password-cleartext</authentication>
        </outgoingServer>
    
      </emailProvider>
    </clientConfig>
  2. Modifikujeme jej dle potřeby. Více informací naleznete na developer.mozilla.com.
  3. Ve stejné složce vytvoříme soubor .htaccess a umístíme do něj následující obsah:
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.$ - [NC,L] RewriteRule ^.$ config-v1.1.php [NC,L]

    Tím zajistíme, že při jakémkoli požadavku o přístup na URL http://autoconfig.mojedomena.cz/mail/config-v1.1.xml bude doručen obsah souboru config-v1.1.php.
  4. Pokud jste vše správně nastavili, nyní si Thunderbird automaticky načte konfiguraci.

Pokud hledáte jednodušší způsob, můžete využít tuzemskou službu autoconfig.cz. Pro otestování můžete využít online službu Microsoft Remote Connectivity Analyzer.

Martin Buchta | Kategorie: Internet, IT

← Líbil se vám článek? Podělte se o něj s přáteli!