Browse by Tags

All Tags » PowerShell (RSS)

Reporting on primary and secondary SMTP addresses on Exchange objects

Most companies have a set of primary Internet domains (Exchange accepted domains) that they use to assign to users. However, a constant is that most companies also assign a secondary email address that has a domain which is identical for all of their...
Posted by michael | with no comments

Determining the Exchange Version - without using Get-ExchangeServer - Update 2013

This is an update of my post Determining the Exchange Version - without using Get-ExchangeServer, from April 25, 2012. Since then, Exchange 2013 has been released! I've had several requests from people who are not PowerShell scripters to update that...
Posted by michael | with no comments

PowerShell Quick Script: Finding the Exchange Schema Version

Every major Exchange release comes with updates to the Active Directory schema. In this case, "major release" means new major version (at RTM), every service pack, and (probably) every Cumulative Update with the new servicing model introduced...
Posted by michael | with no comments

PowerShell Quick Script: Invoke-Splat

One of the features added to PowerShell v2 (and of course continued with PowerShell v3) is splatting. Without going into extreme detail (there are plenty of other blogs and books that do that), splatting allows you to pass parameters to a PowerShell cmdlet...
Posted by michael | with no comments
Filed under: ,

Windows Management Framework 3.0 / PowerShell 3.0 and Exchange

In the last few days, Windows Management Framework 3.0 (WMF 3.0) has begun appearing in Microsoft Update (MU), Windows Update (WU), Windows Software Update Services (WSUS), and on Configuration Manager Software Update Points. This basically means that...

Microsoft Security Advisory 2737111 - Exchange 2007/2010/2013

Well, in case you haven’t seen it, an Exchange Security advisory was released today. “Vulnerabilities in Microsoft Exchange and FAST Search Server 2010 for SharePoint Parsing Could Allow Remote Code Execution” http://technet.microsoft.com/en-us/security...
Posted by michael | with no comments

Bit Shifting in PowerShell, Redux

I do bit shifting in PowerShell all the time. It's quite necessary when you are working with option values in Active Directory, WMI, and various Win32 interfaces. .NET tends to use enumerations, which are tad easier to deal with in PowerShell. I had...
Posted by michael | with no comments
Filed under: ,

Processing Large and Embedded Groups in PowerShell

I'm working with a client that has - over an extended period of time - accumulated thousands of security groups, most of which are mail enabled for use by both Exchange and for setting rights on various objects. Becasue they use embedded groups (that...

How to Make Your PowerShell Session into an Exchange Management Shell

In my last blog post, Determining the Exchange Version Without Using Get-ExchangeServer ,I showed how to read the Exchange version from the registry. Shortly after posting that, the questions began to roll in about "how to make my PowerShell session...
Posted by michael | with no comments
Filed under: , ,

Determining the Exchange Version - without using Get-ExchangeServer

If you write lots of Exchange scripts (as I do), and have several different versions of Exchange on which you need to run those scripts (as I do); you soon see the need for being able to determine what version of Exchange a particular server is running...

Finding Duplicate IP Addresses and Duplicate Names in a DNS Zone

One of the traditional issues associated with cleaning up an Active Directory Directory Services (AD DS) domain in DNS is to ensure that duplicate names in DNS are removed (this is typically an issue caused by not having DNS Scavenging enabled, or by...

Enumerating networks and building routes with PowerShell

I've been working with a company that is in the process of setting up a remote datacenter for disaster recovery. They brought me in to help design their Exchange cross-site resilience, and I've been helping them with a few other things too. Primary...

Enumerating IP Addresses on Network Adapters using PowerShell

Regardless of whether a server is for Exchange, for SQL, or for any other use; a key component of the server's configuration is the set of IP addresses assigned to it. Many organizations apply all addresses (even server addresses) using DHCP. For...

Sending an email to users whose password is about to expire, a PowerShell Rewrite

In September of 2005, I wrote a blog post named " Sending an e-mail to users whose password is about to expire ". Written in VBScript, it was one of my most popular blog posts of all time. I still have clients of mine that use it and I get occaisional...

Creating Explicit Credentials in PowerShell for WMI, Exchange, Lync, Remoting, etc.

When creating PowerShell cmdlets for any Microsoft technology - WMI, Exchange, Lync, etc. - it is common to need to provide credentials that are different from the default credentials. This can be even more important when you are using PowerShell remoting...
Posted by michael | with no comments
Filed under: , ,
More Posts Next page »