Office 365

There are 13 entries in this Category.

Creating an Offline install of Office 365 Pro Plus

So how do you create an offline installation of Office 365 Pro Plus for distribution on machines when you don’t want them all chewing up the internet connection at once?

First, download the Office 2016 Deployment Tool from:

https://www.microsoft.com/en-us/download/details.aspx?id=49117

(Note: you can reuse this tool to download Current branch versions each month, however Microsoft does update this to support new deployment features and resolve deployment bugs so check back often for new versions!)

Run the EXE and extract to a folder – It will only produce setup.exe

image image

Open a command prompt and browse to the extract folder, and run setup.exe /download

image

This will sit here for a bit while it downloads the current build to the subfolder under \Office\Data with the build number. As you can see here, the build is primarily 32-bit but provides 64-bit support as part of the installation.

In this case, this folder sits on a file share (which we’ll get to in a moment) that will serve as our “SourcePath”

image

image

image

The next part to performing the deployment as part of an administrative install is to create the configure XML file. You can read more about the syntax, formatting, etc at:
https://technet.microsoft.com/en-us/library/jj219422(v=office.15)

In an enterprise environment, it’s typical that you will have a Deferred and a Current branch (to borrow from Microsoft terminology).

The SourcePath is our Deferred that goes as the core install for all our machines, and the Updates path (towards the bottom) is another folder that we run our download process again on a monthly basis for the Current branch. Whenever a new version of the current branch is downloaded to the Updates folder, it will “update Office to the newest version. Only the files that have changed in the new version will be updated”

To perform the actual install, we need a configuration XML to use in conjunction with the setup file to perform the full Offline install. For this I like to use the online XML Configuration File editor, located at https://officedev.github.io/Office-IT-Pro-Deployment-Scripts/XmlEditor.html

<Configuration>
<Add OfficeClientEdition=“32” Channel=“Current” SourcePath=“\\network\path”> <Product ID=“O365ProPlusRetail”>
<Language ID=“en-us”/>
</Product>
</Add>
<Property Name=“AUTOACTIVATE” Value=“1”/>
<Property Name=“FORCEAPPSHUTDOWN” Value=“TRUE”/>
<Property Name=“SharedComputerLicensing” Value=“0”/>
<Property Name=“PinIconsToTaskbar” Value=“TRUE”/>
<Logging Level=“Standard” Path=“c:\windows\temp”/>
<Display Level=“None” AcceptEULA=“TRUE”/>
<Updates Enabled=“TRUE” Channel=“Current” UpdatePath=“\\network\path”/> </Configuration>

From our workstation we can manually run (or use a deployment tool like SCCM to push out Office 2016 to the enterprise) using the setup.exe /configure switch.

Then before you know it, volia!

image

image

image

image

Office 365 Groups & My Apps Panel: A New Twist to an Old Problem

Recently our team at Concurrency had a meeting with one of the Program Managers at Microsoft for Office 365 Groups and this spurred a conversation internally about how the team is helping customers use Office 365 Groups. After spending hours in my own lab developing training material around the Enterprise Mobility Suite as well as using Office 365 Groups, a new twist to an age-old problem of collaboration and management appeared that has seemingly haunted teams and departments. Using Microsoft’s approach of self service and some new (well, not SO new, maybe 12-18 months old) technology solves this dilemma with the modern tool of Office 365 groups.

