Waarschuwingen in e-mail

Microsoft controleert of de verzender van een e-mail legitiem is. Dit doen zij onder andere door het controleren van het SPF record. Wanneer het SPF record niet gecontroleerd kan worden zal er de volgende melding worden gegeven

“Deze afzender heeft onze fraudedetectiecontroles niet doorstaan en gebruikt mogelijk een vals adres”

Er zijn redenen waardoor je dit uit zo willen zetten. Dit kan met de volgende code

Set-HostedContentFilterPolicy -Identity "default" -InlineSafetyTipsEnabled $false

Hier wordt er wel vanuit gegaan dat de default policy gebruikt wordt. Indien er een aangepast policy gemaakt is, moet “default” aangepast wordt naar de aangepaste naam.

Onbelangrijke mail uitzetten

Microsoft heeft een nieuwe functie geïntroduceerd: Onbelangrijke mail. Met deze functie worden berichten die volgens Microsoft niet belangrijk zijn in een aparte map geplaatst. Dit zou de gebruiker tijd besparen, je hoeft immers niet alle “nutteloze” e-mail berichten te lezen.

Het systeem is zelf lerend, je kan hier geen mails aan toevoegen of expliciet uitzonderen. Je kan het leren wel helpen door onbelangrijke mail handmatig te verslepen naar de map. Er zijn daarom talloze redenen om de functie uit te zetten voor de hele organisatie of voor een enkele gebruiker.

Een gebruiker kan dit zelf uit zetten door in het postvak te gaan naar Opties, Onbelangrijke e-mail en vervolgens het vinkje voor “Items geïdentificeerd als onbelangrijke e-mail afzonderen” uit te zetten.

Om dit voor de hele organisatie te doen kan je de volgende PowerShell code gebruiken

Get-Mailbox | Set-Clutter -Enable $false

Voor een enkele gebruiker gebruik je het volgende commando, waar je gebruiker@office365blog.nl vervangt door de gebruikersnaam van de user

Set-Clutter -Identity gebruiker@office365blog.nl -Enable $false

Om de onbelangrijke mail weer aan te zetten vervang je $false door $true

Licenties via Volume License productcodes

Licenties voor Office 365 worden over het algemeen op 2 manier aangeschaft. Via de creditcard of via Volume Licenties / Productcodes. De licenties worden vaak per jaar aangeschaft. Bij de volume licenties is er ook een andere mogelijkheid dan een licentie voor een jaar.

Deze post, vooral voor de sales mensen die technisch niet met Office 365 werken, legt uit hoe de tijdsperiode van de licenties werken. Bij het aanvragen van een omgeving kies je een aantal licenties, maar gedurende het jaar kunnen er licenties bij komen, wat natuurlijk een ramp zou zijn om administratief bij te houden. Dan zou je lijstjes krijgen met aanschaf en verloop data van elk account.

Licenties binnen een zelfde product verlopen in een Office 365 omgeving altijd op dezelfde datum. Dus als je origineel 50 licenties aanschaft op 1 januari en op 1 april nog eens 50 licenties voor een jaar, hebben alle 100 licenties de zelfde einddatum.

Dit werkt als volgt. Het huidige aantal wordt opgehoogd met het net aangeschafte aantal. In dit voorbeeld hebben we dan geld betaald 50 licenties voor een periode van 9 maanden. Dan houden we nog 3 maanden over voor 50 licenties.

Inmiddels telt de omgeving 100 licenties. De resterende tijd wordt naar ratio toegevoegd aan de tenant. In het voorbeeld staan 50 licenties voor een periode van 3 maanden dus gelijk aan 100 licenties voor een periode van anderhalve maand. De einddatum van de omgeving zal dan niet meer op 1 januari zijn, maar op 15 februari.

Bij het verlengen van de licenties binnen een product om een omgeving dienen dus alle licenties verlengt te worden. Het is niet mogelijk om 11 bestaande licenties te vernieuwen met 10 licenties. Je hebt minimaal het aantal licenties nodig wat momenteel in de omgeving aanwezig is.

