Exchange Server Share

May 21, 2014

Sticky Post : Exchange Powershell Tip Of The Day

Filed under: PowerShell,Tips — Amit Tank @ 4:29 pm
Tags: , , ,

Exchange Powershell Tip #09

How to find who has Full Mailbox access and/or Send As permission on various mailboxes in your environment?

Or

How to get the list of mailboxes on which someone has Full Mailbox access and/or Send As permission ?

Here is the cmdlet to find who has Full Mailbox access on one more more mailboxes in your environment and export the result to a CSV file.

Get-Mailbox -ResultSize Unlimited | Get-MailboxPermission | Where {$_.user -notlike “NT AUTHORITY\SELF” -and $_.IsInherited -eq $false} | Select Identity,User,@{Name=’Access Rights’;Expression={[String]::join(‘, ‘, $_.AccessRights)}} | Export-Csv MailboxAccess.csv -NoTypeInformation

Sample output: (without exporting to CSV)

ExShellTip9-MailboxAccess

Here is the cmdlet to find who has Send As permission on one or more mailboxes in your environment and export the result to a CSV file.

Get-Mailbox -ResultSize Unlimited | Get-ADPermission | Where {$_.user -notlike “NT AUTHORITY\SELF” -and $_.IsInherited -eq $false -and $_.ExtendedRights -like “Send-As”} | Select Identity,User,@{Name=’Access Rights’;Expression={[String]$_.ExtendedRights}} | Export-Csv MailboxAccess.csv -NoTypeInformation

Sample output: (without exporting to CSV)

ExShellTip9-Send-As

Now main question how to find Full Mailbox Access and Send As permission both together, you can run both of above cmdlets with minor modification in a one liner to get this accomplished.

Get-Mailbox -ResultSize Unlimited | %{Get-MailboxPermission $_.Name | Where {$_.user -notlike “NT AUTHORITY\SELF” -and $_.IsInherited -eq $false} | Select Identity,User,@{Name=’Access Rights’;Expression={[string]::join(‘, ‘, $_.AccessRights)}} | Export-Csv MailboxAccess.csv -NoTypeInformation -Append; Get-ADPermission $_.Name | Where {$_.user -notlike “NT AUTHORITY\SELF” -and $_.IsInherited -eq $false -and $_.ExtendedRights -like “Send-As”} | Select Identity,User,@{Name=’Access Rights’;Expression={[String]$_.ExtendedRights}} | Export-Csv MailboxAccess.csv -NoTypeInformation -Append }

Sample output: (without exporting to CSV)

ExShellTip9-FMA-SA

Here is the output file that this one liner cmdlet generates…

ExShellTip9-XLS

==>Note: This post is getting updated daily, get Old Exchange Powershell Tips from the Archive Here<==

July 14, 2014

Exchange 2013 – Setup Error: A Receive connector must have a unique combination of a local IP address & port bindings and remote IP address ranges

avatarYou may get an error while Exchange setup checks Receive Connectors for local IP address/port bindings and remote IP address ranges for the server where you are installing Cumulative Update. This error would come up at “Mailbox Role: Transport Service” step of setup/update process. Here is the detailed error message.

 Error:

Error:
The following error was generated when "$error.Clear();
 $connectors = Get-ReceiveConnector -Server $RoleFqdnOrName;
 foreach($connector in $connectors) { if($connector.MaxLocalHopCount -gt 1) { Set-ReceiveConnector -Identity $connector.Identity -MaxLocalHopCount 5 } };
 " was run: "Microsoft.Exchange.Management.SystemConfigurationTasks.ConnectorMappingConflictException: The values that you specified for the Bindings and RemoteIPRanges parameters conflict with the settings on Receive connector "EX2013\Incoming from Internet - Dummy". A Receive connector must have a unique combination of a local IP address & port bindings and remote IP address ranges. Change at least one of these values.
 at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
 at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)
 at Microsoft.Exchange.Management.SystemConfigurationTasks.SetReceiveConnector.InternalValidate()
 at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()
 at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

Error:
The following error was generated when "$error.Clear();
 $connectors = Get-ReceiveConnector -Server $RoleFqdnOrName;
 foreach($connector in $connectors) { if($connector.MaxLocalHopCount -gt 1) { Set-ReceiveConnector -Identity $connector.Identity -MaxLocalHopCount 5 } };
 " was run: "Microsoft.Exchange.Management.SystemConfigurationTasks.ConnectorMappingConflictException: The values that you specified for the Bindings and RemoteIPRanges parameters conflict with the settings on Receive connector "EX2013\Default Frontend EX2013". A Receive connector must have a unique combination of a local IP address & port bindings and remote IP address ranges. Change at least one of these values.
 at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
 at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)
 at Microsoft.Exchange.Management.SystemConfigurationTasks.SetReceiveConnector.InternalValidate()
 at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()
 at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

RemoteIPError1

Explanation:

