Page 1 of 2 12 LastLast
Results 1 to 10 of 11

Thread: Zimbra and Exchange coexistence.

  1. #1
    Join Date
    Feb 2008
    Posts
    1
    Rep Power
    7

    Default Zimbra and Exchange coexistence.

    In company where I work there are two offices. One uses Windows with Exchange, the other one is dealing with developement and uses Linux workstations and has no collaboration suite yet.

    The "Windows" office wants better contact with us, so they want us to join their Exchange based infrastructure - which is not very good solution, as we do not have any real working solution to connect to Exchange for calendars, meetings and such (exchange connector for Evolution is rather crappy, and AFAIK does not work with newest Exchange).

    Can Zimbra work with Exchange to share all the group calendars? So if somebody adds some meetings in their Outlook in the other office, we can use Zimbra to see those meetings in Zimbra webmail or in some CalDAV application?

  2. #2
    Join Date
    Apr 2007
    Location
    San Jose
    Posts
    406
    Rep Power
    8

    Default

    Quote Originally Posted by kajetan View Post
    In company where I work there are two offices. One uses Windows with Exchange, the other one is dealing with developement and uses Linux workstations and has no collaboration suite yet.

    The "Windows" office wants better contact with us, so they want us to join their Exchange based infrastructure - which is not very good solution, as we do not have any real working solution to connect to Exchange for calendars, meetings and such (exchange connector for Evolution is rather crappy, and AFAIK does not work with newest Exchange).

    Can Zimbra work with Exchange to share all the group calendars? So if somebody adds some meetings in their Outlook in the other office, we can use Zimbra to see those meetings in Zimbra webmail or in some CalDAV application?

    you can currently do the following:

    1) schedule meetings between the two systems
    2) have outlook users view the zimbra user's free/busy

    we are currently working on the free busy interop in the reverse direction.

  3. #3
    Join Date
    Jun 2007
    Location
    Brisbane
    Posts
    17
    Rep Power
    8

    Default

    I am interested in how this is going.. I'm sure there are plenty of departments out there in a similar situation.

    I'm looking for better integration with the rest of the company (ad/exchange) for my mac/linux clients. Getting these platforms to work directly with exchange doesn't work out all that well.

    Having a zimbra box become a sort of 'man in the middle' between non-windows clients and the exchange system could be an exciting venture. Imagine installing some 'edge' zimbra servers that work with your companies exchange system.. if things worked well, they could end up replacing exchange completely!

    If anybody has more information (thanks Anthony for your 2 points) that they could share, especially if you are or have implemented this, then holler away

    Dallas
    Last edited by enterprisetoday; 02-27-2008 at 09:25 PM. Reason: Grammatical

  4. #4
    Join Date
    May 2007
    Location
    Oklahoma
    Posts
    703
    Rep Power
    9

    Default

    Have the one office get rid of Exchange and both move to Zimbra. In all honesty, if I were the Network Admin that is exactly what I would do.

  5. #5
    Join Date
    Apr 2008
    Posts
    1
    Rep Power
    7

    Default

    Quote Originally Posted by alee View Post
    you can currently do the following:

    1) schedule meetings between the two systems
    2) have outlook users view the zimbra user's free/busy

    we are currently working on the free busy interop in the reverse direction.
    Bit of an old thread but I didn't want to dupe it.

    I am interested in interoperability with Exchange as well. We have a group of users at my company on Macs and Linux. We would love to move to Zimbra but still be able to book meetings with Exchange users (which means we also need to view the availability (free/busy) of Exchange users).

    Any update on this?

    Thanks!

  6. #6
    Join Date
    May 2006
    Location
    USA
    Posts
    6,242
    Rep Power
    21

    Default

    Welcome to the forums,
    5.0.4+ contains Exchange Free-Busy Interop Beta where the Zimbra server can pull the free/busy schedule of a user on Exchange, and also push the free/busy schedule of a Zimbra user to Exchange server.[/quote]

    (/ZimbraServer/docs/freebusy-interop.txt)
    Code:
    --------------------------
    Requirement
    
    In many cases ZCS is deployed in an environment where there is a mix of
    Zimbra server and 3rd party servers.  In such environment, typically the users
    are partitioned into a group using Zimbra server, and a group using 3rd party
    servers.  When a user wants to schedule a meeting with other users, the 
    free/busy schedule of the other users is readily available only if 
    the attendees are in the same group as the organizer.  
    
    Some calendaring software allows limited interop with 3rd party systems.  
    For example Outlook allows downloading free/busy schedule for a user from 
    a web server.  However, configuring URL for each attendees can be a tedious 
    task.  It would be desirable if Zimbra server can provide server to server 
    free/busy sync with 3rd party servers.  Then the Zimbra users will be able to 
    query the free/busy schedule of users on other system, such as Exchange 
    or Domino server, the same way they would query the Zimbra users.  
    
    Zimbra should also support pushing free/busy schedule of Zimbra users to the 
    3rd party server, if the 3rd party server supports such features.
    
    
    --------------------------
    Free/busy Provider Framework
    
    Zimbra provides a framework where the interop with any 3rd party system
    can be added via an extension.  Through the extension, Zimbra server can
    query the free/busy schedule of users on 3rd party system, and also
    propagate free/busy schedule of a Zimbra user to the 3rd party system.
    The mechanism is described later in the document.
    
    
    --------------------------
    Interop with Exchange 2003
    
    Zimbra server has a default implementation of Exchange free busy provider.
    Zimbra server can pull the free/busy schedule of a user on Exchange, and
    also push the free/busy schedule of a Zimbra user to Exchange server.  The
    retrieval of free/busy (Exchange to Zimbra) is done via REST interface
    on the Exchange server.  The propagation of free/busy (Zimbra to Exchange)
    is done via WebDAV interface on the Exchange server.  In both cases, Zimbra
    needs to authenticate to the Exchange server via HTTP basic authentication
    or HTML form based authentication ala OWA.
    
    In order to enable the default Exchange free busy interop implementation, 
    the following conditions need to be met.
    
    1.  There should be a single AD in the system or Global Catalog is available.
    2.  Zimbra server can access HTTP(S) port of IIS on at least one of the 
        Exchange server.
    3.  The web interface to Exchange public folders (http://server/public/) needs
        to be available via IIS.
    4.  Zimbra users need to be provisioned as a contact on Active Directory using
        the same administrative group for each mail domain.
    5.  The Exchange username must be provisioned in the account attribute
        zimbraForeignPrincipal for all the Zimbra users.
        
    The condition #4 and #5 are required only for Zimbra -> Exchange free/busy 
    replication.  With the first three condition met, Exchange -> Zimbra free/busy 
    lookup is still possible.
    
    After creating the contacts, legacyExchangeDN attribute can be verified by 
    running ADSI Edit tool, open the contact object.  Search for the attribute 
    legacyExchangeDN for the contact.  For example the attribute value would be
    
    legacyExchangeDN : /o=First Organization/ou=First Administrative Group/cn=Recipients/cn=james
    
    The substring left and right of /cn=Recipients are important, and need to
    be consistent across the Zimbra contacts.  The left part 
    "/o=First Organization/ou=First Administrative Group" corresponds to the domain
    attribute zimbraFreebusyExchangeUserOrg.  The value of "cn" corresponds to the
    Exchange account name specified in zimbraForeignPrincipal.
    
    There are five global config attributes to enable the interop with Exchange server.
    
    globalConfig:
    zimbraFreebusyExchangeAuthUsername
    zimbraFreebusyExchangeAuthPassword
    zimbraFreebusyExchangeAuthScheme
    zimbraFreebusyExchangeURL
    zimbraFreebusyExchangeUserOrg
    
    zimbraFreebusyExchangeAuthUsername and zimbraFreebusyExchangeAuthPassword are
    used to authenticate against Exchange server on REST and WebDAV interface.
    zimbraFreebusyExchangeAuthScheme can be set to 'basic' or 'form', depending
    on how Exchange server is configured.  When set to basic, Zimbra will
    attempt HTTP basic authentication.  When set to 'form', it will POST
    HTML form to /exchweb/bin/auth/owaauth.dll to get the auth Cookie set.
    zimbraFreebusyExchangeURL should be set to the URL of the Exchange server.
    zimbraFreebusyExchangeUserOrg is the first part of the administrative group.
    Typically they are set to "/o=First Organization/ou=First Administrative Group".
    Note that the value Org is from legacyExchangeDN attribute of the user,
    not the DN of the user object.
    
    Use zmprov tool to set the global config variables.  For example, assuming
    the user zimbra exists on the Exchange server on exchange.mycompany.com
    with password 'changeme' :
    
    # zmprov mcf zimbraFreebusyExchangeAuthUsername zimbra
    # zmprov mcf zimbraFreebusyExchangeAuthPassword changeme
    # zmprov mcf zimbraFreebusyExchangeAuthScheme basic
    # zmprov mcf zimbraFreebusyExchangeURL http://exchange.mycompany.com
    # zmprov mcf zimbraFreebusyExchangeUserOrg "/o=First Organization/ou=First Administrative Group"
    
    Add the Zimbra account to Exchange account mapping to zimbraForeignPrincipal
    attribute.  Note that zimbraForeignPrincipal is a multi value attribute.  Be
    careful not to wipe out the existing values when adding a new one.  Use the
    prefix "ad:" in front of the Exchange account username to indicate the usage
    for Active Directory.
    
    # zmprov ma james@mycompany.com zimbraForeignPrincipal ad:james
    
    Each of the config variables above can be overridden in the domain level.
    
    # zmprov md anotherdomain.com zimbraFreebusyExchangeUserOrg "/o=AnotherOrg/ou=First Administrative Group"
    
    
    --------------------------
    Complex Exchange environment
    
    If the Exchange environment does not meet the requirement for above, 
    the default Exchange provider needs to be extended to work in 
    such environment.  Zimbra provides a Java interface
    
        com.zimbra.cs.fb.ExchangeFreeBusyProvider.ExchangeResolver
    
    The interface requires one method
    
        public ServerInfo getServerInfo(String emailAddr);
    
    The resolver implementation should take an email address of a user on AD,
    then return ServerInfo object.  If the user is not found in AD it should
    return null.  ServerInfo is defined as
    
        public static class ServerInfo {
            public String url;
            public String org;
            public String cn;
            public String authUsername;
            public String authPassword;
            public AuthScheme scheme;  // basic or form
        }
    
    Finally, the bootstrapping of the exchange provider can be done via
    ZimbraExtension.  Following is an example to illustrate how this
    can be implemented.
    
        public class FbExtension implements ZimbraExtension {
            public void init() {
                ExchangeFreeBusyProvider.registerResolver(new ExchangeUserResolver() {
                    public ServerInfo getServerInfo(String emailAddr) {
                        ServerInfo info = new ServerInfo();
                        info.url = "http://exchange.mycompany.com";
                        info.authUsername = "zimbra";
                        info.authPassword = "changeme";
                        info.scheme = AuthScheme.basic;
                        info.org = "/o=First Organization/ou=First Administrative Group";
                        info.cn = emailAddr;
                        if (emailAddr.indexOf('@') > 0)
                            info.cn = emailAddr.substring(0, emailAddr.indexOf('@'));
                        return info;
                    }
                }, 0);
            }
        
            public void destroy() {
            }
            
            public String getName() {
                return "ExtensionFbProvider";
            }
        }
    
    
    --------------------------
    Interop with other non-Exchange systems
    
    Zimbra can handle other 3rd party system by extending the FreeBusyProvider
    framework.  
    
        public abstract class FreeBusyProvider {
            public abstract FreeBusyProvider getInstance();
            public abstract String getName();
            
            // free/busy lookup from 3rd party system
            public abstract void addFreeBusyRequest(Request req) throws FreeBusyUserNotFoundException;
            public abstract List<FreeBusy> getResults();
            
            // propagation of Zimbra users free/busy to 3rd party system
            public abstract boolean registerForMailboxChanges();
            public abstract boolean handleMailboxChange(String accountId);
            public abstract long cachedFreeBusyStartTime();
            public abstract long cachedFreeBusyEndTime();
            public abstract String foreignPrincipalPrefix();
        }
    
    The API allows batching of lookup requests.  The framework invokes 
    addFreeBusyRequest() for each non-Zimbra users.  The provider implementation
    should throw FreeBusyUserNotFoundException when the user is not found.
    This allows for multiple FreeBusyProviders to co-exist in the system.
    The framework will then call getResults(), and at that point the provider
    returns a set of FreeBusy for the batched requests.
    
    If the provider can handle propagation of Zimbra users free/busy,
    it should declare it so by returning true on registerForMailboxChanges().
    Then the framework will call handleMailboxChange() for each providers
    when a change in the mailbox that could result in recalculation of free/busy
    is detected.  cachedFreeBusyStartTime() and cachedFreeBusyEndTime() are
    millis since epoch to indicate the interval of free/busy that can be cached 
    in the 3rd party system.  For example the basic exchange free/busy provider
    caches free/busy from the beginning of the month, for two months.
    http://www.zimbra.com/forums/announc...html#post88010
    Last edited by mmorse; 05-22-2008 at 05:47 PM. Reason: updated freebusy-interop.txt

  7. #7
    Join Date
    Jun 2008
    Posts
    8
    Rep Power
    7

    Default Nice - Google Apps interop is next?

    I'm hoping that the same type of solution can be used to interop free/busy with Google Apps. Here's some code that they published to access the information from a Google Apps domain:

    Revision 122: /trunk/connectors/cs/src/core

  8. #8
    Join Date
    Sep 2007
    Location
    Richmond, Ky
    Posts
    281
    Rep Power
    8

    Default

    Does this mean that if I am using Zimbra's built in LDAP for authentication then I can't do this?

    dj

  9. #9
    Join Date
    Oct 2010
    Posts
    2
    Rep Power
    5

    Default Domino And Zimbra.

    Hello Zimbra.
    I'm going to setup a multi mail-environment with Notes/Domino for the old clients, and Zimbra for the new.
    My job is making sure that the Notes users, and Zimbra users both can make free/busy (or busytime as it is called in Notes) to each other.
    Do you have a standard connector for that job (and in which version of Zimbra?), or is it at all possible? We have have a java-dev. team that could make some middle-ware if that is necessary, but if you have the interop off the shelf, or some hints on how-to, it would be great.
    Thanks in advance.
    Sofus Albertsen.

  10. #10
    phoenix is offline Zimbra Consultant & Moderator
    Join Date
    Sep 2005
    Location
    Vannes, France
    Posts
    23,587
    Rep Power
    58

    Default

    Go to the wiki and search for 'Split Domain', that contains the information you need - there are also details in the forums on migrating from Notes/Domino to Zimbra. You really should not be adding posts to a thread that's two years old, in future start a new thread (after you've searched the forums and wiki first).
    Regards


    Bill


    Acompli: A new adventure for Co-Founder KevinH.

Similar Threads

  1. Replies: 3
    Last Post: 09-11-2007, 10:43 AM
  2. zmtlsctl give LDAP error
    By sourcehound in forum Administrators
    Replies: 5
    Last Post: 03-11-2007, 04:48 PM
  3. Zimbra 4 dies on reboot
    By Jools in forum Administrators
    Replies: 6
    Last Post: 09-24-2006, 09:35 AM
  4. Zimbra coexistence with Exchange
    By prash in forum Installation
    Replies: 1
    Last Post: 05-03-2006, 10:30 AM
  5. Mail logs
    By Rick Baker in forum Installation
    Replies: 8
    Last Post: 01-17-2006, 04:33 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •