5ain7 ga11 . CH || i7-l3ak5. CH || g07r007.CH

Exchange Server

Exchange 2012 /Outlook Termine: Betreff anstelle von Organisator anzeigen

by on Apr.13, 2016, under Exchange 2013, Exchange Server, Knowledgebase

Bei Erstellung eines Termins mit Einladung eines Raumpostfachs wird der definierte Betreff, im Kalender des Raumpostfachs, durch den Organisator-Namen ersetzt.
 
Lösung:
Seit Exchange 2013 kann dies nicht mehr über das GUI konfiguriert werden.
 
Hier die entsprechenden Powershell-Befehle:
 
Set-CalendarProcessing <Postfachname> -DeleteSubject $false
Set-CalendarProcessing <Postfachname> -AddOrganizerToSubject $false
Leave a Comment more...

Exchange attachment size limit (Exchange 2010+)

by on Apr.11, 2016, under Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase

Es gibt drei “Orte”, wo man die Attachment Size Limit einstellen kann.

  • Organization transport settings
  • Send/receive connector settings
  • User mailbox settings.
<get-transportconfig | ft maxsendsize, maxreceivesize >
<get-receiveconnector | ft name, maxmessagesize >
<get-sendconnector | ft name, maxmessagesize >
<get-mailbox Username|ft Name, Maxsendsize, maxreceivesize>

Die gewünschten Werte einfach mit "SET" setzen.



Leave a Comment more...

Exchange 2013 Kalenderberechtigungen via Bulk setzten

by on Dec.01, 2015, under Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase

<$allmailbox = Get-Mailbox -Resultsize Unlimited

Foreach ($Mailbox in $allmailbox) {Set-mailboxfolderpermission –identity ($Mailbox.alias+’:\Kalender’) –user Default –Accessrights Reviewer}

>

 

gibt das Recht Reviewer für alle Mailboxen

Leave a Comment more...

Exchange Whitespace anzeigen

by on Aug.06, 2015, under Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase, Server-Plattformen

Mit folgendem Befehlt lässt sich beim Exchange 2010/+ der WhiteSpace anzeigen:

 

<Get-MailboxDatabase MyDatabaseName -Status | select AvailableNewMailboxSpace>

 

 

Leave a Comment more...

Exchange 2013 POP3 Abruf geht nicht

by on Jun.23, 2015, under Exchange 2013, Exchange Server, Knowledgebase, Server-Plattformen

Ich hatte schon ein paar Mal, dass die POP3 Verbindung zu einem Exchange 2013 (bei mir ab CU7) sporadisch nicht funktionierte. Der Exchange POP3 Dienst war soweit aber up’n’running. Telnet auf localhost funktionierte mit dem richtigen Welcome-Banner.

Telnet von einem Remote-Host endete in einem blinkenden schwarzen Fenster.

Das Problem war der Status der Komponente POPProxy. Dieser war auf inaktiv gesetzt. Dies lässt sich wie folgt überprüfen.

<Get-ServerComponentstate -Identity EXCHANGE01>

Server Component State
—— ——— —–
EXCHANGE01.domain.com ServerWideOffline Active
EXCHANGE01.domain.com HubTransport Active
EXCHANGE01.domain.com FrontendTransport Active
EXCHANGE01.domain.com Monitoring Active
EXCHANGE01.domain.com RecoveryActionsEnabled Active
EXCHANGE01.domain.com AutoDiscoverProxy Active
EXCHANGE01.domain.com ActiveSyncProxy Active
EXCHANGE01.domain.com EcpProxy Active
EXCHANGE01.domain.com EwsProxy Active
EXCHANGE01.domain.com ImapProxy Active
EXCHANGE01.domain.com OabProxy Active
EXCHANGE01.domain.com OwaProxy Active
EXCHANGE01.domain.com PopProxy Inactive
EXCHANGE01.domain.com PushNotificationsProxy Active
EXCHANGE01.domain.com RpsProxy Active
EXCHANGE01.domain.com RwsProxy Active
EXCHANGE01.domain.com RpcProxy Active
EXCHANGE01.domain.com UMCallRouter Active
EXCHANGE01.domain.com XropProxy Active
EXCHANGE01.domain.com HttpProxyAvailabilityGroup Active
EXCHANGE01.domain.com ForwardSyncDaemon Active
EXCHANGE01.domain.com ProvisioningRps Active
EXCHANGE01.domain.com MapiProxy Active
EXCHANGE01.domain.com EdgeTransport Active
EXCHANGE01.domain.com HighAvailability Active
EXCHANGE01.domain.com SharedCache Active
Ich konnte die Komponente, dann wie folgt aktivieren:

<Set-ServerComponentState -Identity EXCHANGE01 -Component PopProxy -Requester HealthAPI -State Active>

