If you’re born before 1990 (and if you’re in IT), you probably grew up with self-signed certificates.
They give you a lovely fake feeling of security, but more than that, they will give users and the IT department horrible stress to configure.
In “days of olde” (early 2000’s), an Exchange server was able to run over http traffic and a certificate was absolutely not required.
Times have changed and so have security protocols. It’s ill-advised to use a self-signed certificate nowadays, as it is equally ill-advised to use a .local domain anymore on your domain controller.
That being said, there’s a couple of ways to fix an expired self-signed certificate on a Windows SBS server. (read first, perform later, you’ll see why)
aka ‘fix my network’
Open the SBS console, go to the ‘network’ menu and select the ‘Connectivity’ tab.
Click ‘Fix my network’ and deselect everything except the certificate error, after this wizard stops scanning.
The usual Next-Next-Next will follow and according to Microsoft, you’re good to go.
There’s a couple of things that can go wrong here :
Your certificate contains a custom entry referring to a domain name or subdomain name that wasn’t originally added in the SBS wizard.
You’ll need to perform the manual method for renewing a certificate. See below.
Your Exchange webmail (https://your_mail_server_ip/owa/) still gives a certificate error, stating your certificate’s still expired.
Start the ExMngmtnShell (Exchange Management Shell) as Administrator
type Get-ExchangeCertificate to list the installed certificates
Match the certificate to the expired certificate (using subject the name and services) from the Console then copy the associated thumbprint
Type Get-ExchangeCertificate –Thumbprint INSERTTHUMBPRINTHERE | New-ExchangeCertificate | Enble-ExchangeCertificate -services pop,imap,smtp,iis
Type Y to renew the certificate
Restart SBS2008/2011 Console or restart server.
Beautifully explained on http://www.petenetlive.com/KB/Article/0000535, so no need to repeat what Pete already wrote.
The main idea here is to use the IIS built-in Certification Authority (certsrv), while manually defining all entries needed in the certificate.
It’s still relatively easy, but requires a lot of steps.
Of all three mentioned methods, this last one is most likely to succeed.
In our previous post, we’ve set up everything so we’d be able to start creating the users and their respective mailboxes.
If at this point you’ve already changed the mail server name in the domain’s MX record to that of the Office 365 one, remember that actual mail might already be arriving (or bouncing) in the O365 environment, so be cautious of this, when migrating a live situation.
A small recap below in case you forgot our intended setup :
If you’ve been paying attention in the previous posts, you’ll know we will be needing to create three users here :
All other mail related stuff will be handled with mail groups or shared boxes.
Remember : the Microsoft licensing system in O365 is user-based, not computer-based.
Let’s start off with creating these three accounts.
Open the Office 365 admin portal and open the “Users” menu, and then select “Active Users”.
Next, Click the “+ Add a user” button and a small form appears.
You’ll notice a couple of things in the user creation form (except from the obvious things of course) :
The domain field shows your recently added domain as well as the onmicrosoft.com tenant name.
This means that you’re not obliged to actually use a domain name in an O365 environment. When going for mailboxes, it’d be stupid/silly/… not to do so.
Password generation : either let Microsoft generate a password for you that complies with the O365 password policies or type one for yourself.
You can also allow the user to be able to change their password on first logon.
Make your choice depending on the end-customer’s needs.
After confirming the user creation, you’ll also be given the option to send the credentials to an email address of your choice.
Roles : by default, new users will be given the “User” role, which allows for basic usage of the O365 environment. Other roles can be “Global administrator” or a custom mix of rights.
For more info on the different types of admin rights, see this Microsoft page.
If you’re ever to go and do a Microsoft exam on O365, these roles will pop up more than once in the questions list.
The Roles parts also allows you to fill in an alternative email address, instead of the user having to do this. Purely intended for password retrieval purposes.
Product licenses : in the O365 demo you’ll be given 25 Enterprise E3 licenses.
Depending on your user’s needs, provide the correct licenses by clicking the slider next to the license name.
Creating an user without a product license, which is also an option, is ill-advised and used in only a few specific situations.
Click the “Add” button and you’ll be greeted with the send-password screen asking you if you need to send the password in case you forget to write it down.
Repeat for all the necessary users.
In this case Annie and John will be created in the same way.
Remember to remove the admin’s E3 license for good measure. (but keep him admin !!)
In this demo environment, it doesn’t really matter, but you don’t want your customer to be paying for an unused license.
Just a tiny heads-up : if you don’t want your users to be calling you every 90 days, you might want to perform the small task of changing the Password policy.
Go to Settings > Security and Privacy and change password policy to “Never expire” and “Never notify” by clicking the “Edit” button.
The spice must flow. So must the mail
Well, that didn’t seem so difficult, right ?
Office 365 has automatically created a mailbox already for your users, in the background.
The system knid of predicted that you’d be wanting a mailbox for your E3-licensed users, as otherwise it wouldn’t be logic that you’d provided them with such a license. Of course there’s still some things that need to be done, so let’s have a look there.
There are two ways to edit mailbox properties.
The easiest, but with the least fancy options is through the same “User” menu we used to create the users themselves.
The second option is through the Exchange Admin Center.
Let’s start with “easy mode” :
Click the user in the Active Users menu and his properties will appear in an overview.
One of the options visible will be “Mail Settings”, where you can set up a couple of things :
Mailbox permissions : literally what it says. Allow others to have specific access to this mailbox. We’ll get into more detail when we reach a shared mailbox.
Email forwarding : allows you to *drumrolls* forward your user’s mail to another mailbox, with the option of leaving the original mails in your O365 box.
External mailboxes (unrelated to your O365 tenant) are also possible recipients.
Litigation Hold : allows for items in the mailbox to be retained even if the user deletes them.
Pay attention that this can increase the size of your mailbox significantly.
More info on litigation can be found on this Technet article.
Automatic replies : I don’t believe this needs much explaining.
Can also be done through the user’s personal settings in either Outlook or throught https://outlook.office365.com and preferably so. If you need to manage all your customers’ mailboxes and set their Out of Office message yourself, you’d best be charging by the hour.
Email apps will provide you the option of disabling certani ways of connecting to the O365 mail system. I can imaging you might want to disable POP ad IMAP for instance. It depends on the specific needs, however.
Show in global address list sets visibility of this mailbox in the address list when browsing through your company contacts. Usually you’d want this setting to remain untouched. Only in certain cases (for instance a logging or journaling mailbox) will this be a good choice.
Converto to a shared mailbox basically unlinks the mailbox from a user license and changes it to an mailbox which is only visible through an other O365 account within your tenant.
Edit Exchange properties opens the “hard mode” Exchange Admin Center screen, which we’ll discuss in more detail next.
The Exchange Admin Center is actually the way to go when you want to configure your mail environment in more detail.
It’s also a lot more fun to fiddle around in and it will give you a more general idea on all the mailbox features.
For all on-premise Exchange server admins with experience in 2013 server or higher : you’re in for a treat as this is an almost-perfect copy of the “Exchange Control Panel” with just a tiny difference in some functionality. You can probably skip most of this part.
Even the URL is similar : https://outlook.office365.com/ecp/
Don’t be startled by the amount of clickable options in the Exchange admin Center.
We’ll cover the basics, under the “recipients” section.
Have a look around in the other options, but don’t change anything for now.
For your ease, click the Recipients link in the left menu.
This will show us six options in the top menu :
Mailboxes : an advanced view per mailbox for setting up rights, mailflow, aliases, …
Groups : allows for creation of either a fixed ditribution group, a security group or a dynamic distribution group. The dynamic groups are actually quite fun to play around with. They set up a mail-enable group depending on certain variables such as company name, department, …
Resources are practically identical to shared mailboxes, with the difference that they have a fancy looking icon. Resource mailboxes have the purpose of creating a mailbox (more preferrably a calendar) for your hardware.
If Oliver Shortstraw has a meeting room and a shared car, he might benefit from giving these items a calendar of their own (it’s free, anyway) so managing whoever needs to borrow the car or use the meeting room becomes a super-easy task.
Contacts : if you were to use external email addresses in tenant-wide mail rules, they need to be defined in this area.
“Mail contacts” are used for administrative purposes only.
“Mail users” are Active Directory enabled objects linked to an external mail address, allowing external users (like a gmail user) to perform things inside your cloud AD environment.
Shared mailboxes : as mentioned before, these mailboxes host mail, but aren’t linked to a physical user, thus not accounted for during licensing cost calculation.
Migration. I’ve always found this option to be somewhat misplaced in the recipients menu.
The “Migration” option oviously lets you migrate to (and from !) Exchange Online through a couple of ways.
We’ll be doing the second-to-easiest migration later on, as we’ll be importing shortstraw.be mail from the current provider over an IMAP migration.
In case you’re wondering : importing PST files in Outlook is the easiest way.
Let’s start alphabetically and have a look at Annie’s mailbox.
Doubleclick her entry in the Mailboxes part of the Exchange Admin Center
The more important options in this popup window (allow popups in your browser for this to work, by the way) aren’t the ones you see at first.
Except from the “hide from address list” check mark, you can safely move on the “email address” menu for now. Feel free to have a gander at the other options.
You’ll see three entries by default, after having created a user with only one domain attached to the O365 tenant :
SIP : used in Lync/Skype for Business/Teams (the communication part)
SMTP (in uppercase) : the default address, by which all outgoing mail from this mailbox is sent. Also called the “reply address”
smtp (in lowercase) : an alias to the mailbox. Mail sent to this address will appear in the mailbox as well. Replies will be sent from the SMTP address.
In our example, we’d like for Annie to receive email@example.com as well.
This can be easily achieved by clicking the little + icon and filling out the form, where you type the complete e-mail address and pressing the “Save” button.
You can edit here if this new address needs to become the reply address.
Mailbox features holds a plethora of options such as disabling the use webmail, denying mobile phone connectivity, litigation (see above), archiving, …
The part I want to focus on is “Mail flow” (scroll down a little in the list or enlarge the window).
Again, feel free to check out the other options as well.
Click mail flow and a new window will appear where you get to fill out another form.
Pretty straightforward option where you can setup a server-side mail forwarding, without Annie knowing about it.
For legal reasons I’m obliged to tell you that you should inform your users of this forwarding rule.
Ticking “Enable forwarding” enables you to click the “Browse” button, which in its turn shows you the list of available users to select from.
You’ll see that this list is populated only by the internal addresses in your own global address list.
And this is where our “Mail contacts” from above come in of oyu’re to setup a forwarding to an address that’s not housed in your customer’s O365 tenant.
“Deliver message to both forwarding addresses and mailbox” simply does what it says. If you weren’t to activate this after enabling the forward option, Annie wouldn’t receive mails anymore in her own mailbox, but all mails are forwarded without leaving a copy.
One more option in the left menu of our user mailbox properties that we’ll look into within a couple of minutes is the “Mailbox delegation” menu. This option is a mini rights management where you can set “full access”, “send on behalf” and “send as” rights for a mailbox.
In our example, Oliver had a couple of aliases in his old mail setup.
Because we love our customer, we’ll gladly copy and paste these addresses in the new environment so he can be mailed on e.g. firstname.lastname@example.org
Our third “straw” is John, who luckily doesn’t need extras so he’s good to go with an out-of-the-box setup, which starts him up automatically as email@example.com
We’re almost done with our basic mailflow configuration.
All that remains from our initial analysis (concerning the shortstraw.be domain name) is the remaining firstname.lastname@example.org that needed to be seen by both Annie and Oliver.
We’ve already established that a shared mailbox would be the most appropriate solution for this, so let’s configure one !
Go to the “shared” top menu and click the little + icon.
A familiar looking form appears.
You might recognize this from when you just recently created a new mailbox.
The biggest difference is the appearance of the permissions box.
Select the user(s) with permission to view and send from this box and press “Save”.
You’re good to go !
Setting up a shared mailbox is THAT easy.
First of all, SPF stands for “Sender Policy framework”.
Now you know.
An SPF record is used as a “sort of ” security/anti-spam measure in order to protect your outgoing mail from being sent FROM a certain list of sender locations.
You read it right : “from” (not “to“).
It’s in no way a fail-safe antispam solution, but it will decrease the amount of mails sent in your name significantly.
Office 365 even requires this specific record on first setup (although you can skip this step eventually).
Who didn’t configure his Outlook Express in the old days to send mail from as his boss to fake a “you’re fired” mail to your new colleague ? Right ? Right ? N-Nobody ?
Oops. Sorry, Bjorn.
In order to understand how things work, wel’ll start out with a little example from our fake (?) company Shortstraw LLC and their Office 365.
After setting up your O365 subscription, your SPF records looks a bit like this :
I deliberately used the expression “text record” as SPF is nothing more than a TXT record with a specific markup. Most hosting companies have a separate entry box for SPF nowadays, but in the background it’s still a TXT.
Let’s split up everyting in this text record, so we can understand completely what exactly it is that Microsoft wants us to do.
All this does is stating the obvious.
This record is “version SPF1”.
To make things confusing, there’s an unrelated spf2.0 record, which stands for “Sender ID”
The include value *drumrolls* includes the values of another SPF record, in this case a large list of IP addresses of Microsoft servers.
The very same website I’ve used in the example above (MX Toolbox) easily provided me with this information. You can see that in itself this record loops through to more SPF values in spfa.protection.outlook.com.
This has to do with the maximum accepted length for a TXT record, which is limited to 255 characters, as explained on this RFC page.
-all The final entry in the record is also the most conclusive one.
The “-all” stands for “disallow all other entries”
The above example was just a textbook sample provided by Microsoft to get you started. It should be sufficient for the average O365 setup.
Reality however will often slap you in the face with a more complex situation where you’ll be needing to configure all-in-one printers, old software packages with support for mail over port 25 only, websites sending from something@your_domain_name, …
They all have a couple of specific things to keep in mind when configuring your SPF record.
The example above will allow all the mailservers in the domain uwmoeder.com to be able to send mail from shortstraw.be
Double checking on this, it will resolve to redirect.ovh.net in this case.
Just adding “MX” without a domain name, will allow all MX entries in the shortstraw.be domain to send mail.
IP4: You may enter one specific IPv4 address or a group of IP addresses in the typical “slash” notation (it’s called “CIDR format” in big-boy-language).
Note the omission of the letter “v” in ip4. Pay attention to this common typo.
Received-SPF: softfail (google.com: domain of transitioning email@example.com does not designate 203.0.113.2 as permitted sender) client-ip=203.0.113.2;
Stating the “+all” addendum, ignores everything you just added in the previous part of the SPF record.
Your mails might (or might not, depending on the server) be tagged with an extra header that says something in the likes of “this mail is probably not OK, but it doesn’t matter anyway”.
Almost the same as “+all”, with the exception that your mails will not be flagged.
?all stands for “No policy statement” and simply does not hold the SPF record in account.
Often used when trying to delete an SPF record without actually deleting it.
Now how does this REALLY work ?
Every self-respectable and up-to-date mail server will do an SPF checkup, when receiving mail.
That’s right, even Exchange Server 2003 can do this, updated to Service Pack 2. (not sure how it’s implemented in an Exchange 2000, though – I’ve seen software by GFI that used to be able to do this, but if you’ve come to this page looking for an antispam solution for your Exchange 2000, you can probably guess what I’m thinking right now…)
In a side-note, this function is usually referred to as “Sender ID” in an Exchange environment.
It’s usually a hard-coded feature with nothing much to tweak, except for turning it on or off.
One simple image explains how it works.
Mail server A sends mail from a certain domain.
Mail server B receives mail from this domain and does a quick DNS lookup looking for any TXT records containing “v=spf1” after which he interprets the information like I’ve explained about one page up.
That’s it !
You now know how an SPF record works !
I’ve taken the liberty of compiling a small list of handy websites should you want to read more on the subject.
Microsoft Message Header Analyzer.
Not mentioned in this page yet, but a great tool nevertheless.
If reading a wall of text is too hard, copy your mail headers in this website and it will provide you with readable text. Huzzah ! https://testconnectivity.microsoft.com/?tabid=mha
Remember Oliver’s company (Shortstraw LLC) mail profile in one of our previous posts ? Refresh your memory if you stumble upon this website and have forgotten / not read the previous one.
I will base this actual setup on our findings in that post.
The hardware and operating system upgrading procedures, that I spoke about, will not be handled here.
Preparing the environment
Since we’ve established our to-do list, we can now start the procedure in which the customer will experience the least downtime.
Depending on the expectations of the customer, you can either perform all these actions on-the-fly or prepare yourself thoroughly. In this case we’ll take the long(er) road.
After having created the 30-day trial (or go ahead and buy one instantly through Microsoft or a Cloud Solutions Partner)
You’ll be greeted with something similar to the screenshot above.
Clicking the upper left square icon will get you into the apps menu.
Depending on the user rights and licenses, you’ll see less or more icons, representing the programs and apps you’re allowed to use.
One important icon you’ll see, is the “Admin“.
Users that have administrator rights will be provided with this option.
In this example, our admin user has a fully working E3 license (you get 25 of these buggers in an O365 trial), which is something that’s “not done” in a real life situation.
Were you to upgrade this 30 day trial to a full tenant, I strongly suggest stripping the admin account of all his licenses. It’s bad practice to use your O365 admin account for anything else than … well… admin purposes.
We’ll get into licensing later.
Click on “Admin” and a specific administrative portal opens.
You can take a short tour of everything by clicking “Start the tour” if you want or read onward and click “Skip”.
On the left side of the admin page you’ll notice the admin menu (which is deliberately placed as a screenshot on the right side of this page, just to confuse you)
First thing you’ll be wanting to do is to create the situation with the correct internal mailflow, user rights etc.
Remember : as long as you don’t change the MX record in the customer’s DNS settings, NOTHING will happen to the existing setup.
You can safely mess around until you’ve got the flow up and running to your own standards.
Remembering our previous conclusion, we’ll start creating our users’ mailboxes first.
If you want to get this right at first try, you’ll want to include the domain first as an “inbound” domain into your O365 tenant. This will allow you to create user names ending in @yourdomain.com instead of @yourdomain-com.onmicrosoft.com.
Again, including the domain name will not change your current mail flow.
DON’T PANIC !!!
Open the Setup menu and click “Domains”
One domain will be listed by default.
This is you tenant name (in my example “shortstraw.onmicrosoft.com”) and cannot be removed.
Click “Add Domain” and fill in the desired domain name, after which you click “Next”.
In order for Microsoft’s servers to verify your identity and double checking if you’re actually the owner or admin for your added domain, you’ll be given the choice of either adding a TXT record or adding a fake MX record into your own DNS management software at your hosting company’s admin package.
In my case, the lovely French hosting company “OVH” will be my location to turn to.
Eventually, practically every DNS hosting company allows you to manage your settings through some form of admin portal for easy setup purposes.
Once the record has been added, you can click the “Verify” button to let Microsoft doucble check the creation of the record.
If the TXT record is not yet found, according to the O365 domain verification wizard, you can always start your troubleshooting on a global level by surfing to https://dnschecker.org/DNS Checker creates a worldwide DNS lookup, using all sorts of DNS servers to see if your DNS record has propagated already to all locations.
Usually DNS propagation for a brand new domain record will probably not take a lot of time. It’s those record changes that tend to take longer.
From this point on, you’ll be able to pick your domain name already in the user creation wizard.
Should you choose to continue, more DNS records will be added.
Skip forward to user creation. (link not yet implemented, because too lazy)
The screenshot above will give you a sneaky Microsoft question, with the default option set to “Set up my online services for me”.
Though Microsoft might say “Recommended”, I strongly disagree here.
“Why’s that”, you say ?
In case you decide to stop your O365 adventures and want to move on to a new platform for mail, you’re going to have to go through a lot of hassle to set this straight again.
Always choose to manage your own DNS records and click “Next”. Unless you’re REALLY pissed about your current DNS provider. In that case, I still suggest just finding another one. BUT NOT MICROSOFT FOR THE LOVE OF GOD.
A step that has been neatly added in the onboarding wizard, since Q4 of 2017 is the “Choose your Online Services” wizard.
This narrows down the amount of DNS records for you to add, according to the active checkmarks.
I’m going to select all of them, because I know my end-customer Oliver Shortstraw will need toe Exchange parts as well as the Mobile Device Management.
He’s also a somebody that changes his mind in the blink of an eye, so just to be sure we won’t have to setup anything else later, I also picked “Skype for Business”.
A somewhat huge list of DNS records will appear, for you to fill into your favorite DNS hoster *cough* OVH *cough*
Now in order to fully understand what’s going on here, I’ll explain in detail the actual stuff that’s going on. Teach a man to fish etc.
FINAL WARNING (I won’t repeat it again) DO NOT CHANGE THE MX RECORD JUST YET (unless this is a brand new setup for a brand new domain, then go ahead and have fun)
CNAME : autodiscover > autodiscover.outlook.com
This record basically tells your Outlook client to read a pre-made config file on a Microsoft server.
Thus allowing you to just enter your e-mail address and password in the Outlook setup wizard, instead of having to go through the hassle of manually setting up your O365 config.
CNAME : sip > sipdir.online.lync.com Refers to the actual SIP server for using Skype for Business/Lync/Teams. Your communication client will connect to this server and this server will in place patch you through to the geographically most redundant SIP server.
CNAME : lyncdiscover > webdir.online.lync.com
This server uses the same Autodiscover protocol as the Outlook one.
It patches you through to the correct Microsoft server cluster where your tenant is hosted, as well as other various kinky background processes. Dragons be here.
CNAME : enterpriseregistration > enterpriseregistration.windows.net
Basically serves as a registration server (duh), so the Microsoft servers know what mobile device was added to the tenant for so-called “conditional access”
CNAME : enterpriseenrollment > enterpriseenrollment.manage.microsoft.com
Enrolling (again, duh) Windows mobile devices and managing them through Microsoft Intune, requires these servers.
TXT : v=spf1 …
Specifies the server(s) that may send mail, originating from your domain name.
More on SPF records in an other post.
For now, follow the suggested entry, which – shortly explained – allows a group of servers that are defined in the name spf.protection.outlook.all to send mail from your domain. All others are denied.
SRV : _SIP
Together with the sipfederationtls entry, these are usually the more tricky ones to enter, depending on the DNS management tool. [An example from the one.com hosting panel].
This specific entry provides the security layer.
SRV : _SIPFEDERATIONTLS
This entry states the TCP port 5061 is being used for everything federation-related in communicating over SIP. A Classic SIP port uses port 5060. Microsoft likes to do things in their own special way…
MX : xxxx-yy.mail.protection.outlook.com
An automatically generated server name, based on your domain name and domain extension.
MX is short for Mail Exchanger and tells other mailservers in the world where to go dump its mail for your specific domain name.
The second you change this record in your DNS management (and it gets propagated world wide, bla bla) your mail will be directed to the server(s) in this record.
<lazy mode> Let’s assume for the time being, that our test company does not care much for just a little downtime and let’s change all these records in our DNS management tool </lazy mode>
Clicking the “Verify” button at the bottom of the wizard page will get Microsoft’s O365 server to check all your entries. Depending on the DNS management tool and the hosting company, this might take a couple of seconds up to a couple of hours.
After a successful verification of all entered services, let’s move on to creating new users in the next post.
For now, pat yourself on the back for a job well done and have a refreshing beverage.
Antique software ? No TLS/SSL support for outgoing mail ?
No problem !
If you stumble upon this article through a Google search (who uses Bing, anyway…), you’re probably wondering how to solve the following issue (or something similar) :
You have this old invoicing software that doesn’t get updates anymore ever since 2008 and relies on port 25 – unauthenticated – to send mails through your ISP’s outgoing mail server.
You happen to have this beautiful product called ‘Office 365’ and use its mail functionality for your own domain name. This domain name is used as outgoing mail domain in your software.
Luckily, you still have a Windows Server randomly lying about (hopefully 2008 R2 or higher, but this trick works with older stuff as well – also : this works on a Windows 7/8/10 , even though the IIS install method will be different)
Installing SMTP in IIS
2012 R2 Server Install Internet Information Services (IIS)
In Server Manager, select Add Roles.
On the Before you begin page in the Add Roles Wizard, select Next.
On the Select Installation Type page, select Role-based or Feature-based installation.
On the Select destination server page, choose Select a server from the server pool, and select the server that will be running SMTP services. Select Next.
On the Select Server Roles page, select Web Server (IIS), and then select Next. If a page that requests additional features is displayed, select Add Features and then select Next.
On the Select Role Services page, make sure that Basic Authentication under Security is selected, and then select Next.
On the Confirm Installation Steps page, select Install.
Open Server Manager and select Add Roles and Features.
Select Server Selection and make sure that the server that will be running the SMTP server is selected and then select Features.
On the Select Features screen, choose SMTP Server. You may be prompted to install additional components. If that’s the case, select Add Required Features and select Next.
Select Install. After the installation is finished, you may have to start the SMTP service by using the Services snap-in for the Microsoft Management Console (MMC).
2008 R2 Server Install Internet Information Services (IIS)
In Server Manager, select Add Roles.
On the Before you begin page in the Add Roles Wizard, select Next.
On the Select Server Roles page, select Web Server (IIS) and select Install.
Select Next until you get to the Select Role Services page.
In addition to what is already selected, make sure that ODBC Logging, IIS Metabase Compatibility, and IIS 6 Management Console are selected and then select Next.
When you’re prompted to install IIS, select Install. You may need to restart the server after the installation is finished.Install SMTP
Open Server Manager and select Add Roles and Features.
On the Select Features screen, choose SMTP Server. You may be prompted to install additional components. If that’s the case, select Add Required Features and select Next.
Select Install. After the installation is finished, you may have to start the SMTP service by using the Services snap-in for the Microsoft Management Console (MMC).
Select Start > Administrative Tools > Internet Information Services (IIS) 6.0.
Expand the current server, right-click the SMTP Virtual Server, and then select Properties.
On the General tab, select Advanced > Add.
In the IP Address box, specify the address of the server that’s hosting the SMTP server.
In the Port box, enter 587 and select OK.
On the Access tab, do the following:
Select Authentication and make sure that Anonymous Access is selected.
Select Connection > Only the List Below, and then specify the IP addresses of the devices that will be connecting to the SMTP server, such as printers.
Select Relay > Only the List Below, and then specify the IP address of the devices relaying through this SMTP server
On the Delivery tab, select Outbound Security, and then do the following:
Select Basic Authentication.
Enter the credentials of the Office 365 user who you want to use to relay SMTP mail.
Select TLS Encryption.
Select Outbound Connections and in the TCP Port box, enter 587 and select OK.
Select Advanced and specify SMTP.office365.com as the Smart Host.
/!\ Restart the IIS service and the SMTP service. /!\
Actually testing, before applying
You can test SMTP relay services without using your software that needed it in the first place.
To test SMTP relay services, use the following steps.
Create a text file using Notepad or another text editor. The file should contain the following code. Replace the source and destination email addresses with the addresses you will use to relay SMTP.
FROM: <source email address>
TO: <destination email address>
SUBJECT: Test email
This is a test email sent from my SMTP server
Save the text file as Email.txt.
Copy the Email.txt file into the following folder: C:\InetPub\MailRoot\Pickup.
Try to copy it instead of just moving it. The mail file will disappear.
After a short time, the file should automatically be moved to the C:\InetPub\MailRoot\Queue folder. When the SMTP server delivers the mail, the file is automatically deleted from the local folder.
Warning: If the SMTP server can’t deliver the message, a non-delivery report (NDR) is created in the C:\InetPub\MailRoot\BadMail folder. You can use this NDR to diagnose delivery issues.
This is where most guides fall short.
Read the mails, that appear in the Badmail folder.Usually there will be a reason for refusal or non-delivery explained in these files.
If you have ‘show file extensions’ turned on, they will appear as .BAD files.
Open with Notepad or a similar pogram to see something like this :
Self-explanatory, I guess.
If mails were to actually arrive at their destinaton, but marked as “phishing” or appear in the spam folder of your recipient, chances are pretty high, your software package is still sending out through the wrong outgoing mailserver.
Seeing as I’m not a psychic, I can’t know how to configure outgoing mail in every piece of software.Press F1
An other reason for your mails being marked as “phising” (and I deliberately left this near the end of this article), is also related to the above (still sending out through your ISP’s SMTP server using an Office 365 mail address). HOWEVER…
When the mail arrives – even though its marked as spam – this means your ISP was able to actually deliver it. In Office 365 cases, this usually means that your ISP is not allowed to send out as your O365-linked domain name.
I’ll provide a detailed how-to on interpreting mail headers in a later post, but for the purpose of this exercise, let’s presume the mails are being marked because of the above.
In this case, just adding/editing an SPF record that relates to your ISP will be enough.
The somewhat attentive reader might be asking himself ‘if I could just add an SPF record using the records for my ISP, then why did I even bother reading this article ?
I’ll keep the answer very simple : EVERY user of this ISP will have the ability to send mail as your domain name, without passing some form of verification in this case.
AAaaaaand we’re back to the 80’s/90’s , where it was common fun and games to change your mail address in Outlook Express or other old mail software.
Random : Did you know that Outlook Express’ executable file msimn.exe was named, because it’s short for MicroSoft Internet Mail and News ?
Mail does not arrive and the NDR gives an authentication error :
Did you change your O365 password for the account that you use to authenticate for the SMTP connection ?
Yes you did. (or you just made a typo)
Mail does not arrive and the NDR gives a ‘does not permit to send as’ error :
Most often, this occurs when not sending as the account that is the SMTP relayer.
Your fancy 80’s software probably sends as (e.g., which is latin for exempli gratiā and is often translated as example given – just sayin’) firstname.lastname@example.org, while your SMTP’er is email@example.com.
To solve this, either change your outgoing mail address in your 80’s software, change the authenticating O365 in your SMTP relay server OR…. *drumrolls* add ‘send as’ permissions to the invoicing mailbox for Oliver’s account.
What’s that ? firstname.lastname@example.org does not exist in your O365 tenant ?
Yeah… I figured as much…
Add is as an alias to Oliver’s box or create a new box. Choice is yours.
Oh, and in a footnote : you will not find the mails sent through your relay’er in the resp. mailbox’ Sent Items.
Handy for troubleshooting… NOT
You company has lost an employee and his or her computer gets transferred to a new colleague, who’s freshly hired.
When your lazy-mode kicks in as an IT implementor, you’re probably gonna go and rename the old account in the Office 365 portal and go on with ordinary life as a sysadmin.
However, this will bring some new issues to the table.
The user will still be named as the old user in the internal database of O365
Here and there, references to the old name will still appear in the web portal, as well as in the ‘edited by’ properties of Office documents.
Your physical install of Office will still refer to the old user and will ask for reactivation, which will not work.
… (which is short for “I can’t think of anything else, but I’m sure there is more”)
Having been told I should be less agressive, I’ll try to go towards a passive agressive mode and say “this is what I suggest you should do” instead of “now do this”.
The general idea here is to convert the old mailbox (if there is any, this depends on the O365 subscription) to a shared mailbox, wait for the actual conversion to be done (this is an incredibly important part which is overlooked often) and then take away the e-mail-holding license (Plan 1, Business Premium, E3, E5, …) from that user. The detailed explanation on how to do that, is not relevant to this post, right now.
Afterwards, create the new user and add the license.
What IS relevant, is the removal of the old license on the computer that remains behind and is passed on to the new user.
A couple of steps need to be taken in order to clean up the installation, so it can be re-linked to a new O365 user.
Use the Office Software Protection Platform script to remove the license from the computer.
To remove the Office 365 license, you must run two cscript command lines. The command lines are:
A. Run C:\program files <x86>\Microsoft office\office15>cscript ospp.vbs /dstatus
The above command line will generate a report of the currently installed/activated license. (See Below)
NOTE: You might see multiple licenses in the /dstatus report.
B. Make note of value for “Last 5 characters of installed product key”
C. Run C:\program files <x86>\Microsoft office\office15>cscript ospp.vbs /unpkey:“Last 5 of installed product key” For example: C:\program files <x86>\Microsoft office\office15>cscript ospp.vbs /unpkey:WB222 (See Below) Repeat the step above if necessary until all keys are removed.
After running the /unpkey: command line you will see a “Product Key uninstall successful” message. You can now close the Command Prompt and move onto Step 2.
Remove cached identities in the registry. In the Registry Editor navigate to HKCU\Software\Microsoft\Office\15.0 or 16.0\Common\Identity\Identities and remove all of the identities under \Identities.
NOTE: If using Shared Computer Licensing remove the above Identities from HKEYUsers\SID.
Remove stored credentials in Credential Manager.
A. Open Control Panel > Credential Manager. Remove all Windows credentials listed for Office15 or Office16.
B. To remove the Credential Click on the Drop down arrow and choose Remove from Vault.(See Below)
In Shared Computer Licensing scenarios you must remove the Token and identities listed below.
%userprofile%\Appdata\local\Microsoft\Office\15.0 or 16.0\Licensing
Manually cleanup specific folders.
HKCU\Software\Microsoft\Protected Storage System Provider
Office 365 activation Tokens and Identity
Appdata\local\Microsoft\Office\15.0 or 16.0\Licensing
HKCU\Software\Microsoft\Office\15.0 or 16.0\Common\Identity
HKEYU\(The Users SID)\Software\Microsoft\Office\15.0 or 16.0\Common\Identity
The above steps will be reset to the activation state for Office 365(2013/2016). The activation flow after the locations are cleared will represent an initial activation scenario.
Wanna mess around in a demo version of Office 365, before trying the real thing ?
No problemo !
Go to https://products.office.com/nl-be/try and create an account to your heart’s content.
One big /!\warning/!\ before actually doing so :
Experience has taught me that – while you can create a 30-day demo account and perform all the fun stuff that the full version can – there’s a couple of things you need to know about your demo version.
All domain names added to this O365 tenant, even if it’s in demo mode, have a tendency to remain there even after your trial has expired. In concreto, this signifies, you will not be able to add this domain to a new O365 tenant, should you want to do this, after ignoring the renewal of your demo.
Microsoft has this funny way of holding onto your old data if anything external is still linked to your account. In this case a domain name.
So, when you plan to stop your demo account, be sure to remove all external factors first (such as the link to your own domain name, linked mailboxes that are being pushed into an O365 mailbox, …)
If you don’t do this and you will need this to be re-linked afterwards, you might have to call Microsoft support. *sigh*
You’ll never be able to fully clean up all the messing around you performed in your demo version, so make sure you actually start a new and clean tenant if you want the start using O365 “for real”, thus no mistakes that you made are moved into your live setup (hey, I’m not judging, this is actually what demo environments are for).
If you want the full experience, I do suggest buying a domain name (or using one you have lying around) to integrate into your O365 demo environment, as this will teach you how to fiddle around in the DNS settings later on.
This will also allow you to log into your environment using your actual email address instead of some my_user_name@some_tenantname.onmicrosoft.com .
Mail functionality coming from a .onmicrosoft.com domain is usually blocked or filtered in many cases, so for good form, just integrate a domain name.
We’ll see how this is done later on.
Make sure you get a domain host that allows you to add SRV records, if possible. This will allow you to properly configure your Skype For Business / Lync / Teams communication setup.
A more simple explanation on SRV records can be found through this link.
Getting our hands dirty (almost)
In this example setup, we will be creating a basic startup scene through which we will continue to enlarge our virtual company, adding the necessary services as we need them.
For now, our company “Shortstraw LLC” has not seen the proverbial light yet and just wants his mail in the cloud and accessible at all times.
Shortstraw’s current mail setup for their Belgian branch consists of some simple POP boxes (or so they told us, their IT implementor *dramatic sound*)
The image above (because a wall of text doesn’t read as easy as a children’s illustrated book) shows how the customer describes his current mail situation, after having established first contact over the phone.
Oliver (the CEO) and Annie (the CFO) each have a mailbox which they read in their not-yet-documented mail program.
Together they both read the email@example.com mailbox as a POP box, while leaving a copy of the messages on the server, which is an old-school way of sharing a mailbox.
Their technician, John, receives his to-do list from Annie onto his personal Gmail mailbox firstname.lastname@example.org , so he can use his calendar on his smartphone.
Actually getting your hands dirty
For good form and for good measure you as the IT guy decide to visit the customer, because that’s what you do in cases like this. You go and check on what’s real instead of relying on end-user information. No offence to you dear end-user, who might also be reading this article. I’m just stating the obvious, which is also the reason you contact an IT guy in the first place instead of performing the move to O365 yourself.
After a small audit, you discover the situation to be as follows (example taken from real life) ⇒
You’ll notice already the subtle difference after you got your hands on the computer.
Seemingly unsignificant, there are a few things to be taken into account.
Windows Vista : the easiest one to notice AND resolve. Get rid of this product.
Don’t upgrade to Windows 10 as this is not supported. You can always try to do a fresh W10 install, should the hardware support this, but see this as a sales opportunity.
Office 2007 OEM : 2 things.
– you cannot reinstall (license-wise) an OEM license onto a new computer
– don’t apply Office 2007 for future use in an O365 environment. I’ve mentioned this before. You’ll get into tons of trouble, such as calendars and contacts not synchronizing.
Windows 7 : try to get this to at least Service Pack 1.
email@example.com : only a copy of the messages is being held onto Annie’s computer, which means… Oliver probably has the most chance of having a more complete inbox.
Every time Oliver checks the mails, Annie would no longer receive this mail if Oliver was the first to receive them.
firstname.lastname@example.org : make good note of all his aliases in the mailbox management system he’s currently using at his Belgian mail hosting company. Chances are he’s going to want to split this up into multiple boxes for overview purposes.
email@example.com : an older POP mailbox that customers still use now and then. This mailbox is mainly kept for historical reasons, but Oliver wants to be able to at least read this mail in the future.
firstname.lastname@example.org : has the cfo@ alias.
She has her Outlook configured to receive her personal mails through IMAP. According to herself, this was intentional so that she could read her mails on her cell phone as well. This was never configured, however, but the situation remains to this day.
Annie’s computer uses the local Outlook calendar to plan all things for the business, including keeping a double of the invites she sent to the technician.
John Vercammen : with the exception of having his LTE/4G data plan payed for by Shortstraw and receiving his Samsung Galaxy S8 for work, he is not linked into the company network as such.
Having all the information above, even as a layman at O365, you can see that there is much room for improvement, such as getting rid of old techniques for sharing a mailbox, getting your employees in sync with your company, upgrading software etc.
For this case, which is a fine example of a typical situation, my suggestions, based upon my personal experience and Office 365 support are the following (all mailflow suggestions can also be done in different ways; I just hand out the most common ones) :
Partly related to Office 365, I’d suggest getting rid of Windows Vista AND the Office 2007.
I deliberately added the term ‘OEM’ in my example as OEM software cannot be transferred (in terms of license) to new hardware in case of Office and Windows.
Even were Oliver to buy a new computer and he’d want to re-use his Office 2007 – which would have been an silly choice due to compatibility issues – OEM licensed software can’t be transferred to new hardware.
In a related side-note : Office installations ‘bought’ through O365 can be installed on 5 computers for personal use.
Office 2010 on Annie’s computers needs to be upgraded to Service Pack 3.
Her operating system, Windows 7, needs at least Service Pack 1.
email@example.com : this needs to become a so-called shared mailbox. Shared boxes have the same value as an ‘ordinary’ mailbox, but without a physical user linked directly to it. Hence, no financial cost is attached to this box.
In the migration process, you’ll need to use Oliver’s computer for the most correct and up-to-date content of this mailbox, due to the nature of how ‘leave copy of messages on the server’ works in a POP3 environment (crf. Annie’s PC)
firstname.lastname@example.org / email@example.com : both boxes are POP mail. You can easily export these boxes through Outlook’s “Export to PST” function. Don’t forget to export all content of the mailbox, such as agenda and contacts
Speaking of contacts : a common mistake is confusing the autocomplete list in Outlook (that’s the list of addresses that appears when you start typing the first letters of an e-mail address) with an actual contact list.
Seeing as you’ll be creating either a new profile in Outlook or a clean install on a new computer, you’re going to want to back up this list somewhere. Microsoft has a handy how-to on how to accomplish this.
Should you want to dive a bit deeper in the markup of an NK2 file (which is the file extension for an autocomplete list up until Office 2013), I suggest downloading NK2Edit by Nirsoft (a website totally worth visiting for tons of handy tools, by the way)
firstname.lastname@example.org : now this is an other story. IMAP mailboxes are to be handled with caution, due to their nature in which they are built.
If you were to simply export an IMAP mailbox to a PST file, for import purposes later on in O365, you might run into the fact that only the mail headers are stored in the PST file. The actual content isn’t.
Microsoft has yet another handy couple of ways of importing IMAP mailboxes. We’ll get to that when the actual process of importing starts.
It basically involves the Office 365 servers at Microsoft connecting to the IMAP server themselves, without you having do anything client-side.
You tell the servers in which mailbox to ‘dump’ the content of the remote IMAP mailbox and the process runs slowly in the background. You’ll have to ability to check on the status.
John Vercammen : don’t worry about John (yet). The implementation of integrating John in shortstraw.be is as easy as creating a new mailbox. There’s still a couple of options left open, such as integrating his personal gmail directly into his O365 and choosing the right subscription for John, depending on his specific needs (for instance if he wants to work from home on his personal computer and he’d need a Microsoft Office installed)
The IT guy guides, Oliver decides.
As a personal thought exercise I suggest you try to come up with a couple more improvements for this customer’s network, as I’ve left some subtle ones yet unhandled.
In the next post, we start the process of migrating, while explaining every step’s why and how.
What do we understand under the concept of ‘migration’ ? Migrating to an O365 environment can start from something as simple as ‘moving away from your mail provider, that gives you a your_name@generic_provider_name.com address’ to ‘getting your entire company in the cloud, files, authentication and the whole shenanigans‘.
As an IT implementer for your customer, you’ll need to converse with the end-user to figure out his exact needs. As an end-user you’ll let to have your IT implementor allow to ask you tons of question and have him perform a thorough audit of your current situation. More on this a bit further in this post.
Both parties will get the most out of it, this way.
There’s nothing more frustrating (well maybe there is, but you catch my drift) than having bought a product after which you realise this wasn’t really the thing for you.
Resellers will lose credibility, end-users will be needlessly frustrated and in the longer run, Office 365 will get a bad name for the wrong reasons.
Yes, there are right reasons for not liking O365. There are many cases in which O365 is not the thing for you. Sound advice from an IT professional will help you (I’m looking at both parties) make the right choice.
For the purpose of this entire explanation, we will create a completely non-existing company, entirely not based upon true facts or totally not taken from a real-life situation (insert disclaimer here).
We’ll call it ContosoZupertails Inc.Shinra ShortStraw LLC.
Kudos to those that get the joke.
This company will be our example end-user, with its very own end-user needs.
Asking the correct questions will automatically get you a push in the right direction towards a succesful migration.
Don’t be bone idle and dare to ask questions. Standardisation is a wonderful thing for an IT provider, but leave some room for customisation.
You don’t want to end up being just a box-mover even though the box will be a virtual one in this case.
Eventually, you will create your own checklist, when having set up your own workflow for selling O365 as an IT partner. For now the following list of considerations is a fine way to start your audit.
Depending on the situation, some of these questions will be unnecesary.
I’ll also explain WHY you should ask these questions, as this is often a list that gets forwarded to either Microsoft or a CSP.
What is the current e-mail program (and is there room for change) ?An often unasked question that leads to unforseen timing issues in even the easiest of migration processes.
E-mail in Office 365 is shown to advantage in its native functionality : an Exchange server in the cloud.
Tons of functionality will be lost (calendar, contacts) when, for instance, using only IMAP or when trying to integrate your O365 in Microsoft Mail (default mail client in Windows 10) of Mozilla Thunderbird (mail client for cavemen or Linux users, not necessarily the same).Calculate extra time into your estimate, as an Outlook-to-Outlook migration is the easiest and fastest way to migrate.Also, if Outlook 2007 (or older… *shiver*) is still at play, you need to upgrade to at least version 2010 (with all necessary updates). Don’t listen to all those other websites that tell you that Outlook 2007 is compatible, because you’ll be in for some serious horror stories.
Preferrably upgrade to the newest version of Office, which is something easily achieved through O365, as some subscriptions come with a physical copy of Office.
Know the current mail setup inside-out (and dare to innovate and change)
If change is considered a bad thing, maybe migrating to O365 isn’t your cup of tea.
The process of migration is often linked to fear, as well as by customer as by implementer.
That being said, it’s of the utmost importance to be aware of the current mailflow, amount of mailboxes, aliases, distribution groups, public and/or shared folders, …
Also check if there’s any device such as an all-in-one printer or a standalone device sending out mail from the domain name to be used in the O365 environment and make note of the model and make, so you can look up its compatibility.
Make note of every human entity, wanting to use your O365 setup within the environment of the end-user, because of the way the licensing system works.
It’s not 100% true, but as a rule of thumb, you pay per physical user.
With this knowledge, you can go and create a plan for the new mailbox setup, which doesn’t need to be a true one-to-one copy of its predecessor.
For instance, in O365, shared mailboxes, aliases and distribution lists are completely free, whereas some (older) mail providers might charge you a small fee for this. The same goes for a mail forwarder.
Don’t feel offended. For the purpose of being a completionist, here’s a short explanation of the mailboxes.
– a regular mailbox : at the time of this writing and depending on the subscription, you get either a 50GB or a 100GB limit mailbox with your O365 mail subscription. Full Exchange support (calendar, tasks, contacts, …) and webmail included.
Generally used as ‘email@example.com’.-a shared mailbox : theoretically the same concept as the above. With the exception that no paid license is needed for this type of mailbox. You’ll need to configure user rights to the mailbox in order to allow others to access this, as a shared mailbox cannot be opened directly.
Hey, nothing’s really free, right ?
Usually, a shared mailbox is used as boxes in which multiple users can mess around. All changes made by user A will be seen by user B. In the past, this could only be achieved through IMAP.
Another classic reason to use a shared mailbox : user X leaves the company, but you want his mails to be archived and visible for a certain list of people. In this case you can convert a mailbox to a shared box after which your paid license for this box gets released and can be used for somebody else.
–an alias : essentially an extra label that allows a mailbox to be addressed through an extra email address. E.g. the original mailbox Oliver.Shortstraw@shortstraw.com could get an alias firstname.lastname@example.org or email@example.com in order to make the mailbox address more accessible.
– a distribution list : a list of mailboxes grouped together under one general mail address.
Sending to a distribution list will cause the mail to be received in all the members’ mailboxes.
If user A deletes the mail from his mailbox, user B will not know this.
The general consensus in using a distribution list, is that it’s mostly used for internal communication. O365 even allows turning on/off the option for this list to be available to the internet, so that you can use for example a firstname.lastname@example.org list to contact all your technicians in one mail.
– forwarding : not really a mailbox as it’s more of a feature you can activate on a mailbox (or even automate on a server-level. If set to a specific mailbox, a forwarder does nothing more than what its name already provides : it forwards mails to an other mail address (even outside your organisation)
Do you have access to DNS management for the domain which is to be integrated in O365 ?Migrating to O365 requires you to edit certain DNS records (more on this in a future post, where the actual process is explained). The time required to do this, is a crucial factor for a swift and painless migration.
When you’re in the situation where you don’t have access to some form of DNS management interface and you’ll have to be e-mailing an internet provider or a webdesigner to get this process done, you’re best to consider moving the DNS name to another host, for your own personal ease of work.
Sometimes, the DNS management is done by a webdesigner, as given as example above, because he or she created a website and held onto the domain management. In cases like this, it’s imperative to communicate beforehand with all parties included, in order to smoothen the entirety of the process as much as possible.
Does your IT Department have the expertise and time to complete the migration successfully?An often recurring question.
Seeing as the aspect of ‘time of implementation’ has been touched a couple of times already, it’s no surprise the ‘expertise and time’ question appears here.
For a succesful migration to work out, you’re going to need time.If you as a user will not plan your potential downtime, this WILL result in a large amount of unnecessary stress for your users and your IT implementor.
If you as an IT implementor do not plan your migration correctly, there WILL be downtime. A lot of it.
It’s imperative that you notify all users (see below) of potential changes in their mail and data environment. On a small scale, this can be handled quickly by having a simple chat or sending a mail a couple of days before the actual migration.
On a larger scale, this might involve training your users (and yourself).
The Office 365 admin portal has handy links for this purpose only.
Always have an IT partner ready as a backup in this case. And for good form, inform THEM as well on when you’re about to migrate 🙂
Have you discussed this with all your users ?The impact on time of availability of your users’ work environment is a factor not to be overlooked.
As a father of a partly authistic kid, I can assure you that some people do not handle sudden changes very well. Communication is key in all of this.
Even if it’s just informing your users of changes that are about to happen, the slightest status update is helpful in explaining why user X’s cell phone starts giving notifications and why user Y’s Outlook says ‘not connected’ in the taskbar.
Depending on the situation, you’re going to have to either give the users a small heads-up or you’re going to have to write manuals and configure tons of computers.
Yeay ! Job opportunities !
Do you have access to everything related to the internal network ?Often, you’ll need to move away from a local mail server or you’ll have to have access to users’ computers. Those users might not always have full rights on their computers to change settings.
Very few firewall settings might have to be changed, mailboxes might need to be accessed on a local server etc. etc.
These are just a few possible reasons for you to need access to the local resources on the user’s network.
A lot more questions remain to be asked, depending on the situation, but I guess you can already relate to this by now, after having read all the above. Let me just Google that for you, right here, in case you want more information on this topic and what questions you need to ask yourself before cloudifying your mail and data situation.
In my next post, we might actually get our hand dirty and start doing things.