Meerdere domeinen toevoegen

Het is niet veel werk om een enkel domein toe te voegen, het tekstrecord op te vragen en vervolgens de overige records op te vragen. Voor een hoop domeinen tegelijk kan PowerShell het iets makkelijker maken. De domeinen toevoegen plus het opvragen en valideren van de tekst records is via PowerShell te doen. Het in bulk opvragen van de mx records helaas niet.

Eerst is er een lijst met domeinen nodig. Maak een tekstbestand met op elke regel een domein. Sla deze op als Domeinen.txt Bijvoorbeeld:

domein1.nl
domein2.nl
domein3.nl

Vervolgens kan je de domeinen importeren in je tenant

$Domeinen = Get-Content .\Domeinen.txt

De .\ staat dan voor de folder waarin je PowerShell opent, je kan deze dus ook veranderen naar een ander pad.

Nu kan je alle domeinen toevoegen als nieuw domein in Office365

foreach ($domain in $Domeinen) {New-MsolDomain -Name $domain}

Wanneer alle domeinen zijn toegevoegd kan je het TXT records opvragen om aan te passen in je DNS

foreach ($domain in $Domeinen) {Get-MsolDomainVerificationDns -DomainName $domain -Mode DnsTxtRecord}

Je krijgt nu een lijst waar je per domein het toe te voegen TXT-record ziet samen met de TTL. Als de DNS is aangepast kan je de volgende code gebruiken om de domeinen te controleren.

$Domeinen | Confirm-MsolDomain 

Helaas zal de rest via de website moeten, maar dit bespaart een hoop tijd.

Niet kunnen inloggen, geen foutmelding en dirsync

De titel is misschien een beetje onduidelijk, maar dat is het probleem ook. Wanneer je met verkeerde credentials inlogt bij Office 365, krijg je netjes een foutmelding. Met de juiste gegevens zou je moeten kunnen inloggen. In een specifiek geval konden bepaalde gebruikers niet inloggen en kregen geen foutmelding te zien.

De omgeving bestond uit een E3 tenant met DirSync. Gebruikers stonden in de zelfde OU als andere gebruikers en hadden geen verschillen in rechten. Het forceren van de DirSync op zich had geen effect. Onderstaande stappen hebben het probleem verholpen.

Eerst moet de gebruiker verwijderd worden. Doordat het adres via DirSync is aangemaakt, kan het adres niet via de portal worden verwijderd. Hiervoor gebruiken we powershell.

Remove-MsolUser –UserPrincipalName user@office365blog.nl

Vervolgens moeten we de verwijderde gebruikers ook leegmaken. Doe je dit niet, dan zal het account worden hersteld bij de volgende Sync. De prullenbak kunnen we leegmaken via onderstaand commando

Get-MsolUser -ReturnDeletedUsers | Remove-MsolUser –RemoveFromRecycleBin –Force

Wanneer je hierna een Sync van je AD doet, komt de gebruiker weer in Office365 te staan. Probleempje, het inloggen zal niet lukken. Wanneer je Password Sync hebt aanstaan zal je het password syncen nog moeten forceren. Dit doe je door DirSyncConfigShell.psc1 als Administrator uit te voeren en het volgende in te voeren

Set-FullPasswordSync

Zelfs nu is het password nog niet gesynchroniseerd er is nog één handeling nodig. De service Forefront Identity Manager Synchronization Service moet herstart worden. Hierna is het password gesynchroniseerd en zal het account weer werken.

Het account in Office365 is nieuw. Alle rechten zullen opnieuw toegekend moeten worden. Ook de licentie zal toegevoegd moeten worden.

Office365 in een SBS omgeving

Office365 is uitermate geschikt voor kleine bedrijven die nu mail, data en misschien nog een applicatie op een SBS server hebben staan. Zij kunnen de mail in Office365 onderbrengen, de data op een NAS (of OneDrive natuurlijk) plaatsen en hun applicatie webbased gebruiken. Als de server te traag wordt en overstappen naar Office365 een reden is om de server sneller te maken, of meer ruimte vrij te krijgen (Exchange kan uit op de server), kan je problemen ondervinden met autodiscover.

