OpenChange overview and current server implementation



Similar documents
Julien Kerihuel. OpenChange Project

Understanding MAPI. Julien Kerihuel,

Exchange, MAPI & Evolution. Johnny Jacob <jjohnny@novell.com> johnnyjacob.org

Exchange Web Services [EWS] support in The Bat! v7

Erado Archiving & Setup Instruction Microsoft Exchange 2007 Push Journaling

Introduction. Before you begin. Installing efax from our CD-ROM. Installing efax after downloading from the internet

StreamServe . User Guide SP2 Rev A

MailStore Server 5.0 Documentation

Cloud. Hosted Exchange Administration Manual

Collax Mail Server. Howto. This howto describes the setup of a Collax server as mail server.

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: Security Note

MAPI Connector Overview

Issue 2EN. Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation

IBM WebSphere Adapter for Quick Start Tutorials

User Guide. DocAve Lotus Notes Migrator for Microsoft Exchange 1.1. Using the DocAve Notes Migrator for Exchange to Perform a Basic Migration

Architecture and Data Flow Overview. BlackBerry Enterprise Service Version: Quick Reference

Feature and Technical

RELEASE NOTES Product Version: 7.2 Date: November, 2015

RoomWizard Synchronization Software Manual Installation Instructions

ArcMail Technology Defender Mail Server Configuration Guide for Microsoft Exchange Server 2003 / 2000

Exchange Mailbox Protection

Erado Archiving & Setup Instruction Microsoft Exchange 2010 Push Journaling