Leave a Comment more...

Scheduled Exchange Powershell Output via Email

by on May.05, 2015, under Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase, PowerShell ISE, Server-Plattformen, Windows 2008 Server, Windows Server 2012 R2

Möchte man einen Exchange PoweShell Output terminiert ausführen und per Email senden, dann geht dies mit folgendem Script. Im Script habe ich gerade noch den Output in HTML formatiert und mit einer Table verpasst. In diesem Falle war es ein Get-MessagetrackingLog Output über einen ganzen Tag.

[code language=”powershell”]
$smtpServer = “mail.it-leaks.ch”
# SMTP Relay Server
$smtpFrom = “DailyReport@it-leaks.ch”
# SMTP Absender
$smtpTo = “spicedham@inter.net”
# Absender
$messageSubject = “Daily Report”
# Subject

$style = “< style>BODY{font-family: Arial; font-size: 10pt;}”
$style = $style + “TABLE{border: 1px solid black; border-collapse: collapse;}”
$style = $style + “TH{border: 1px solid black; background: #dddddd; padding: 5px; }”
$style = $style + “TD{border: 1px solid black; padding: 5px; }”
$style = $style + “< /style>”
# Style auf Arial setzen und Table einbauen

$message = New-Object System.Net.Mail.MailMessage $smtpfrom, $smtpto
$message.Subject = $messageSubject
$message.IsBodyHTML = $true
# Nachricht zusammenfügen und als HTML deklarieren

$message.Body = get-messagetrackinglog -Start (Get-Date).AddHours(-24) -Sender “out@it-leaks.ch” -EventID “SEND” | select {$_.Recipients},{$_.MessageSubject},{$_.TimeStamp} | ConvertTo-Html -Head $style
# Message Content aus Exchange PowerShell generieren

$smtp = New-Object Net.Mail.SmtpClient($smtpServer)
$smtp.Send($message)
# Message senden
[/code]

Damit das Script via Windows Scheduler täglich ausführen kann, habe ich es in einem CMD Wrapper verpackt, welcher das Script via Exchange PowerShell ausführt.

[code language=”powershell”]
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -command “. ‘c:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1’; Connect-ExchangeServer -auto; D:\DailyScripts\SendEmailwAttachHTML.ps1”
exit
[/code]

Anschliessend kann das CMD File via Windows Scheduler geplant werden.
Scheduler

Leave a Comment more...

SSL Wildcard Konfiguration für Exchange POP3 und IMAP

by on Apr.08, 2015, under Exchange 2007, Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase

Wenn man versucht, bei einem Exchange 2010/2013 den POP3 und IMAP Services ein Wildcard Cert zuzuweisen, kommt folgende Meldung:

<Enable-ExchangeCertificate -Thumbprint XXXXXXXXXXXXXXXX -Services POP
WARNING: This certificate with thumbprint XXXXXXXXXXXXXXXXXXXXXX  and subject '*.example.com' cannot used for POP SSL/TLS connections because the subject is not a Fully Qualified Domain Name (FQDN). Use command Set-POPSettings to set X509CertificateName to the FQDN of the service.>

Das gleiche ist bei IMAP…

Der FQDN der X509 Certs muss dazu angepasst werden.

<Set-POPSettings -X509CertificateName mail.domain.ch>
<Set-IMAPSettings -X509CertificateName mail.domain.ch>

Danach noch die Services restarten.

<Restart-service MSExchangePOP3>
<Restart-service MSExchangeIMAP4>

Die Dienste lassen sich jetzt zuweisen.

Leave a Comment more...

ADFS / WAP and Exchange 2010 OWA Problem mit Kerberos (0x8007052e)

by on Apr.02, 2015, under ADFS, Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase, Security, Server-Plattformen, Windows Server 2012 R2

Ich hatte das Problem, dass sich die User via Outlook Webapp (published via ADFS & WAP) nicht formularbasiert anmelden konnten. EAS und Konsorten funktionierten einwandfrei.

Nach dem Login auf dem neuen ADFS Page, passierte einfach nichts…

URL

 

Auf dem WAP Server sieht man, dass ein Kerberos Ticket angefordert wird, der ADFS Server aber kein Ticket zurücksenden kann. Die Logs auf dem WAP Server zeigten folgendes:

WAPLog

 

 

EVENT ID 12027, Username and Password wrong (0x8007052e).

 

Auf dem ADFS Server sieht man folgendes:

ADFSLOG

 

<364:

Encountered error during federation passive request.
Additional Data
Protocol Name:
Relying Party:
Exception details:
Microsoft.IdentityServer.Web.InvalidScopeException: 06a7aa66-3aad-e311-80c1-005056983900

 at Microsoft.IdentityServer.Web.Protocols.MSISHttp.MSISHttpProtocolHandler.ValidateSignInContext(MSISHttpSignInRequestContext msisContext, WrappedHttpListenerRequest request)

 at Microsoft.IdentityServer.Web.Protocols.MSISHttp.MSISHttpProtocolHandler.CreateProtocolContext(WrappedHttpListenerRequest request)

 at Microsoft.IdentityServer.Web.PassiveProtocolListener.GetProtocolHandler(WrappedHttpListenerRequest request, ProtocolContext& protocolContext, PassiveProtocolHandler& protocolHandler)

 at Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext context)