Dit geldt alleen voor SBS servers en niet voor andere servers. Autodiscover zal op computers die lid zijn van een SBS domein altijd naar de lokale server blijven kijken in plaats van de Azure AD. Op alle computers handmatig de server op te geven is in veel gevallen te veel werk. Via de Exchange Powershell kan je dit probleem verhelpen. Gebruik het volgende commando en onthoud of kopieer de waarde achter ‘Identity’.

Get-AutodiscoverVirtualDirectory | fl Name, Server, InternalUrl, Identity

Vervolgens kan je met het onderstaande commando de SBS autodiscover weg halen.

Remove-AutodiscoverVirtualDirectory –Identity “wat acht Identity staat”

De waarde tussen de aanhalingstekens moet gelijk zijn aan de waarde die je hebt gekopieerd of hebt onthouden. Vervolgens zal je de handeling nog moeten bevestigen. Hierna zal autodiscover werken zoals het in andere omgevingen ook doet.

bron: http://kirb.it/enable-office-365-auto-discover-for-outlook-in-sbs-2011-exchange-environments/

Exchange 2003 / 2007 exporteren naar PST

Bij een migratie naar Office365 wil het nog wel eens voorkomen dat je mailboxen wil bewaren als archief. Denk daarbij aan medewerkers die uit dienst zijn gegaan. Je kan mailboxen tot 5 gigabyte migreren naar een gedeelde mailbox. Bij betaalde software kost dit per mailbox ook nog een licentie. Een PST bestand is dan vaak een optie.

Oudere versies van Exchange hebben standaard niet de functie om een export te maken van de mailboxen in Exchange. Het is wel mogelijk in een bepaalde opzet. De stappen hier onder resulteren in een opzet die ik heb gebruikt. Afwijkende opzetten kunnen ook werken.

De Exchange 2007 Management Tools werken alleen op 32 bit software. Ook een 32 bit besturingssysteem is vereist. De computer / server moet in het domein kunnen. Daarom heb ik gekozen voor Windows 7 Pro 32-bit. Ook heb je een outlook client nodig. Ik heb de 2007 versie gebruikt, maar 2003, 2010 en 2013 moeten ook werken.

Deze pc moet in het domein staan waar de Exchange server ook in staat. Log in onder een Exchange admin account. Zelf heb ik ingelogd met het domeinadmin account.

Op de PC moeten de IIS componenten worden geïnstalleerd. Exchange 2007 zal zelf aangeven wat er nog mist op de computer voordat de tools kunnen worden geïnstalleerd.

Uiteindelijk heb je nog de Exchange 2007 Management Tools nodig. SP1 is al voldoende, maar ik heb SP3 gebruikt. Bij het installeren van de tools kies je voor een aangepaste installatie. Hier kan je kiezen dat je alleen de management tools wil hebben. De installatie doet een test of alle benodigde software staat geïnstalleerd.

Eenmaal de management tools geïnstalleerd kan je het volgende commando gebruiken om een enkele mailbox te exporteren.

Export-Mailbox -Identity <MailboxIdParameter> -PSTFolderPath <Path_Of_PST_Folder>\<File_Name>.pst

Bijvoorbeeld:

Export-Mailbox -Identity john@office365blog.nl -PSTFolderPath C:\PSTFiles\john.pst

Wanneer je meerdere mailboxen tegelijk wil exporteren zijn er meerdere manieren. Je kan een hele OU exporteren met het volgende commando.

Get-Mailbox -OrganizationalUnit Uitdienst | Export-Mailbox -PSTFolderPath C:\PSTFiles

Je kan ook een lijstje maken met de accounts die je wil hebben. Open een notepad en typ op elke regel het gebruikers id of hoofdemail adres wat je nodig hebt. Bijvoorbeeld:

john@office365blog.nl
ben@office365blog.nl
karel@contoso.com
frans@domein.nl