You can not have same values of Local IP Address:Port bindings and Remote IP Address Range both on two Receive Connectors so essentially you have to change anyone of these on one of the Receive Connector.

Now problem is you won't be able to open Exchange Admin Center (EAC) or Exchange Management Shell (EMS) to modify Local IP Address:Port Bindings or Remote IP Address Ranges on one of these receive connectors.

Solution:

Exchange saves configuration information in Configuration Partition of Active Directory so you can use any AD Editor like ADSIEdit.msc or ADExplorer.exe to modify this value. (Be careful while using these raw AD Editors!)

  • Open ADSIEDIT.MSC.
  • Navigate to the following location: CN=SMTP Receive Connectors,CN=Protocols,CN=<ExServerName>,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=<ExOrg Name>,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=<DomainName>,CN=Com
  • Right-click one of the Receive Connector which is showing up in error and then click Properties. (It is recommend to modify the Receive Connector created manually and not the "Default Frontend ServerName" connector.)

Now change the value of either msExchSmtpReceiveRemoteIPRanges or msExchSmtpReceiveBindings following below setps.

  • Locate the msExchSmtpReceiveRemoteIPRanges attribute. This attribute stores values for Remote Network Settings that you see in EAC.
  • Remove the values here and add some unique IP address or IP Range back.

RemoteIPError2

 

OR

  • Locate the msExchSmtpReceiveBindings attribute. This attribute stores value of Network adapter bindings that you see in EAC.
  • Remove the values here and add them back with different Port instead of 25.

RemoteIPError3

Personally I would prefer to change msExchSmtpReceiveRemoteIPRanges and give some unique IP or IP range.

After this Exchange 2013 Cumulative Update installation goes fine!

June 12, 2014

Microsoft Exchange Server 2013 Help Files

avatarMicrosoft has released “May 2014″ version of Exchange 2013 Help Files for On-premises and Hybrid Deployments. These help files include information up to date until Cumulative Update 5 . These are offline copy of Exchange 2013 TechNet content and very useful when you want to refer something in your lab environment and don’t have internet access.

Version                   : May 2014

Release Date           : 6/6/2014

Link to Download      : http://www.microsoft.com/en-us/download/details.aspx?id=35395

June 2, 2014

Exchange Powershell Tip #09

Exchange Powershell Tip #09

How to find who has Full Mailbox access and/or Send As permission on various mailboxes in your environment?

Or

How to get the list of mailboxes on which someone has Full Mailbox access and/or Send As permission ?

(more…)

June 1, 2014

Exchange Powershell Tip #08

Exchange Powershell Tip #08

How to take LDAP dump of an Exchang object like Exchange Server, Mailbox Database, Public Folder Database, Mailbox, OWA Virtual Directory, Database Availability Group or Public Folder Hierarchies object? (more…)

May 28, 2014

Guided walkthroughs for Exchange and Office 365

Here are some of the helpful guided walkthroughs for Microsoft Exchange Server, Office 365 and for Lync Server, SharePoint Server too…

Exchange Server

   
Outlook Connectivity Guided Walkthrough - Troubleshooter http://aka.ms/outlookgwt
Troubleshoot ActiveSync with Exchange Server http://aka.ms/easgwt
Exchange Server 2010 Datacenter Switchover http://aka.ms/2010DatacenterSwitchovergwt
Troubleshoot Public Folder Replication for Exchange Server 2003 http://aka.ms/2003pfgwt

Exchange Online / Office 365

   
Mail Flow Guided Walkthrough for Office 365 - Troubleshooter http://aka.ms/FixEmail
Office 365 Outlook Connectivity Guided Walkthrough - Troubleshooter http://aka.ms/outlookconnectivity
Setting up a mailbox that multiple users can access and use http://aka.ms/sharedgwt
Sending email from another person’s mailbox or from a group in Office 365 Guided Walkthrough http://aka.ms/sendasgwt
Accessing other people’s mailboxes in Office 365 Guided Walkthrough http://aka.ms/mailboxaccessgwt
Creating and managing resource mailboxes (conference rooms/equipment) in Office 365 http://aka.ms/resourcegwt
Sharing calendar and contacts in Office 365 Guided Walkthrough http://aka.ms/sharedfoldersgwt
Hybrid Migration Troubleshooter http://aka.ms/hybridmigrationgwt
Hybrid Environment Free/busy Troubleshooter http://aka.ms/o365freebusygwt

Lync Online

   
Set up Lync Online external communications http://aka.ms/lyncgwt1
Troubleshooting Lync Online sign-in for admins http://aka.ms/LyncSignIn
Troubleshooting Lync Online sign-in for users http://aka.ms/lyncsigninusers

SharePoint Online

   
OneDrive for Business – Initial Sync Setup Guide http://aka.ms/odbsyncsetup
OneDrive for Business Sync App (formerly SkyDrive Pro) – Sync Issues Guide http://aka.ms/odbsyncissues
Next Page »

The Rubric Theme. Create a free website or blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 30 other followers