How To Export Data From Exchange To A Mailbox On A Pc Or Macintosh (For Free) With A Gpl Or Ipa (For A Free) Or Ipo (For Cheap) With An Outlook 2003 Or Outlook 2007 (For An Ub

Configuration Task 3: (Optional) As part of configuration, you can deploy rules. For more information, see "Deploy Inbox Rules" below.

Sync your schedule and work orders with SME & Microsoft Outlook

INSTALLATION GUIDE Version 1.2

Professional Mailbox Software Setup Guide

How To Use Gfi Mailarchiver On A Pc Or Macbook With Gfi From A Windows 7.5 (Windows 7) On A Microsoft Mail Server On A Gfi Server On An Ipod Or Gfi.Org (

Installation Steps on Desktop Clients

Z-Term V4 Administration Guide

WebSpy Vantage Ultimate 2.2 Web Module Administrators Guide

Configuration Guide. BlackBerry Enterprise Service 12. Version 12.0

PCRecruiter Resume Inhaler

How to access a Functional Mailbox via Outlook Web Access (OWA)

DESKTOP CLIENT CONFIGURATION GUIDE BUSINESS

Exchange Mailbox Protection Whitepaper

Exchange Outlook Profile/POP/IMAP/SMTP Setup Guide

BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Administration Guide

Outlook Synchronisation guide

Configuration Guide BES12. Version 12.3

Python for Series 60 Platform

Novell GroupWise Microsoft Exchange/Outlook (PST)

UH Mail Server Retirement

SerNet. Samba Status Update. Munich 13. March Volker Lendecke SerNet Samba Team. Network Service in a Service Network

User s Guide for OpenERP Microsoft Outlook Free Plug-in 1.0 By Axelor

BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Feature and Technical Overview

Astaro Mail Archiving Getting Started Guide

Installing GFI FAXmaker

Configuration Guide BES12. Version 12.2

Professional Mailbox Software Setup Guide

ManageEngine Exchange Reporter Plus :: Help Documentation WELCOME TO EXCHANGE REPORTER PLUS... 4 GETTING STARTED... 7 DASHBOARD VIEW...

Configuring and Integrating MAPI

HGC SUPERHUB HOSTED EXCHANGE / 2007 SMART PANEL USER GUIDE

SOGo. Open Source Groupware at the University of Konstanz

Handbook Index

1 Login to your CSUF student account and click on the Settings icon ( ) at the far right.

ITA Mail Archive Setup Guide

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

Outlook Connector. Version 2 User Manual. client-side plugin. Collaborate Using Outlook. Version 2.0.0

ConnectMail Mobile Configuration

Installation and Configuration Guide

ing from The E2 Shop System address Server Name Server Port, Encryption Protocol, Encryption Type, SMTP User ID SMTP Password

Configuration Guide BES12. Version 12.1

Integration for Open Text Fax Appliance and Open Text Fax Appliance, Premier Edition

Optus SMS for MS Outlook and Lotus Notes

How to Configure Entourage 2008 for Client

Merak Outlook Connector User Guide

Exchange 2013 mailbox setup guide

MailEnable Connector for Microsoft Outlook

PrinterOn Enterprise Administration Support Guide

Kerio Exchange Migration Tool

Migration guide. Business

SerNet. Samba Status Update. Linuxkongress Hamburg October 10, Volker Lendecke SerNet Samba Team. Network Service in a Service Network

GALSYNC V4.3. Manual NETSEC. 18. March NETsec GmbH & Co.KG Schillingsstrasse 117 DE Düren

Instructions: Configuring Outlook 2003 with Exchange 2010 on the FIUMail

Migrating from MyYSU Mail to Office 365 Microsoft Outlook 2010

ACS 5.x and later: Integration with Microsoft Active Directory Configuration Example

redcoal SMS for MS Outlook and Lotus Notes

TECHNICAL REFERENCE GUIDE

MOC 5047B: Intro to Installing & Managing Microsoft Exchange Server 2007 SP1

Business Interaction Server. Configuration Guide Rev A

Firewall, Mail and File server solution


QUESTION: 1 Which of the following are valid authentication user group types on a FortiGate unit? (Select all that apply.)

Job Reference Guide. SLAMD Distributed Load Generation Engine. Version 1.8.2

BlackBerry Internet Service Using the Browser on Your BlackBerry Smartphone Version: 2.8

The End User Experience. Introduction to Archiving for End Users

MailStore Server 7 Documentation

Exclaimer Signature Manager 2.0 User Manual

Kaseya Server Instal ation User Guide June 6, 2008

Exchange Granular Restore Instructional User Guide

Sonian Getting Started Guide October 2008

Out n About! for Outlook Electronic In/Out Status Board. Administrators Guide. Version 3.x

Quest Collaboration Services 3.5. How it Works Guide

BOTTOM UP THINKING SETUP INSTRUCTIONS. Unique businesses require unique solutions CLIENT GUIDE

Exchange Granular Restore User Guide

Exchange Granular Restore. User Guide

Transcription:

OpenChange overview and current server implementation

1 Introduction What is OpenChange? + Open Source implementation of Microsoft Exchange protocols under unix/linux + Exchange server replacement under unix/linux + Runs on top of Samba4 libraries and as a samba4 module Compatibility + Libmapi is compatible with Exchange up to 2003 + Openchange server compatible with Outlook 2000/2003 License + OpenChange source code is under GPL license Origin + Founded in 2003 in EPITECH final study project

2 What s new since SambaXP 2006 NSPI Protocol + Used by Outlook to resolve names from the Exchange Message Store Address Book Provider + Used by the mail account wizard when setting up an Exchange Server What s new? + Parts of the IDL improved + Functions used by Outlook when resolving mail recipients introduced: + NspiResolveNames + NspiResolveNamesW (UNICODE) + EMSABP provider is now working properly

3 EMSABP provider What is it? + Server side implementation which provides name resolution against Samba4 Active Directory using the NSPI protocol How does it work? + Extend Samba4 Active Directory with Exchange classes and attributes during openchange setup with: +./setup/oc_provision + Extend Samba4 user Active Directory entry with Exchange attributes using: +./setup/oc_newuser + At this point the user can be resolved with EMSABP provider EMSABP Demonstration

libmapi design and implementation

4 Libmapi underlying components Relies on a limited set of Samba4 libraries + dcerpc + ndr + talloc + ldb + samba-config More recently (SambaXP dev sessions) + tdr + libmagic IDL compiled with PIDL

5 MAPI traffic and EcDoRpc 99% of MAPI traffic is processed through: + EcDoRpc call (0x2) + Data obfuscated with XOR 0xA5 + EcDoRpc_2k3 call (0xb) on Exchange 2003 + Data obfuscated with XOR 0xA5 + Data compressed using the XPRESS compression algorithm + Additional blob of data EcDoRpc packets are divided into 2 parts: + Serialized MAPI operations + List of MAPI handles used by MAPI operations

6 MAPI calls and serialization MAPI calls request: + opnum on 1 byte + mapi flags on 1 byte + handle array index on 1 byte + MAPI call data MAPI calls response: + opnum on 1 byte + Handle idx on 1 byte + MAPI return value on 4 bytes + MAPI call data A single EcDoRpc packet generally contains many MAPI calls.

7 MAPI object handles Stored in an array of integers Handles are used by MAPI operations to refer to an existing object Require Exchange to assign a new handle (0xffffffff value set)

8 Mapitrace analysing tool PERL tool designed to analyze MAPI communication and trace calls hierarchy Wrapper over ndrdump output Provides graph using GraphViz Demonstration

9 Libmapi opacity Tends to hide MAPI internal mechanisms from developers + Memory allocation and context + MAPI objects management Focused on application development

10 MAPI Profiles Easy way to use libmapi: + Accessed through IProfAdmin interface + Stored in a LDB database Store information users would normally have to supply by hand: + Credentials: username, password, domain, workstation + Codepage, language and method information + Information fetched from the exchange server: + Exchange mailbox path + Display name + Email address + Etc. Mapiprofile stand-alone binary provides easy access to profile administration

11 openchangeclient MAPI command line messaging tool Features: + Fetch mails + Store attachments on the local filesystem + Send mails with to, cc, bcc recipients + Send mails with UTF8 only content + Send mails with inline HTML content + Send mails with HTML body retrieved from a file + Send multiple attachments Demonstration

12 exchange2mbox Convert Exchange mailbox to mbox file Maintain synchronization between mbox and Exchange mailbox through a message ID index database (tdb). Support MIME Types for: + Content + Attachments Demonstration

13 Current libmapi limitations We have arbitrary set a stream buffer size to 0x4000 bytes for each WriteStream call We do not handle serialization but generate one EcDoRpc packet for each MAPI call Mails can t be sent to SMTP recipients (outside Exchange organization) Possible memory consumption leaks Bugs due to the lack of testing environments and mystic configurations

Related Tools

14 Gnome Evolution plugin Preview release is available for download It should still be considered as unstable code Provide a set of features almost similar to openchangeclient: + Fetch mails + Send mails + Delete mails + Attachment support Demonstration (Please note segmentation fault may occur ;p)

Conclusion

- Conclusion This is still alpha code but this is a necessary step in openchange development OpenChange libmapi roadmap: + 0.2 MAILOOK: Mail support (available) + 0.4 Calendar support + 0.6 Contacts support + 0.8 Public folder support + 0.9 Tasks support + 1.0 Final release candidate August 2007: libmapi 1.0 deadline Moving from alpha to stable release will depends on how many beta testers we have and how effective is the bug discovery.

- Conclusion Openchange Message Store R&D process will start after SambaXP Objective: provide a stable server side for December 2007.

Questions?