Sla dit bestand op en onthoud de locatie. Sla je het op onder de naar users op c: dan wordt je commando:

type c:\users.txt | Export-mailbox -PSTFolderPath c:\PSTFiles

Hoe langer je lijst hoe, langer het duurt voordat de PST’s klaar zijn. Mijn advies is om dit te doen in een omgeving die niet meer in productie is.

Beheer beveiligingsgroepen met PowerShell

Beveiligingsgroepen wil je af en toe kunnen aanpassen, er moet een lid bij of af. Wanneer je in het beheerpaneel een wijziging wil maken aan een beveiligingsgroep kan je de volgende melding krijgen:

“You don’t have sufficient permissions”

Wanneer je kijkt bij eigenaren zal je zien dat hier ook geen personen zijn toegevoegd. Om dit op te lossen kan je jezelf via PowerShell eigenaar maken. Als je ingelogd bent op Powershell gebruik je de volgende regel:

Set-DistributionGroup <NameOfGroup> -ManagedBy "Admin@office365blog.nl" -BypassSecurityGroupManagerCheck

Hier vervang je <NameOfGroup> door de naam van de beveiligingsgroep. Let op de  dat je jou beheer adres tussen aanhalingstekens zet zoals in het voorbeeld.

Via PowerShell kan je ook personen toevoegen aan een group. Dit doe je met:

Add-DistributionGroupMember -Identity <NameOfGroup> -Member gebruiker@office365blog.nl

En verwijderen:

Remove-DistributionGroupMember -Identity <NameOfGroup> -Member gebruiker@office365blog.nl

Let op: Hier staat het adres zonder aanhalingstekens.

Opvragen van gegevens kan met het volgende commando

Get-DistributionGroupMember -identity <NameOfGroup>|fl DisplayName,WindowsLiveID,RecipientType

En je kan ook een hele groep verwijderen

Remove-DistributionGroup <NameOfGroup> -BypassSecurityGroupManagerCheck

Alle gebruikers met licenties

In grotere organisaties kan het voorkomen dat je een aantal gebruikers met licentie hebt die helemaal geen licentie nodig hebben. Met de volgende code maak je een overzicht van alle gebruikers met licentie.

Eerst maken we verbinding met de MSOL service. Vervolgens gebruiken we de volgende code

Get-MsolUser | Where-Object { $_.isLicensed -eq "TRUE" } | Select-Object UserPrincipalName, DisplayName | Export-Csv c:\LicensedUsers.csv

Door te kiezen voor UserPrincipalName en DisplayName krijg je het emailadres en de weergavenaam in de csv bestand. Je kan nog veel meer opties kiezen zoals Department en Country.

Wil je een overzicht met alle gegevens van een gebruiker gebruik je de volgende code

Get-MsolUser | Where-Object { $_.isLicensed -eq "TRUE" } | Export-Csv c:\LicensedUsers.csv

Bulk wachtwoorden aanpassen

Wanneer je bijvoorbeeld voor een nieuwe omgeving gebruikers hebt aangemaakt krijg je allemaal verschillende wachtwoorden. Er zijn meerdere redenen te bedenken om alle wachtwoorden het zelfde te hebben. Handmatig kan dit best een klus zijn, met PowerShell kan dit in enkele commando’s.

We beginnen met een lijst van de huidige gebruikers te maken. Zoals je zit moet je dit doen via MSOL. Hier staat beschreven hoe je verbinding kan maken met MSOL.

Get-MSOLUser | Select UserPrincipalName|Export-Csv c:\password.csv

Het net gemaakte bestand staat nu op de c-schijf wat weer geïmporteerd kan worden. Je eigen administrator adres staat hier dus ook tussen. Om te importeren gebruiken we de volgende code

Import-Csv c:\password.csv|%{Set-MsolUserPassword -userPrincipalName $_.UserPrincipalName -NewPassword somestaticpassword -ForceChangePassword $false}

Bron: http://community.office365.com/en-us/forums/158/t/22393.aspx