So let’s dive into. We have a test customer that currently has Office 365 E3 CALs for their users. They just implemented Office 365, and in an effort to improve productivity they have an Accounting department which their own Office 365 group. Remember for now Office 365 Group are purely “In Cloud” – there will be a conversion process eventually to convert distribution groups to Office 365 groups (see the Roadmap – https://fasttrack.microsoft.com/roadmap).

image

Office 365 Groups is a tool for addressing collaboration in our modern age – messages via Outlook and Exchange Online, real-time team chat via Skype for Business Online, and document collaboration via SharePoint Online. The best experience right now out there is via OWA in my opinion.

image

Continue reading “Office 365 Groups & My Apps Panel: A New Twist to an Old Problem” »

Skype For Business Online PowerShell Cheat Sheet

There are just some things you can’t do inside the Office 365 portal. Exchange Online has matured to the point where remote PowerShell works perfectly and loads all of the cmdlets over the wire. Skype for Business Online is still building to that point. You need the separate PowerShell module (https://www.microsoft.com/en-us/download/details.aspx?id=39366 ) to get started, and while installing it is the easy part using it takes a little bit of work. Here are a cheat sheet I’ve put together.

How to Connect

If you install the Skype for Business PowerShell module and try to load it in the Skype for Business Administrative Shell, you must use the -AllowClobber switch with running Import-PSSession (https://technet.microsoft.com/en-us/library/hh849970.aspx). Otherwise the Skype for Business on-premises cmdlets leach thru in place of the Online ones. Here’s the connection script that I usually save in a PowerShell file for quick launching:

Import-Module SkypeOnlineConnector
$cred = Get-Credential
$CSSession = New-CsOnlineSession -Credential $cred
Import-PSSession $CSSession -AllowClobber

Always have a cloud-only account (<tenant>.onmicrosoft.com) available for emergency situations.

In a Single Sign-On environment (https://support.office.com/en-us/article/Office-365-integration-with-on-premises-environments-263faf8d-aa21-428b-aed3-2021837a4b65?ui=en-US&rs=en-US&ad=US&fromAR=1) you’ll have a back door if on-premises is down. Once directory synchronization is setup, administrators grant their domain account (<user>@<yourdomain>.com) Global Administrator rights for daily tasks. Nothing wrong with this, but it can cause Problem #1

Problem #1 – LyncDiscover

When trying to setup Skype for Business Hybrid using your domain account, Skype for Business Online PowerShell doesn’t resolve the Cloud and instead the on-premises lyncdiscover.<yourdomain>.com. This cases a 503 error when trying to login.

PS C:\Users\user> $CSSession = New-CsOnlineSession -Credential $cred

Get-CsPowerShellEndpoint : The remote server returned an error: (503) Server Unavailable
At C:\Program Files\Common Files\Skype for Business
Online\Modules\skypeonlineconnector\SkypeOnlineConnectorStartup.psm1:94 char:26
+ … $targetUri = Get-CsPowerShellEndpoint -TargetDomain $adminDomain
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-CsPowerShellEndpoint], WebException
+ FullyQualifiedErrorId : System.Net.WebException,Microsoft.Rtc.Management.OnlineConnector.GetPowerShellEndpointCm
dlet

This is a scenario where you will want to use that cloud-only account to sign in for an administrative tasks.

Problem #2 – The New Tenant

With a new Skype for Business Online tenant, even if you have users in your Office 365 tenant and have assigned them a Skype for Business Online license, there’s still that last bit of configuration that doesn’t seems to happen behind the scenes until at least 1 user logs in. If you don’t, when you go to connect to Skype for Business Online PowerShell you’ll get a 404 error:

PS C:\Users\user> $CSSession = New-CsOnlineSession -Credential $cred

Get-CsPowerShellEndpoint : The remote server returned an error: (404) File Not Found
At C:\Program Files\Common Files\Skype for Business
Online\Modules\skypeonlineconnector\SkypeOnlineConnectorStartup.psm1:94 char:26
+ … $targetUri = Get-CsPowerShellEndpoint -TargetDomain $adminDomain
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Get-CsPowerShellEndpoint], WebException
+ FullyQualifiedErrorId : System.Net.WebException,Microsoft.Rtc.Management.OnlineConnector.GetPowerShellEndpointCmdlet

Once everything is tied together, you’ll achieve a successful sign on to Skype for Business Online PowerShell!

PS C:\Users\user> $CSSession = New-CsOnlineSession -Credential $cred -Verbose
VERBOSE: Determining domain to admin
VERBOSE: AdminDomain = ‘tenant.onmicrosoft.com’
VERBOSE: Discovering PowerShell endpoint URI
VERBOSE: TargetUri = ‘https://admin2a.online.lync.com/OcsPowershellLiveId’
VERBOSE: Requesting authentication token
VERBOSE: Success
VERBOSE: Initializing remote session
VERBOSE: Success

Exchange Online 2016 Hybrid Guidance & Architecture

After doing quite a few Exchange Online hybrid deployments, I decided that it was time to do what I do best – build a design template so I don’t have to continue to reinvent the wheel for each project. I’ve done this for Exchange, Active Directory and SCCM audit documentation, but those are stories for another day…

In a typical scenario we’re taking an existing, highly available Exchange 2010 environment that is protected behind their own spam filtering devices (so this could change and be a services, no problems) and adding a secondary Exchange hybrid server dedicated for this purpose – be it Exchange 2013 or even Exchange 2016. I’ve deployed a few of these already and they work great, think Exchange 2013 SP2 but with better results. More of that in a moment.

But you ask “why not just run Hybrid on the existing Exchange servers? The biggest one is that the Hybrid wizard on Exchange 2010 hasn’t gotten any better since SP3. Sure the Cumulative Updates have fixed some bugs but with Exchange Online running on the Exchange 2016 build, the gap is getting wider in regards to the success rate of being able to run thru the Hybrid Wizard the first 5-6 times without having to go back and fix issues (or create new ones).

Or, let’s say that eventually you’ll be migrated to Exchange Online, you’ll have your MX records flipped, most likely using Exchange Online Protection (and the rest of the stack), but may still have that need to run some mailboxes on-premises, or you want a nice GUI to provision your users / groups (yes, you CAN run without a Hybrid server but we’re talking a LOT of Powershell), or you have a LOT of SMTP endpoints and switching them all to the Cloud for relay just doesn’t make sense. Having a newer version of Exchange in the environment that’s NOT on extended support.makes the most sense.

There are some “gotchas” however: as of Exchange 2013 CU8 Microsoft has introduced their new hybrid wizard – and let me tell you this thing it’s amazing. Of course now with Exchange 2016 its built in.

wizard

Once of the previous “gotchas” with Exchange 2013 hybrid was the requirement to flip all of the CAS traffic over on day one to make things work/ Now, with Exchange 2016, this is no longer a requirement. More on that over at the Technet blog. The only thing you have to remember is that if you keep your existing Exchange 2010 environment, and still have Autodiscover pointed there, you’re going to run into a few issues: free/busy will be broken, migration batches will be broken, however mail flow will still work, and the only way to move a mailbox is thru New-MoveRequest.

This is because when you create the organization relationship, even in Exchange 2016, it does NOT use the organization FQDN you’ve specified but instead populates with the typical autodiscover URL.

verified

To fix this, you need to run:

Get-OrganizationRelationship | Set-OrganizationRelationship -TargetAutodiscoverEpr "https://hybrid.domain.com/autodiscover/autodiscover.svc/WSSecurity"

There are a few instances that have been documented as well where you also need to run:

Get-OrganizationRelationship | Set-OrganizationRelationship -TargetSharingEpr "https://hybrid.domain.com/ews/exchange.asmx"

There’s also a great blog post that goes into troubleshooting Authentication on the Exchange 2010 side as well, where Negotiate authentication (which is there by default but against best practice) can cause Cloud -> On-Premises authentication issues.

So you’ve seen some pretty compelling reasons to deploy Exchange 2016 for your hybrid environment. Whether it be in a Federated or Synchronized identity model, and with in conjunction with AD Connect for directory synchronization, you can get setup with hybrid easer than ever.

Also Microsoft has recently updated the Exchange Hybrid Product Key Distribution wizards so you can finally deploy Exchange 2016 in an Exchange 2010 environment as your Hybrid server and be covered under Microdot proper licensing and support. You can grab your key at:
https://configure.office.com/Scenario.aspx?sid=13

image

So without further adieu, here is version 2 of my EO Hybrid architecture.

EO-mailflow-web

Deep Dive in On-Premises Public Folder Hybrid with Exchange Online

Public Folders have been on the way out ever since Exchange 2007 but there are still organizations that are slow to migration to “better” options (IE, Shared Mailboxes or Sharepoint sites).

Previous processes required migration before moving mailboxes however the Hybrid process will allow the migration of end user mailboxes up to Exchange Online while at the same time providing additional time for moving the data to other options.

The biggest “gotcha” of this scenario requires the configuration of the CAS role to be added to the server hosting the public folder database
https://technet.microsoft.com/en-us/library/dn690134(v=exchg.150).aspx

The key comment in the Technet blog spelling this out starts with:

The addition of the CAS role will ensure public folder replica referrals happen appropriately if a folder a user is accessing does not have a local replica in the PFDB.

Exchange Online uses RemotePublicFolderMailboxes on the on-premises server with the public folder database in conjunction with the Client Access Server role.
We also need a dedicated mailbox database and mailbox because of how RPC client traffic is relayed thru this role.
In an Exchange 2010 CAS array environment, mailbox databases are stamped with the array name. This won’t work in routing RPC client access traffic properly, thus the separate database.

I had the priviledge of setting this up in an Exchange 2010 hybrid environment and wanted to share a few “gotchas” I encountered.
Let’s take our Mailbox server with the Public folder database, OCEX04

image001

 

 

Continue reading “Deep Dive in On-Premises Public Folder Hybrid with Exchange Online” »

Exchange Recipient Types and Office 365 – Setting Active Directory attribute values

In doing some digging for a recent post on Online Archives I found that I had to dig around multiple places on the internet (primary Technet blogs) to find exactly what each of the Active Directory attribute values around Exchange recipient types mean.

 

So instead of multiple places, here they are all in one!

Continue reading “Exchange Recipient Types and Office 365 – Setting Active Directory attribute values” »

Enabling Exchange Online Archive give error “Primary mailbox is located on an on-premises server”

So I’m deep in the throws of an Office 365 project, and after going thru the process of setting up Exchange Hybrid with on-premise ADFS, testing mailflow, and performing a mailbox move, the next step was working on Retention Policies to migrate email older than 1 year from their Primary Mailbox with 50gb storage to their Online Archive with 100GB of storage.

I tried to enable the archive from the Exchange Online portal as well as thru Exchange online Powershell but didn’t have any luck. With Powershell I was getting the message:

"Can't enable the archive for user because their primary mailbox is located on an on-premises server. To enable a cloud-based archive mailbox for this user, you must use your on-premises Exchange admin center or Exchange Management Shell."

I found this particularly odd because, well, the mailbox WASN’T on-premises any more nor was there any kind of archive mailbox enabled for my test acount.

After digging for hours (which is typically the catalyst for most of these posts) I came across a solution through the Office 365 community which detailed out adjusting the source AD user’s object on-premises attributes in order for the Archive to come online. Again, since this was a hybrid identity design, on-premises Active Directory was the source of truth and directory synchronization was in place to populate the objects in Azure AD / Office 365.

First, we need to modify the msExchArchiveName attribute to reflect the archive name (this can be whatever we want), as well as modify the msExchRemoteRecipientType to 3.

We’ll leave the msExchRecipientDisplayType and msExchRecipientTypeDetails as is – you can find what these means in a post I made here.

Once completed, force a Dirsync

Once complete, we run the Exchange Online powershell to see that the Get-Mailbox command to see the archive has been created

And that Outlook shows our online archive (with the name that we provided)

 

MDM in Office 365 Getting Closer to the Big Stage

After Microsoft announced that they would be rolling out the Mobile Device Management integration within Office 365 back in April, we’re finally starting to see the Mobile link show up into client’s portals.

Once Microsoft is done “setting things up for you” (which in the most recent case for me was a few days before it was done) you’ll see the MDM “dashboard”

There are still a few final steps that are required before you’re ready to start connectivity: setup DNS records & configure an APN (Apple Push Network) certificate

The keys to enabling this functionality rest in the Enterprise Mobility Suite (EMS) license, which essentially gives you:

  • Azure AD Premium
    Full AD management from the cloud. Allows IT to manage on premise password sync / write-back (here now) with self-service, user/group/device creation & attribute change (in preview with AD Connect), and provide multi-factor authentication
  • InTune
    Manage device policies and software, as well as access to corporate resources
  • Azure Rights Management
    Encrypt files, control access, and email encryption (in conjunction with Exchange online)

You’ll see the Mobile Device Management license type in the Office 365 portal

This backends in conjunction with the EMS license you’ll find in the Azure AD portal

Microsoft has been giving customers renewing their EAs a sweetheart deal by providing them the Enterprise Cloud Suite license, which includes the E3/G3 license as well as the EMS licenses bundled together. They’re trying to gain some hot & heavy traction in the MDM space this year, getting their foot in the door with the Gartner quadrant!

For for about the toolset available within the Office 365 portal, Microsoft has gone into detail with tasks as well as capabilities of MDM on the MDM TechNet page. Further capabilities are extended once you start integrating InTune with SCCM.

Office 365 Click-to-Run Something went wrong…

I was helping a client start to roll out their Office 365 Pro Plus click-to-run installs and some of their users were getting Error Code 30174-4

After looking around online to find anything about this error, most hits had to do with the Network connections on the machine, namely laptops with multiple network connections. In the case of this client, they had a wired LAN on one subnet and a wireless LAN on another. Plus they have multiple internet connections for redundancy.

On top of that, they also had a Cisco VPN client adapter, and several notorious Microsoft Virtual WiFi Miniport Adapters. Once all of these were disabled besides the wired LAN, the install went without a hitch!

 

Using Office 365 & Exchange Online for SMTP Relay

My current client is getting ready to migrate off of FOPE smarthosts to EOP and there were some questions around how this process goes. And thankfully I can say it’s pretty easy – just point your smarthosts to your MX record, found in the Office 365 portal.

Without delving too much into the process, a fellow O365 admin Mark Kean has written a great blog post on how this process works:

http://marckean.wordpress.com/2013/06/28/smtp-relay-using-exchange-online-protection-eop/

NOTE: You don’t have to setup anther Inbound Connector in Office 365 – this way you avoid needing another SSL certificate. Just use the Hybrid Mail Flow Inbound Connector and add your on-premise IP into the Sender IP Addresses list for the same results.

This process allows you to continue to use onsite applications, MTAs, copiers, etc to process messages from on premise. And you don’t have to setup the arduous SMTP relay through smtp.office365.com via TLS and with an existing account. This relies on the traditional, allowed IP address method to blanket accept everything sent.

I’m happy to say that it even allows you to relay messages from address that don’t even exist in the organization. So lets say you want to send out messages from no-reply@domain.com on an internal mailing system and that mailbox doesn’t exist. EOP processes these messages with no problem.

There’s another great Technet article I like to refer customers to who have questions on the different email methods EOP allows. The article references multi-function devices but this encompasses any number of devices:

http://technet.microsoft.com/en-us/library/dn554323%28v=exchg.150%29.aspx

css.php