>

Das Problem lag daran, dass der WAP-Server keine Berechtigung hatte Kerberos-Sicherheitstokens anzufordern. 

Nachdem ich den WAP Server in die Gruppe <Windows Authorization Access Group>
hinzugefügt hatte, funktionierte es nach dem Reboot einwandfrei.

 gruppe




Windows Authorization Access Group
In the user account in Active Directory there is a computed token. This is a computed version of the same security token that is created when a user logs in. You only need to add users to this group for special software that requires this access
Leave a Comment more...

Reseeding Exchange 2013 Search Index

by on Feb.23, 2015, under Exchange 2013, Exchange Server, Knowledgebase, Server-Plattformen

Wie repariert man eine defekte Exchange 2013 Search Index Database?

Zuerst einmal checken, ob die DB überhaupt Probleme hat.

index

 

<Get-MailboxDatabaseCopyStatus -Server SERVERNAME | FL Name,*Index*>

 

In diesem Fall steht:  Reseeding of the index is required

Na, dann machen wir das:

1.

  • “Microsoft Exchange Search” und “Microsoft Exchange Search Host Controller” Dienst stoppen
  • In den Ordner mit der Datenbank browsen. Darin findet man einen Ordner mit langen Strings.In diesem Ordner ist der Index gespeichert. Den Order umbenennen oder ganz löschen

IndexFolder

  • Danach die soeben gestoppten Dienste wieder starten.
  • Nach ein paar Minuten sollte der Ordner wieder erscheinen.

<Get-MailboxDatabaseCopyStatus -Server optivevs01 | FL Name,*Index*>

..zeigt wiederum den aktuellen Status an: The Microsoft Exchange Search Service is crawling the database.

 

Wenn der Task durch ist, sollte folgender Status ersichtlich sein:

ContentIndexState            : Healthy

 

Leave a Comment more...

Exchange: interne Servernamen aus Email Receive Header entfernen

by on Feb.19, 2015, under Exchange 2010, Exchange 2013, Exchange Server, Knowledgebase, Server-Plattformen

Beim Versand eines Emails via Exchange sieht ein Header normalerweise so aus, dass der interne Servernamen  im Header mitgegeben wird:

<Received: from mailout.in-the-cloud.ch (18.18.18.18) by vex10.itc.local
(192.168.10.19) with Microsoft SMTP Server id 14.2.347.0; Thu, 19 Feb 2015
14:19:50 +0100
Received: from mail.external.ch (mail.external.ch [81.81.81.81]) by
mailout.in-the-cloud.ch with ESMTP id tdORrIH8XGrJEANV for <me@in-the-cloud.ch>; Thu, 19
Feb 2015 14:22:05 +0100 (CET)
Received: from exchange.internal.local ([fe80::7598:91fd:6be7:2967]) by
exchange.internal.local ([fe80::7598:91fd:6be7:2967%11]) with mapi id
14.03.0224.002; Thu, 19 Feb 2015 14:22:04 +0100>

 

Wenn man will, dass diese Information verschleiert wird, dann kann man dies via Exchange Shell unterbinden.

<Get-SendConnector “Send-Connector Name” | Remove-ADPermission -AccessRight ExtendedRight -ExtendedRights ms-Exch-Send-Headers-Routing -user “NT AUTHORITY\Anonymous Logon”>

ACHTUNG, bei einem deutschsprachigem Exchange heisst es: <NT-AUTORITÄT\ANONYMOUS-ANMELDUNG>

Der Header sieht danach so aus:

<Received: from mailout.in-the-cloud.ch (18.18.18.18) by vex10.itc.local
(192.168.10.19) with Microsoft SMTP Server id 14.2.347.0; Thu, 19 Feb 2015
14:19:50 +0100
Received: from mail.external.ch (mail.external.ch [81.81.81.81]) by
mailout.in-the-cloud.ch with ESMTP id tdORrIH8XGrJEANV for <me@in-the-cloud.ch>; Thu, 19
Feb 2015 14:22:05 +0100 (CET)>

Leave a Comment more...

Blogroll

A few highly recommended websites...