Difference between revisions of "Zimbra Next Generation Modules/Zimbra NG Mobile/Autodiscover"

m (1 revision imported: Zimbra NG)
 
Line 1: Line 1:
<div class="col-md-12"><br></div>
+
#REDIRECT [[Zimbra_NG_Modules/Zimbra_NG_Mobile/Autodiscover]]
<div class="col-md-12"><br></div>
 
<ol class="breadcrumb">
 
  <li>[[Main Page|Zimbra Wiki]]</li>
 
  <li>[[Zimbra_Next_Generation_Modules]]</li>
 
  <li>[[Zimbra_NG_Mobile]]</li>
 
  <li class="active">Autodiscover</li>
 
</ol>
 
__NOTOC__
 
<div class="col-md-12"><br /></div>
 
<div class="col-md-9">
 
    <h2 class="title-header" style="padding-bottom: 9px; border-bottom: 4px solid #0087c3;">Autodiscover</h2>
 
    <div class="col-md-12">
 
        <div class="ibox-content">
 
            <div class="post animated fadeInLeft animation-delay-8" style="padding-top:5px">
 
                <div class="panel panel-default">
 
                    <div class="panel-body">
 
                        <h5 class="post-title">Zimbra NG Mobile - Autodiscover</h5>
 
                        <div class="row">
 
== The [http://technet.microsoft.com/en-us/library/aa997473(v=exchg.141).aspx Autodiscover] feature ==
 
At the beginning of the account creation process on any mobile devices, the client will try to autonomously detect the URL, domain and username before asking the user for an imput.
 
 
 
Zimbra NG Mobile provides its own Autodiscover handler in order to make this feature available in all supported version of Zimbra.
 
 
 
The Autodiscover feature will return the value of the "zimbraPublicHostname" domain property. Should such property be empty, it will fall back to the value of the "zimbraServiceHostName" server property.
 
 
 
The domain name is either sent explicitly by the client or deduced by the http/s request sent by the mobile phone.
 
 
 
== Setting up Autodiscover ==
 
In order to be functional, the Autodiscover feature needs both a dedicated DNS record and a change in Jetty's configuration.
 
 
 
=== Step 1: DNS records ===
 
Two options are available:
 
 
 
* DNS A record: either create a DNS A record or a DNS CNAME record for autodiscover.[yourdomain.com], whose target must be the mailserver (or the appropriate proxy in case of a multistore infrastructure). In order for SSL to be properly functional, you'll either need a wildcard SSL certificate for [yourdomain.com] or to declare "autodiscover.[yourdomain.com]" as a Certificate Subject Alt Name within your certificate.
 
 
 
* DNS SRV record: create a new SRV record like the following:
 
<pre>
 
Service: _autodiscover
 
Protocol: _tcp
 
Port Number: 443
 
Host: [mail.yourdomain.com]
 
</pre>
 
 
 
=== Step 2: Jetty configuration ===
 
 
 
<div class="col-md-8">
 
    <div class="alert alert-warning fade in"> <p> <i class="fa  fa-warning"></i> <strong>warning</strong> </p>
 
    <p class="text-justify">This changes are not guaranteed to survive a Zimbra update. Depending on the contents of the update you might need to manually re-apply this changes.</p>
 
    </div>
 
</div>
 
<div class="clearfix"></div>
 
Based on your Zimbra major release, apply one of the following changes.
 
 
 
A restart of Zimbra's mailboxd service is needed for the new configuration to become active. You can do so by running ''`zmmailboxdctl restart`'' as the ''zimbra'' user.
 
 
 
==== Zimbra 8.x (v8.0.3 and older) ====
 
===== /opt/zimbra/jetty/etc/jetty.xml.in =====
 
Locate the following block...
 
<pre>
 
<Call name="addRule">
 
    <Arg>
 
        <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule">
 
            <Set name="pattern">/Microsoft-Server-ActiveSync/*</Set>
 
            <Set name="replacement">/service/extension/zimbrasync</Set>
 
        </New>
 
    </Arg>
 
</Call>
 
</pre>
 
 
 
... and add the following lines after it:
 
<pre>
 
<Call name="addRule">
 
    <Arg>
 
        <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule">
 
            <Set name="pattern">/Autodiscover/*</Set>
 
            <Set name="replacement">/service/extension/autodiscover</Set>
 
        </New>
 
    </Arg>
 
</Call>
 
<Call name="addRule">
 
    <Arg>
 
        <New class="org.eclipse.jetty.rewrite.handler.RewritePatternRule">
 
            <Set name="pattern">/AutoDiscover/*</Set>
 
            <Set name="replacement">/service/extension/autodiscover</Set>
 
        </New>
 
    </Arg>
 
</Call>
 
</pre>
 
 
 
This will redirect all possible Autodiscover calls to the correct handler.
 
 
 
                        </div>
 
                    </div>
 
                    <div class="col-md-9">
 
                        <div class="panel-footer">
 
                            <p><i class="fa fa-clock-o"></i> Aug 25, 2016 - [https://www.zimbra.com/email-server-software/ Know more »]</p>
 
                        </div>
 
                    </div>
 
                </div>
 
            </div>
 
        </div>
 
    </div>
 
</div>
 
<div class="col-md-3"><br /></div>
 
<div class="col-md-3">
 
    <div class="panel panel-zimbrared-light-border">
 
        <div class="panel-heading">
 
            <h3 class="panel-title"><i class="fa fa-gear pull-left"></i> Zimbra Next Generation Modules</h3>
 
        </div>
 
        <div class="panel-body">
 
            {{ZNG}}
 
        </div>
 
    </div>
 
</div>
 
<div class="col-md-3">
 
    <div class="panel panel-primary-light-border">
 
        <div class="panel-heading">
 
            <h3 class="panel-title"><i class="fa fa-info-circle pull-left"></i> Zimbra Next Generation Modules Resources</h3>
 
        </div>
 
        <div class="panel-body">
 
            {{ZNGL}}
 
        </div>
 
    </div>
 
</div>
 
<div class="clearfix"></div>
 
<div class="col-md-12"><br></div>
 
{{FH}}
 

Latest revision as of 13:29, 29 November 2017

Jump to: navigation, search