<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
>

<channel>
	<title>DefinIT</title>
	<atom:link href="http://www.definit.co.uk/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.definit.co.uk</link>
	<description>Because if IT were easy, everyone would do it...</description>
	<lastBuildDate>Mon, 20 May 2013 08:15:01 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
		<item>
		<title>Why secure your vSphere environment with valid SSL certificates?</title>
		<link>http://www.definit.co.uk/2013/05/why-secure-your-vsphere-environment-with-valid-ssl-certificates/</link>
		<comments>http://www.definit.co.uk/2013/05/why-secure-your-vsphere-environment-with-valid-ssl-certificates/#comments</comments>
		<pubDate>Tue, 14 May 2013 15:39:44 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1676</guid>
		<description><![CDATA[It's no secret that installing certificates from an internal CA is a pain in the...vCenter, but having just gone through the process of updating 3 vCenter installations with the 5-7 certificates required for each server I was asked "just why is it we need to do this again?" Why does it require multiple certificates for my vCenter [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1676" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>It's no secret that installing certificates from an internal CA is a pain in the...vCenter, but having just gone through the process of updating 3 vCenter installations with the 5-7 certificates required for each server I was asked "just why is it we need to do this again?"</p>
<h3>Why does it require multiple certificates for my vCenter server?</h3>
<p>In short, each service requires a certificate because it could feasibly be on a server (or servers) of it's own - take this hypothetical design - each role is hosted on it's own VM, and there are 7 certificates required - SSO, Inventory Service, vCenter Server, Orchestrator, Web Client, Log Browser and Update Manager. If you install all these services on one server you still have to create certificates for those individual services.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/vCenterSeperates.png"><img class="size-medium wp-image-1678 alignnone colorbox-1676" alt="Certs - vCenterSeperate" src="http://www.definit.co.uk/wp-content/uploads/2013/05/vCenterSeperates-300x84.png" width="300" height="84" /></a><span id="more-1676"></span></p>
<h3>Why install valid certificates at all - it "works" with the self-signed ones!</h3>
<p>Well yes, it does work - but so does entering a blank password. That doesn't mean it's a good idea! This goes back to a fundamental understanding of what SSL does - it provides a method to secure communications between a server and a client, whether that client is another server, the same server or your vSphere Client on your laptop. In effect, the certificate says "this is who I am, this is who vouches for my identity", the Certificate Authority acts as the 3rd party that vouches for the server's identity. If you use a self-signed certificate you have a situation where "this is who I am, and I say so"!</p>
<p>With a self-signed certificate you can get into the bad habit of just clicking "Ignore" on a certificate warning:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-14-16_14_56-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1679 colorbox-1676" alt="Certificate Warning" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-14-16_14_56-uk01pvic001.aceins.com-vSphere-Client-300x161.png" width="300" height="161" /></a></p>
<p>I think the key line in this warning is "Secure communication with &lt;server&gt; cannot be guaranteed".</p>
<h3>OK, so it's a "best practice" - but isn't the risk low? Is it worth the effort?</h3>
<p>At the end of the day it's your call - but it's a best practice for a reason. To me security is always about mitigating risks and you have to ask yourself whether a few hours to secure your hosts is worth it. In my opinion, a good strong unique password will cost you more time over a year than installing certificates - but you wouldn't dream of using a blank password would you?!  There are tools out there like the VMware Certificate Automation Tool, and plenty of <a href="http://www.definit.co.uk/2013/04/using-the-vmware-ssl-certificate-automation-tool-with-a-microsoft-certificate-authority/">helpful walk-through's </a>available that make it a lot less painful now.</p>
<p>There are also strong hints from VMware that tools like PowerCLI will be less lenient by default in future releases, which can only be a good thing.</p>
<p>Isn't it time you considered securing your Virtual Environment?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/05/why-secure-your-vsphere-environment-with-valid-ssl-certificates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Updating ESXi Fibre Channel HBA Drivers via VMware Update Manager</title>
		<link>http://www.definit.co.uk/2013/05/updating-esxi-fibre-channel-hba-drivers-via-vmware-update-manager/</link>
		<comments>http://www.definit.co.uk/2013/05/updating-esxi-fibre-channel-hba-drivers-via-vmware-update-manager/#comments</comments>
		<pubDate>Tue, 07 May 2013 14:41:43 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[Update Manager]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1653</guid>
		<description><![CDATA[A problem reared it's head over the weekend with one of our hosts' Fibre Channel HBAs negotiating it's way down to 2GB, and consequently introducing massive latency for the LUNs behind it. Analysis showed that the drivers for the HBA were over a year out of date so the suggested fix from VMware was to [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware2.jpg"><img class="alignright size-full wp-image-607 colorbox-1653" alt="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware2.jpg" width="202" height="66" /></a>A problem reared it's head over the weekend with one of our hosts' Fibre Channel HBAs negotiating it's way down to 2GB, and consequently introducing massive latency for the LUNs behind it. Analysis showed that the drivers for the HBA were over a year out of date so the suggested fix from VMware was to update the drivers. This is fine to do manually for a few hosts, but would be a real pain for the 300+ hosts in the environment I manage.</p>
<p>Enter VMware Update Manager - we already use it to patch and upgrade our hosts, but it can also apply host extensions - driver packages as well.<span id="more-1653"></span></p>
<h1>Identify the HBA and driver package required</h1>
<p>First, we need to determine the exact hardware ID of the HBA and then get the latest supported driver package from the VMware Hardware Compatibility List. To do this</p>
<p>Log on to the host via SSH and issue an "<em>esxcfg-scsidevs -a</em>" to list installed SCSI devices. You'll see output similar to below - the currently loaded driver is the second column, highlighted in red.</p>
<blockquote><p>vmhba1  <strong><span style="color: #ff0000;">qla2xxx          </span> </strong>link-up   fc.20000024ff25da1c:21000024ff25da1c    (0:2              1:0.0) QLogic Corp ISP2532-based 8Gb Fibre Channel to PCI Express HBA</p></blockquote>
<p>Use "<em>vmkload_mod -s <strong><span style="color: #ff0000;">qla2xxx </span></strong>| grep Version</em>" to locate the exact version of the driver loaded and you'll see output similar to this:</p>
<blockquote><p>Version: Version <strong><span style="color: #ff0000;">911.k1.1-26vmw</span></strong>, Build: 472560, Interface: 9.2 Built on: Feb  8 2012</p></blockquote>
<p>Now to get the exact device code to look the drivers up on the HCL, use "<em>vmkchdev -l | grep vmhba1</em>" - this will list the Vendor,  Device, Sub-vendor and Sub-device IDs:</p>
<blockquote><p>00:15:00.0 <strong><span style="color: #ff0000;">1077</span></strong>:<strong><span style="color: #ff0000;">2532</span> <span style="color: #ff0000;">1077</span></strong>:<strong><span style="color: #ff0000;">0166</span></strong> vmkernel vmhba1</p></blockquote>
<p>Plug those device details along with the version of ESXi you're running into the HCL and you should get the correct device identification - the host I'm using is running ESXi 5.1 so I can see that qla2xxx version 934.5.10.0-1vmw is the correct driver. Once you've identified the correct package, download and unzip it.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_23_39-VMware-Compatibility-Guide_-I_O-Device-Search.png"><img class="alignnone size-medium wp-image-1655 colorbox-1653" alt="Find the device in the HCL" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_23_39-VMware-Compatibility-Guide_-I_O-Device-Search-300x218.png" width="300" height="218" /></a></p>
<h1>Importing the package into VMware Update Manager</h1>
<p>Unzip the package you've downloaded and locate the "offline_bundle.zip" - in my case this was a "qla2xxx-934.5.10.0-offline_bundle-1031464.zip"</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_11-qla2xxx-934.5.10.0-1031464.png"><img class="alignnone size-medium wp-image-1656 colorbox-1653" alt="2013-05-07 12_34_11-qla2xxx-934.5.10.0-1031464" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_11-qla2xxx-934.5.10.0-1031464-300x61.png" width="300" height="61" /></a></p>
<p>Open the Update Manager administration view from your vSphere client and go to the Patch Repository tab, then click "Import Patches"</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_21_17-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1657 colorbox-1653" alt="VUM Import Patches" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_21_17-uk01pvic001.aceins.com-vSphere-Client-300x75.png" width="300" height="75" /></a></p>
<p>Import the offline bundle and confirm the details of the import:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_27-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1659 colorbox-1653" alt="VUM Import Offline Bundle Zip" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_27-uk01pvic001.aceins.com-vSphere-Client-300x211.png" width="300" height="211" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_40-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1658 colorbox-1653" alt="VUM Import Offline Bundle" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-12_34_40-uk01pvic001.aceins.com-vSphere-Client-300x164.png" width="300" height="164" /></a></p>
<h1>Create and apply the baseline</h1>
<p>Once the import is completed, search for the package using the Patch Repository page, and then click "Add to baseline" if you want to add it to an existing baseline, or head over to "Baselines and Groups" if you want to create a new baseline. I need to apply this to specific test hosts first, so I don't want to add to my existing baselines.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_28_00-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1660 colorbox-1653" alt="VUM Add to Baseline" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_28_00-uk01pvic001.aceins.com-vSphere-Client-300x40.png" width="300" height="40" /></a></p>
<p>From the Baselines and Groups tab, click "Create..." and then name your baseline - it's good practice to include a decent description too. Make sure you select "Host Extension" as the baseline type.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_31_44-uk01pvic001.aceins.com-vSphere-Client1.png"><img class="alignnone size-medium wp-image-1663 colorbox-1653" alt="VUM Create Extension Baseline" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_31_44-uk01pvic001.aceins.com-vSphere-Client1-300x261.png" width="300" height="261" /></a></p>
<p>Search for and add the patch you've just uploaded, and finish the wizard.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_35_11-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1662 colorbox-1653" alt="VUM Create Extension Baseline" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_35_11-uk01pvic001.aceins.com-vSphere-Client-300x228.png" width="300" height="228" /></a></p>
<p>You can now scan, stage and remediate with the baseline as you would any other.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_39_45-uk01pvic001.aceins.com-vSphere-Client.png"><img class="alignnone size-medium wp-image-1664 colorbox-1653" alt="VUM - Remediate" src="http://www.definit.co.uk/wp-content/uploads/2013/05/2013-05-07-14_39_45-uk01pvic001.aceins.com-vSphere-Client-300x147.png" width="300" height="147" /></a></p>
<p>Hope this helps!</p>
<h2>Sources</h2>
<ul>
<li><a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1027206" target="_blank">Determining Network/Storage firmware and driver version in ESXi/ESX 4.x and 5.x (1027206)</a></li>
<li><a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2005205" target="_blank">Installing async drivers on ESXi 5.x (2005205)</a></li>
<li><a href="http://www.vmware.com/resources/compatibility/search.php?deviceCategory=io&amp;productid=12630&amp;deviceCategory=io&amp;releases=171&amp;VID=1077&amp;DID=2532&amp;SVID=1077&amp;SSID=0166&amp;page=1&amp;display_interval=10&amp;sortColumn=Partner&amp;sortOrder=Asc" target="_blank">VMware Compatibility Guide</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/05/updating-esxi-fibre-channel-hba-drivers-via-vmware-update-manager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Cloud Credibility</title>
		<link>http://www.definit.co.uk/2013/04/cloud-credibility/</link>
		<comments>http://www.definit.co.uk/2013/04/cloud-credibility/#comments</comments>
		<pubDate>Mon, 29 Apr 2013 22:16:14 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Cloud Credibility]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1649</guid>
		<description><![CDATA[So then! of late my attention has been drawn to Cloud Credibility which is a fantastic place to help validate your own and others cloud expertise by completing various tasks. Among other things it encourages you to read up on white papers, carry out lab work (Hands-on-labs), watch training and informational materials and thus rewarding [...]]]></description>
				<content:encoded><![CDATA[<p>So then! of late my attention has been drawn to <a title="Cloud Credibility" href="https://www.cloudcredibility.com">Cloud Credibility</a> which is a fantastic place to help validate your own and others cloud expertise by completing various tasks.</p>
<p>Among other things it encourages you to read up on white papers, carry out lab work (<a title="Hands on Labs" href="https://www.vmware.com/landing_pages/hands-on-labs-beta.html">Hands-on-labs</a>), watch training and informational materials and thus rewarding you with points for you and your team. What is also great is points really do mean prizes!</p>
<p>I have recently become apart of a Team (Team - <a title="Team Definit" href="https://www.cloudcredibility.com/teams/2105">DefinIT</a>) with the following well known Virtualisation bloggers and vExperts.</p>
<p>Barry Coombs - <a title="Virtualised Reality" href="http://virtualisedreality.com/">Virtualised Reality</a></p>
<p>Michael Poore - <a title="vSpecialist" href="http://www.vspecialist.co.uk/">vSpecialist</a></p>
<p>Sam McGeown - <a title="Definit" href="http://www.definit.co.uk/">DefinIT</a></p>
<p>This presents another great aspect to Cloud Credibility as it encourages team work with tasks and social/technical interactions.</p>
<p>If you haven't signed up I would strongly recommend you do so!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/04/cloud-credibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Using the VMware SSL Certificate Automation Tool with a Microsoft Certificate Authority</title>
		<link>http://www.definit.co.uk/2013/04/using-the-vmware-ssl-certificate-automation-tool-with-a-microsoft-certificate-authority/</link>
		<comments>http://www.definit.co.uk/2013/04/using-the-vmware-ssl-certificate-automation-tool-with-a-microsoft-certificate-authority/#comments</comments>
		<pubDate>Fri, 05 Apr 2013 14:38:57 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Inventory Service]]></category>
		<category><![CDATA[Linked Mode]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Single Sign On]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[vSphere Web Client]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1609</guid>
		<description><![CDATA[Updating vCenter Server certificates has always been a pain - it has only got worse with the sheer number of services that are running under vSphere 5.1 - each service requiring a unique certificate and to be installed in many complex steps. Fortunately , with the release of the SSL Certificate Automation Tool, VMware have gone some way to [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-609 colorbox-1609" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" />Updating vCenter Server certificates has always been a pain - it has only got worse with the sheer number of services that are running under vSphere 5.1 - each service requiring a unique certificate and to be installed in many complex steps.</p>
<p>Fortunately , with the release of the SSL Certificate Automation Tool, VMware have gone some way to reducing the headache.<span id="more-1609"></span></p>
<h3>Gather all the components you need</h3>
<p>OpenSSL installer: <a href="http://slproweb.com/products/Win32OpenSSL.html">http://slproweb.com/products/Win32OpenSSL.html</a> (I downloaded "Win32 OpenSSL v0.9.8y Light", even though it's a 64-bit server)</p>
<p>Microsoft Visual C++ 2008 Redistributable Package (x86): <a href="http://www.microsoft.com/en-us/download/details.aspx?id=29">http://www.microsoft.com/en-us/download/details.aspx?id=29</a></p>
<p>VMware Certificate Automation Tool: <a href="https://my.vmware.com/group/vmware/get-download?downloadGroup=SSL-TOOL-10">https://my.vmware.com/group/vmware/get-download?downloadGroup=SSL-TOOL-10</a> (My VMware login required)</p>
<p>Install MS Visual C++ 2008 (pre-requisite for OpenSSL) Install OpenSSL - keep the defaults except for installing to c:\OpenSSL-Win32\, and install the binaries in the OpenSSL folder, not the System32.</p>
<h3>Download the CA certificate chain from your CA</h3>
<p>Navigate to the home page of the certificate server and click on Download a CA certificate, certificate chain or CRL.</p>
<p>Click the Base 64 option.</p>
<p>Click the Download CA Certificate chain link.</p>
<p>Save the certificate chain as cachain.p7b. in the c:\certs folder.</p>
<p>Double-click on the cachain.p7b file and navigate to C:\certs\cachain.p7b &gt; Certificates.</p>
<p>Right-click on the each certificate listed and select All Actions &gt; Export.</p>
<p>Click Next.</p>
<p>Select Base-64 encoded X.509 (.CER), and then click Next.</p>
<p>Save the export at C:\cert\root64.cer and click Next</p>
<p>For Subordinate Certificate Authorities, export as root64-1.cer, root64-2.cer etc. You need the whole chain.</p>
<p>My c:\cert folder now looks like this (with one subordinate CA):</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-11-30-41.png"><img class="colorbox-1609"  alt="05-04-2013 11-30-41" src="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-11-30-41-300x124.png" width="300" height="124" /></a></p>
<h3>Generating the SSL Certificates</h3>
<p>This is a slightly modified version of <a href="http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/">my original script to generate SSL certs</a>, the main difference being that we don't want to generate pfx files and we do want to create a chain.pem file. You need to create the certificate template just the same so I'll assume you can do that and come back!</p>
<p>Update the variables at the head of this script to reflect your environment and save it as Generate-VMCerts.ps1 in the c:\certs folder</p>
<p>Download it here: <a href="http://www.definit.co.uk/wp-content/uploads/2013/04/Generate-VMCerts.ps1_.txt">Generate-VMCerts.ps1</a></p>
<pre class="brush: powershell; gutter: true"># The &quot;short&quot; name of the Virtual Center Server
$vC_NETBIOS = &quot;DefinIT-VC01&quot;
# The DNS name of the Virtual Center Server
$vC_FQDN = &quot;DefinIT-VC01.definit.local&quot;
# The IP address of the Virtual Center Server
$vC_IP = &quot;192.168.1.150&quot;
# The Certificate Authority Name
$CA_Name = &quot;DefinIT-CA\DefinIT&quot;
# The SHORT name of the template you defined earlier
$CA_Template = &quot;CertificateTemplate:VirtualCenterWebServer&quot;
# The CA certificate(s) you exported earlier, start with the issuing CA back up the chain to the root CA.
$CA_Certificates = @(&quot;c:\certs\root64-1.cer&quot;,&quot;c:\certs\root64.cer&quot;)
# Administrative email to use in the certificate
$AdminEmail = &lt;a href=&quot;mailto:admin@definit.co.uk&quot;&gt;admin@definit.co.uk&lt;/a&gt;
# A working directory under which the certificates and folders will be created
$WorkingDir = &quot;c:\certs\&quot;
# An array of the services we will generate the certificates for
$Services = @(&quot;vCenterServer&quot;,&quot;vCenterInventoryService&quot;,&quot;vCenterSSO&quot;,&quot;VMwareUpdateManager&quot;,&quot;vCenterWebClient&quot;,&quot;vCenterLogBrowser&quot;,&quot;VMwareOrchestrator&quot;)
# The path to the openssl executable
$OpenSSLExe =  &quot;c:\OpenSSL-Win32\bin\openssl.exe&quot;

if (!(Test-Path $OpenSSLExe)) {throw &quot;$OpenSSLExe required&quot;}
New-Alias -Name OpenSSL $OpenSSLExe

$RequestTemplate = &quot;[ req ]
default_bits = 2048
default_keyfile = rui.key
distinguished_name = req_distinguished_name
encrypt_key = no
prompt = no
string_mask = nombstr
req_extensions = v3_req

[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = DNS:ShortName,DNS:FQDN, DNS:IPADDRESS

[ req_distinguished_name ]
countryName = UK
stateOrProvinceName = West Sussex
localityName = Horsham
0.organizationName = DefinIT
organizationalUnitName = ORGREPLACE
commonName = FQDN
emailAddress = ADMINEMAIL

[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true

[ req_attributes ]&quot;

foreach ($CA_Certificate in $CA_Certificates) {
	$CertificateChain += Get-Content $CA_Certificate
}

if(!(Test-Path $WorkingDir)) {
	New-Item $WorkingDir -Type Directory
}
Set-Location $WorkingDir
ForEach ($Service in $Services) {
	if(!(Test-Path $Service)) {
		New-Item $Service -Type Directory
	}
	Set-Location $Service
	write-debug &quot;$Service: Writing Template&quot;
	$Out = ((((($RequestTemplate -replace &quot;FQDN&quot;, $vC_FQDN) -replace &quot;ShortName&quot;, $vC_NETBIOS) -replace &quot;ORGREPLACE&quot;, $Service) -replace &quot;ADMINEMAIL&quot;, $AdminEmail) -replace &quot;IPADDRESS&quot;, $vC_IP) | Out-File &quot;$WorkingDir\$Service\$Service.cfg&quot; -Encoding Default -Force
	write-debug &quot;$Service: Generating CSR&quot;
	OpenSSL req -new -nodes -out &quot;$WorkingDir\$Service\$Service.csr&quot; -keyout &quot;$WorkingDir\$Service\rui-orig.key&quot; -config &quot;$WorkingDir\$Service\$Service.cfg&quot;
	write-debug &quot;$Service: Converting Private Key&quot;
	OpenSSL rsa -in &quot;$WorkingDir\$Service\rui-orig.key&quot; -out &quot;$WorkingDir\$Service\rui.key&quot;
	write-debug &quot;$Service: Submitting to $CA_Name&quot;
	certreq -submit -attrib $CA_Template -config &quot;$CA_Name&quot; &quot;$Service.csr&quot; &quot;$WorkingDir\$Service\rui.crt&quot;
	write-debug &quot;$Service: Generating chain.pem&quot;
	Get-Content rui.crt | Add-Content chain.pem
	Add-Content chain.pem $CertificateChain
	Set-Location $WorkingDir
}</pre>
<p>Now we can run the script to generate the required certificates, open a PowerShell console, navigate to c:\certs and run Generate-VMCerts.ps1. This should run through without any errors - if you have errors make sure you fix them before moving on!</p>
<p>My folder now looks like this:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-11-54-45.png"><img class="alignnone size-medium wp-image-1610 colorbox-1609" alt="05-04-2013 11-54-45" src="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-11-54-45-300x187.png" width="300" height="187" /></a></p>
<p>And under each service folder, there are the following:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-12-07-22.png"><img class="alignnone size-medium wp-image-1613 colorbox-1609" alt="05-04-2013 12-07-22" src="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-12-07-22-300x126.png" width="300" height="126" /></a></p>
<h3>Running the SSL Certificate Automation Tool</h3>
<p>Now we're ready to follow the steps on Deploying and using the SSL Certificate Automation Tool (2041600). At this point, I took a snapshot of my virtual vCenter server! I've messed this up before - trust me, you want a fall back point! Since this vCenter is a simple install - all services on one box - it should be fairly simple.</p>
<p>I unzipped the Certificate Automation Tool under the c:\certs folder.</p>
<p>The first step is to edit the ssl-environment.bat file and carefully add the paths to the generated keys (the chain.pem and rui.key files are the ones you need). There are also a few other options like what type of SSO you are using, and some advanced optional parameters for load balancers etc. It's important to add the user ID for the SSO admin and the Virtual Center admin.</p>
<p>Run the ssl-environment.bat file from the command prompt to set up the variables the tool needs - there is no output from running this file.</p>
<p>I then ran ssl-updater.bat, selected option 1 to plan the steps. I am updating everything except update manager on this server, so I enter 1,2,3,4,5,6 and get a detailed plan of how to update the certificates. Copy and paste this into a new text file and follow it closely! Enter 9 to go back to the main menu.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-12-52-12.png"><img class="alignnone size-medium wp-image-1614 colorbox-1609" alt="05-04-2013 12-52-12" src="http://www.definit.co.uk/wp-content/uploads/2013/04/05-04-2013-12-52-12-300x254.png" width="300" height="254" /></a></p>
<p>Now go through each step very carefully, there's a lot of text with very similar names, check for the successful completion of each task before moving on to the next. Make sure you have handy credentials for a vCenter admin, the SSO admin and the Virtual Center database. There were 16 very similar steps on my plan, I won't bore you with a detailed explanation of all of them! The basic principle is to take the each step and run the correct process - eg for:</p>
<blockquote><p>1. Go to the machine with Single Sign-On installed and - Update the Single Sign-On SSL certificate.</p></blockquote>
<p>I select "2. Update Single Sign-on" and then "1. Update the Single Sign-On SSL Certificate" - you then get prompted for certificate locations, user IDs and passwords needed to perform that task.</p>
<p>I received an error updating the vCenter Server SSL Certificate "Cannot continue with the operation due to errors". I looked in the vc-update-ssl.log file and found the following:</p>
<blockquote><p>Could not reload vCenter SSL Certificates [05/04/2013 - 14:00:02.31]: ""Cannot reload the vCenter Server SSL certificates. The certificate might not be unique."" [05/04/2013 - 14:00:02.32]: Deleting the new certificates and keys... [05/04/2013 - 14:00:02.32]: Restoring the original certificates and keys...         1 file(s) copied.         1 file(s) copied.         1 file(s) copied. [05/04/2013 - 14:00:02.34]: Attempting rollback... Could not reload vCenter SSL Certificates [05/04/2013 - 14:00:03.13]: ""Cannot reload the vCenter Server SSL certificates. The certificate might not be unique.""</p></blockquote>
<p>This is a known issue and is mentioned on the KB for using the tool - "<em>This may be caused by vpxd having multiple service IDs for the Lookup service in the vpxd.cfg file</em>". I looked in the config file and had 3 service IDs sitting there. I found the correct service ID by using:</p>
<pre class="brush: text; gutter: false">C:\Program Files\VMware\Infrastructure\SSOServer\ssolscli&gt;ssolscli.cmd listServices https://:7444/lookupservice/sdk</pre>
<p>The output contains the correct ID and after deleting the 2 spurious entries and restarting, the tool was able to install the vCenter Server SSL Certificate.</p>
<h3>Final word...</h3>
<p>This tool takes much of the complexity out of this job and hopefully goes a step towards helping people secure their vCenter Server installations. If there's one piece of advice for anyone doing this, it's take your time and follow every step precisely! Oh, and don't forget to delete that snapshot once you've verified everything is working OK!</p>
<h3> Update 14/05/2013</h3>
<p>A great procedure for updating vShield Manager Appliance SSL is here: <a href="http://longwhiteclouds.com/2012/03/31/updating-ssl-certificate-in-vshield-manager-made-easy/">http://longwhiteclouds.com/2012/03/31/updating-ssl-certificate-in-vshield-manager-made-easy/</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/04/using-the-vmware-ssl-certificate-automation-tool-with-a-microsoft-certificate-authority/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Host disk write latency errors – troubleshooting &#8211; part 2</title>
		<link>http://www.definit.co.uk/2013/03/host-disk-write-latency-errors-troubleshooting-part-2/</link>
		<comments>http://www.definit.co.uk/2013/03/host-disk-write-latency-errors-troubleshooting-part-2/#comments</comments>
		<pubDate>Fri, 15 Mar 2013 13:23:31 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Dell]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[VLAN]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1584</guid>
		<description><![CDATA[As some of you read previously, I had been experiencing disk latency issues on our SAN and tried many initial methods to troubleshoot and understand the root cause. Due to other more pressing issues this was placed aside until we started to experience VMs being occasionaly restarted by vSphere HA as the lock had been [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="size-full wp-image-609 alignright colorbox-1584" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a><br />
As some of you read previously, I had been experiencing disk latency issues on our SAN and tried many initial methods to troubleshoot and understand the root cause. Due to other more pressing issues this was placed aside until we started to experience VMs being occasionaly restarted by vSphere HA as the lock had been lost on a given VMDK file. (NOT GOOD!!)</p>
<p><strong><span style="color: #008000;"><em>The Environment:-</em></span></strong><br />
<span style="color: #008000;"> <em> 3x vSphere 5.1 Hosts</em></span><br />
<span style="color: #008000;"> <em> 2x 4port Nics 1GBe (allowing 2x iSCSi vmkernel ports per host</em> for redundancy)</span><br />
<span style="color: #008000;"> <em> Dedicated Switching </em><em>(isolated from the LAN) </em>for iSCSi and vMotion (on seperate respective VLANs)</span><br />
<em><span style="color: #008000;">MSA2312i SAN G2 (with 4 Shelves)</span><br />
<span style="color: #008000;"> The iSCSi Multipathing policy was set to Round Robin.</span><br />
<span style="color: #008000;">SIOC is enabled.</span><br />
</em></p>
<p>After a great deal of digging I resolved to contacting VMware support whom pointed me in turn to the SAN as the Host log files had the following..</p>
<pre class="brush: text; gutter: false">&lt;span style=&quot;color: #ff0000;&quot;&gt;2013-02-20T14:35:38.026Z cpu8:51055)ScsiDeviceIO: 2316: Cmd(0x4124401f31c0) 0x1a, CmdSN 0x6796 from world 0 to dev &quot;naa.600508e00000000078c4a59a76937603&quot; failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x24 0x0.
2013-02-20T14:35:38.030Z cpu8:51055)NMP: nmp_ThrottleLogForDevice:2319: Cmd 0x85 (0x4124401f31c0, 91852) to dev &quot;naa.600508e00000000078c4a59a76937603&quot; on path &quot;vmhba1:C1:T0:L0&quot; Failed: H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x20 0x0. Act:NONE 2013-02-20T14:35:38.030Z cpu8:51055)ScsiDeviceIO: 2316: Cmd(0x4124401f31c0) 0x85, CmdSN 0xab from world 91852 to dev &quot;naa.600508e00000000078c4a59a76937603&quot; failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x20 0x0.
2013-02-20T14:35:38.030Z cpu8:51055)ScsiDeviceIO: 2316: Cmd(0x4124401f31c0) 0x4d, CmdSN 0xac from world 91852 to dev &quot;naa.600508e00000000078c4a59a76937603&quot; failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x20 0x0.
2013-02-20T14:35:38.030Z cpu8:51055)ScsiDeviceIO: 2316: Cmd(0x4124401f31c0) 0x1a, CmdSN 0xad from world 91852 to dev &quot;naa.600508e00000000078c4a59a76937603&quot; failed H:0x0 D:0x2 P:0x0 Valid sense data: 0x5 0x24 0x0.&lt;/span&gt;</pre>
<p>So duely armed I contacted HP support whom immediately escalated the issue internally. During this time I had a very helpful conversation with a good friend <a title="Barry Coombs" href="https://twitter.com/VirtualisedReal"><s>@</s>VirtualisedReal</a> whom pointed me in the direction of the HP MSA <a title="HP StorageWorks MSA2000 G1 or G2 and P2000 G3 FC MSA" href="http://www.hp.com/hpinfo/newsroom/press_kits/2010/JustRightITopk/MSA2000_G1_White_Paper.pdf" target="_blank">best practice document</a>. I applied the subnetting configuration it suggested, which seperates the iSCSi ports A1 &amp; B1 from A2 &amp; B2 on seperate subnets and also configured each of the hosts 2 iSCSi vmkernel ports to point to the seperate paired iSCSi ports on the SAN.</p>
<p>When HP did eventually come back to me they suggested the SAN was perfectly fine, However! enough time had passed since the iSCSi port configuration change that I could already see a noticable drop in latency.</p>
<p>I waited another week (and since then) and I am very glad to say the latency is considerably lower with no reoccurance of the locks being lost on VM vmdk files.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/03/host-disk-write-latency-errors-troubleshooting-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>PowerCLI Script to set RDM LUNs to Perennially Reserved &#8211; Fixes Slow Boot of ESXi 5.1 with MSCS RDMs</title>
		<link>http://www.definit.co.uk/2013/03/powercli-script-to-set-rdm-luns-to-perennially-reserved-fixes-slow-boot-of-esxi-5-1-with-mscs-rdms/</link>
		<comments>http://www.definit.co.uk/2013/03/powercli-script-to-set-rdm-luns-to-perennially-reserved-fixes-slow-boot-of-esxi-5-1-with-mscs-rdms/#comments</comments>
		<pubDate>Wed, 06 Mar 2013 14:02:52 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[esxcli]]></category>
		<category><![CDATA[mscs]]></category>
		<category><![CDATA[perenniallyreserved]]></category>
		<category><![CDATA[rdm]]></category>
		<category><![CDATA[slow]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1526</guid>
		<description><![CDATA[I've previously posted around this topic as part of another problem but having had to figure out the process again I think it's worth re-posting a proper script for this. VMware KB 1016106 is snappily titled "ESXi/ESX hosts with visibility to RDM LUNs being used by MSCS nodes with RDMs may take a long time to [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-609 colorbox-1526" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" />I've previously <a href="http://bit.ly/Ppl7Hl">posted around this topic </a>as part of another problem but having had to figure out the process again I think it's worth re-posting a proper script for this. <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1016106" target="_blank">VMware KB 1016106 </a>is snappily titled "ESXi/ESX hosts with visibility to RDM LUNs being used by MSCS nodes with RDMs may take a long time to boot or during LUN rescan" and describes the situation where booting ESXi (5.1 in my case) takes a huge amount of time to boot because it's attempting to gain a SCSI reservation on an RDM disk used by MS Clustering Services. It also details the fix.</p>
<p>The process is fairly simple, but a bit labour intensive if you're doing it manually on a large cluster.</p>
<ol>
<li>Retrieve the ScsiCanonicalName for each RDM</li>
<li>Set the configuration for each RDM on each Host to "PerenniallyReserved"</li>
</ol>
<p><span id="more-1526"></span></p>
<h2>Step 1 - Retrieve the ScsiCanonicalName for each RDM</h2>
<p>This PowerCLI command lists the RDM disks attached to any VMs in a particular cluster. What we need here specifically is the SCSI canonical name (often known as the naa or eui identifier), but for the sake of sanity I suggest running it manually and examining the disks to ensure you're happy with the ones the script will set to PerenniallyReserved:</p>
<pre class="brush: powershell; gutter: false">Get-VM -Location &quot;DefinIT Lab Cluster&quot; | Get-HardDisk -DiskType &quot;RawPhysical&quot;,&quot;RawVirtual&quot; | Select Parent,Name,DiskType,ScsiCanonicalName</pre>
<div id="attachment_1527" class="wp-caption alignnone" style="width: 310px"><a href="http://www.definit.co.uk/wp-content/uploads/2013/03/2013-03-06-001.png"><img class="size-medium wp-image-1527 colorbox-1526" alt="List RDM Disks in PowerCLI" src="http://www.definit.co.uk/wp-content/uploads/2013/03/2013-03-06-001-300x40.png" width="300" height="40" /></a><p class="wp-caption-text">List RDM Disks in PowerCLI</p></div>
<h2>Step 2 - Set the configuration for each RDM on each Host to "PerenniallyReserved"</h2>
<p>Once we have the list of RDM disks, we can then set the reservation via Get-EsxCli</p>
<pre class="brush: powershell; gutter: false">Connect-VIServer &quot;host01.definit.local&quot; -Credential (Get-Credential)
$esxcli = Get-EsxCli
$esxcli.storage.core.device.setconfig($false, &quot;naa.6005076307ffc7930000000000000109&quot;, $true)</pre>
<h2>Building Steps 1 and 2 into a script</h2>
<p>Now it's just a simple case of constructing a script to loop through the hosts in a cluster and the RDMs on each host:</p>
<pre class="brush: powershell; gutter: true">param(
	[string]	$TargetCluster,
	[PSCredential]	$RootCredentials = (Get-Credential)
)

# Create a connection object to all hosts in the Target Cluster
Get-Cluster $TargetCluster | Get-VMHost | % { Connect-VIServer $_ -Credential $RootCredentials | Out-Null }

# Find the ScsiCanonicalName for all RDM Disks attached to VMs in the Target Cluster
$RDMDisks = Get-VM -Location $TargetCluster | Get-HardDisk -DiskType &quot;RawPhysical&quot;,&quot;RawVirtual&quot; | Select ScsiCanonicalName

# Retrieve and EsxCli instance for each connection
foreach($esxcli in Get-EsxCli) {
	# And for each RDM Disk
	foreach($RDMDisk in $RDMDisks) {
		# Set the configuration to &quot;PereniallyReserved&quot;.
		# setconfig method: void setconfig(boolean detached, string device, boolean perenniallyreserved)
		$esxcli.storage.core.device.setconfig($false, ($RDMDisk.ScsiCanonicalName), $true)
	}
}

# Disconnect the connection objects created for the Target Cluster
Disconnect-VIServer * -Confirm:$false | Out-Null</pre>
<p>The script connects to each ESXi instance in the target cluster, queries all VMs on the target cluster and returns the RDM disks and then sets the PerenniallyReserved flag for each of the cluster hosts and RDM disks.</p>
<p>As usual, post any comments or improvements!</p>
<p>Edit: After my conversations with Mike, I've modified the script a little and attached as a zip file to download here: <a href="http://www.definit.co.uk/2013/03/powercli-script-to-set-rdm-luns-to-perennially-reserved-fixes-slow-boot-of-esxi-5-1-with-mscs-rdms/set-rdmreservations/" rel="attachment wp-att-1672">Set-RDMReservations</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/03/powercli-script-to-set-rdm-luns-to-perennially-reserved-fixes-slow-boot-of-esxi-5-1-with-mscs-rdms/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Voting now open for the 2013 top VMware &amp; virtualization blogs</title>
		<link>http://www.definit.co.uk/2013/02/voting-now-open-for-the-2013-top-vmware-virtualization-blogs/</link>
		<comments>http://www.definit.co.uk/2013/02/voting-now-open-for-the-2013-top-vmware-virtualization-blogs/#comments</comments>
		<pubDate>Wed, 20 Feb 2013 11:20:28 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1581</guid>
		<description><![CDATA[The voting is now open for your favourite VMware virtulization blogs over at vmware-land.com With 200+ blogs now up and running with content covering every aspect from PowerCLI to VDI, technical deepdives and general VMware topical blogging! there is a very strong chance you will have read an article in at least a few of [...]]]></description>
				<content:encoded><![CDATA[<p>The voting is now open for your favourite VMware virtulization blogs over at vmware-land.com</p>
<p>With 200+ blogs now up and running with content covering every aspect from PowerCLI to VDI, technical deepdives and general VMware topical blogging! there is a very strong chance you will have read an article in at least a few of them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/02/voting-now-open-for-the-2013-top-vmware-virtualization-blogs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VMware vCenter Linked Mode not supported through firewalls</title>
		<link>http://www.definit.co.uk/2013/02/vmware-vcenter-linked-mode-not-supported-through-firewalls/</link>
		<comments>http://www.definit.co.uk/2013/02/vmware-vcenter-linked-mode-not-supported-through-firewalls/#comments</comments>
		<pubDate>Fri, 15 Feb 2013 15:28:55 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Linked Mode]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Single Sign On]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[dcom]]></category>
		<category><![CDATA[dynamic ports]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[linked mode]]></category>
		<category><![CDATA[rpc]]></category>
		<category><![CDATA[sso]]></category>
		<category><![CDATA[unsupported]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1507</guid>
		<description><![CDATA[This article originally started off life as a record of how I managed to get this working, as a lot of my posts do, but this time it appears I am foiled. Last week, I had 3 vCenter Servers that appeared to be happily talking to each other in Linked Mode sharing a singe Multi-site [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-609 colorbox-1507" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" />This article originally started off life as a record of how I managed to get this working, as a lot of my posts do, but this time it appears I am foiled.</p>
<p>Last week, I had 3 vCenter Servers that appeared to be happily talking to each other in Linked Mode sharing a singe Multi-site SSO domain without any real issues. I had a single-pane-of-glass view of all 3 and I could manage them all from the one client. The reason for the 3 vCenter servers was segregation of LAN and DMZ networks: vCenter001 was in the LAN, vCenter002 sat in DMZ1 and vCenter003 sat in DMZ2.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/02/vSphere-Linked-Mode-Setup.png"><img class="alignnone size-medium wp-image-1509 colorbox-1507" alt="vSphere Linked Mode Setup" src="http://www.definit.co.uk/wp-content/uploads/2013/02/vSphere-Linked-Mode-Setup-300x291.png" width="300" height="291" /></a><span id="more-1507"></span></p>
<p>At the weekend I rebuilt vCenter003 as a scheduled upgrade from Server 2008 to 2008R2 and from vCenter 5.1a to 5.1b, however when it came to joining the Linked Mode group, I failed each and every time with the error:</p>
<blockquote><p>----------------- Operation "Join instance VMwareVCMSDS" failed: Action: Join Instance Action: Join Instance Action: Create replica instance Action: Create Instance Problem: Creation of instance VMwareVCMSDS failed: Active Directory Lightweight Directory Services could not create the NTDS Settings object for this Active Directory Lightweight Directory Services instance CN=NTDS Settings,CN=vCenter003$VMwareVCMSDS,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,CN={411111112-F11C-4113-9117-91111111111113} on the remote AD LDS instance vCenter001.definit.local:389. Ensure the provided network credentials have sufficient permissions. Error code: 0x800706ec The list of RPC servers available for the binding of auto handles has been exhausted.</p>
<p>----------------- Recovering from failed Operation "Join instance VMwareVCMSDS"</p>
<p>----------------- Recovery successful</p>
<p>----------------- Execution error.</p></blockquote>
<p>I carefully checked the <a href="http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.vcenterhost.doc%2FGUID-7634B78B-07E5-44EC-B5A0-CBEE842A20FD.html">vCenter 5.1 Linked Mode prerequisites document</a> but did not find any problem with my setup. I had in fact completed this process successfully twice before when connecting vCenter002 and the old vCenter003. After a while of troubleshooting I involved my friendly neighbourhood network support analyst who went through the <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2031843">ports listed by </a>VMware with me again, and we found that the RPC Endpoint Mapper (port 135) and the high range dynamic ports were being blocked. We agreed to open 135 and a range for the dynamic ports.</p>
<p>Initially I limited this to a range of 1000 ports, however it quickly became clear that the rather large vCenter001 server had consumed these in seconds (each outbound connection uses a port from the dynamic pool, so each connection to a host would consume a port - multiply that by each destination port and add in the database connections and the pool needed to be considerably larger). In the end, 20,000 ports were opened for the use of dynamic ports.</p>
<p>At this point I was still unable to join the Linked Mode group, and the network traces were not showing any blocked network traffic. It did not appear to be a network issue!</p>
<p>We also tested using an IPSec tunnel between the two vCenter servers to allow all traffic without inspection at the firewall end, this is in fact how vCenter002 and vCenter001 are configured.</p>
<p>I engaged with VMware Tech Support and brought the technician up to speed. He asked me to go through the <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2031115">Troubleshooting vCenter Linked Mode document</a> which is a great "checklist" for verifiying the requirements for Linked Mode.</p>
<p>In running the checks we came across lots of errors similar to:</p>
<blockquote><p>1772 The list of RPC servers available for the binding of auto handles has been exhausted</p></blockquote>
<p>and</p>
<blockquote><p>DsBindWithCred to vCenter001:389 failed with status 1753 (0x6d9): There are no more endpoints available from the endpoint mapper.</p></blockquote>
<p>His initial diagnosis was that the domain trust between the DMZ domain and the LAN domain was broken, however this was verified running through the document. The problem appeared to be related to RPC and the AD LDS (ADAM) setup. He went away to escalate the issue to the Escalation Engineers and came back to me today, hopefully he won't mind me quoting his response:</p>
<blockquote><p>I have looked for any Kb which states officially that nesting the VC in the DMZ and using ipsec tunneling is unsupported and I cannot locate any such document , I have fully discussed this also with Escalation Engineers whom also confirm that what I am saying is correct , VMware have never certified or tested the type of deployment</p></blockquote>
<p>VMware's guidance is to either use a LAN side vCenter server to manage the hosts through a DMZ, or to continue with the 3 vCenter servers as stand-alone servers.</p>
<p>At this point, troubleshooting the RPC error and the join problem become moot - I can't run an unsupported configuration in a live environment! I don't know why the new server would not join the Linked Mode group, certainly the default range for dynamic ports changed in 2008R2 and there is definitely a problem with the AD LDS installation on vCenter001.</p>
<p>Testing this setup through a firewall is definitely in the plan for my lab at some point and will definitely fall in the "unsupported" category, but it now leaves me with the task of pulling apart vCenter001 and 002 and ensuring they are in a stand-alone configuration.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/02/vmware-vcenter-linked-mode-not-supported-through-firewalls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Fixing the – the server fault invalidargument had no message – error message</title>
		<link>http://www.definit.co.uk/2013/02/fixing-the-the-server-fault-invalidargument-had-no-message-error-message/</link>
		<comments>http://www.definit.co.uk/2013/02/fixing-the-the-server-fault-invalidargument-had-no-message-error-message/#comments</comments>
		<pubDate>Tue, 05 Feb 2013 10:55:37 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1566</guid>
		<description><![CDATA[Today while creating new VMs from a template I got the error "the server fault invalidargument had no message" when editing the VM settings, the settings were modified successfully but the error was present whether a change had been made or not to the settings of the VM. A quick search of the web suggested [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1566" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>Today while creating new VMs from a template I got the error "the server fault invalidargument had no message" when editing the VM settings, the settings were modified successfully but the error was present whether a change had been made or not to the settings of the VM.</p>
<p>A quick search of the web suggested removing said VM from the inventory and re-adding from the datastore, for many this fixed the issue but not for me.</p>
<p>Another suggested removing and reading the Host from the cluster which I did and still no joy. Finding little else to go on I elected to simply restart the host the VM/template was originally on.</p>
<p>Lo and behold this fixed the issue!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/02/fixing-the-the-server-fault-invalidargument-had-no-message-error-message/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VM Power On fails with error: cpuid.coresPerSocket must be a number between 1 and 8</title>
		<link>http://www.definit.co.uk/2013/02/vm-power-on-fails-with-error-cpuid-corespersocket-must-be-a-number-between-1-and-8/</link>
		<comments>http://www.definit.co.uk/2013/02/vm-power-on-fails-with-error-cpuid-corespersocket-must-be-a-number-between-1-and-8/#comments</comments>
		<pubDate>Fri, 01 Feb 2013 11:10:30 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[cores]]></category>
		<category><![CDATA[corespersocket]]></category>
		<category><![CDATA[cpu]]></category>
		<category><![CDATA[template]]></category>
		<category><![CDATA[vm]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[vmx]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1497</guid>
		<description><![CDATA[Had a strange one after deploying an XP VM from a template today - the VM would not power on and threw the following error: An error was received from the ESX host while powering on VM [VM name]. cpuid.coresPerSocket must be a number between 1 and 8 Digging around on google the error seemed [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-609 colorbox-1497" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" />Had a strange one after deploying an XP VM from a template today - the VM would not power on and threw the following error:</p>
<blockquote><p>An error was received from the ESX host while powering on VM [VM name].<br />
cpuid.coresPerSocket must be a number between 1 and 8</p></blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2013/02/2013-02-01-000.png"><img class="alignnone size-medium wp-image-1498 colorbox-1497" alt="cpuid.coresPerSocket Error" src="http://www.definit.co.uk/wp-content/uploads/2013/02/2013-02-01-000-300x78.png" width="300" height="78" /></a></p>
<p>Digging around on google the error seemed to be related to over-allocating vCPUs (e.g. assigning 8 vCPUs on a VM with 4 physical CPU cores). This was a single vCPU machine on a 12 processor host, so not likely to be that! It did give me the idea that maybe the VMX had an error, so I edited the VM hardware and added an extra CPU and saved the config. I then edited it back to a single CPU and powered on the machine - it worked!</p>
<p>Examining the vmx showed that the coresPerSocket was set to zero which is incorrect:</p>
<pre class="brush: text; gutter: false">cpuid.coresPerSocket = &quot;0&quot;</pre>
<p>And after the change, the numvcpus setting was added and coresPerSocket updated:</p>
<pre class="brush: text; gutter: false">cpuid.coresPerSocket = &quot;1&quot;
numvcpus = &quot;1&quot;</pre>
<p>Fortunately, it's a simple fix and once I'd updated the template, not something that will bother me again!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/02/vm-power-on-fails-with-error-cpuid-corespersocket-must-be-a-number-between-1-and-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing the VMware Support Assistant</title>
		<link>http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/</link>
		<comments>http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/#comments</comments>
		<pubDate>Fri, 25 Jan 2013 14:25:18 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Support Assistant]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[vSphere Web Client]]></category>
		<category><![CDATA[appliance]]></category>
		<category><![CDATA[support assistant]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1454</guid>
		<description><![CDATA[So VMware's Support Assistant is pretty awesome and it's free! I thought I'd do a quick run through of the installation and set up for anyone who was interested, it's fairly straightforward and if you raise a lot of calls or have multiple calls on the go it's a time saver! VMware's official page for [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-609 colorbox-1454" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" />So VMware's Support Assistant is pretty awesome and it's free! I thought I'd do a quick run through of the installation and set up for anyone who was interested, it's fairly straightforward and if you raise a lot of calls or have multiple calls on the go it's a time saver!</p>
<p>VMware's official page for the Support Assistant is here - <a href="https://www.vmware.com/products/datacenter-virtualization/vcenter-support-assistant/overview.html">https://www.vmware.com/products/datacenter-virtualization/vcenter-support-assistant/overview.html</a><span id="more-1454"></span></p>
<p>The OVF deploy is so simple I've just taken screenshots:</p>

<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-001/' title='Support Assistant Install 01'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-001-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Browse to the OVF file to deploy" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-002/' title='Support Assistant Install 02'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-002-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Click through the Template Details" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-003/' title='Support Assistant Install 03'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-003-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="(Read and) Accept the EULA" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-004/' title='Support Assistant Install 04'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-004-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Select a Location for the Appliance" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-005/' title='Support Assistant Install 05'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-005-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Select a cluster" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-006/' title='Support Assistant Install 06'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-006-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Select a host" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-007/' title='Support Assistant Install 07'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-007-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Select the type of disk" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-008/' title='Support Assistant Install 08'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-008-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="Select your network" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-009/' title='Support Assistant Install 09'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-009-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="And finish!" /></a>
<a href='http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/2013-01-25-011/' title='2013-01-25 011'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-011-150x150.png" class="attachment-thumbnail colorbox-1454 " alt="2013-01-25 011" /></a>

<p>Once you've got the OVF deployed, open a console and power on the VM and set a complex root password:</p>
<p><img class="alignleft size-full wp-image-1465 colorbox-1454" alt="Support Assistant - password" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-010.png" width="398" height="111" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Next you get presented with a network configuration script, it's just a case of entering IP addresses, DNS, hostnames etc and is all pretty straight forward, but make sure you read the instruction highlighted in red! Not doing so can cause network problems. If you need to reconfigure the network for any reason (like not following the instructions!) then log on to the console and use the "configure-network".</p>
<p><img class="alignleft size-medium wp-image-1473 colorbox-1454" alt="Support Assistant Network" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-014-300x92.png" width="300" height="92" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>When that's complete, you are presented with this screen:</p>
<p><img class="alignleft size-medium wp-image-1468 colorbox-1454" alt="Support Assistant Home" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-0111-300x208.png" width="300" height="208" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>At this point I updated the VMware Tools using the automatic option</p>
<p><img class="alignleft size-full wp-image-1467 colorbox-1454" alt="Tools out of date" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-012.png" width="276" height="38" /></p>
<p>&nbsp;</p>
<p><img class="alignleft size-medium wp-image-1470 colorbox-1454" alt="VMware Tools Update" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-013-300x76.png" width="300" height="76" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Once that is complete (I don't like the ! <img src='http://www.definit.co.uk/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley colorbox-1454' /> ), point your browser at the IP address configured to open the appliance, this presents you with 5 steps to install the appliance.</p>
<p><img class="colorbox-1454"  alt="2013-01-25 015" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-015-300x101.png" width="300" height="101" /></p>
<p>Step 1, registering the appliance with vCenter Server is pretty simple, just enter your server name, user ID and password (I entered it in <a href="mailto:user@domain.com">user@domain.com</a> format, which worked) and click register plugin.</p>
<p><img class="alignleft size-medium wp-image-1475 colorbox-1454" alt="2013-01-25 016" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-016-300x87.png" width="300" height="87" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>There's only a small text message telling you anything happened at this point! My VC client prompted me to OK the certificate for the appliance, which I did. I restarted the client and verified it was installed in the plug-in manager:</p>
<p><img class="alignleft size-full wp-image-1474 colorbox-1454" alt="Plugin installed" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-017.png" width="781" height="27" /></p>
<p>&nbsp;</p>
<p>Step 2 just says to "configure your network", which I would hope we did during the install!</p>
<p>Step 3 is installing Flash - if you're already using the Web Client then you've already got Flash installed.</p>
<p>Step 4 is optional, you only need to do it if you are using the Web Client - which I am! Check the file "webclient.properties" exists on your server running the Web Client - mine did - and edit the file, ensuring "<tt>scriptPlugin.enabled=true</tt>" is in the file. Then restart your Web Client.</p>
<p><img class="alignleft size-medium wp-image-1477 colorbox-1454" alt="2013-01-25 018" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-018-300x99.png" width="300" height="99" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Step 5 is to access the Support Assistant through your client!</p>
<p><img class="alignleft size-medium wp-image-1481 colorbox-1454" alt="Support Assistant VC Client" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-0191-300x76.png" width="300" height="76" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>On accessing it for the first time, it ran through a diagnostic</p>
<p><img class="alignleft size-medium wp-image-1479 colorbox-1454" alt="Support Assistant Diagnostic" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-020-300x120.png" width="300" height="120" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Then log in using your VMware support credentials and you are up and running - I was able to see my existing support requests, I haven't yet raised a new one but will update when I have.</p>
<p><img class="size-medium wp-image-1482 alignnone colorbox-1454" alt="2013-01-25 021" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-021-300x117.png" width="300" height="117" />  <img class="size-medium wp-image-1483 alignnone colorbox-1454" alt="2013-01-25 022" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-022-300x135.png" width="300" height="135" /></p>
<p>And on the web client:</p>
<p><em><img class="size-medium wp-image-1489 alignnone colorbox-1454" alt="Web Client Plugin" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-023-249x300.png" width="249" height="300" /></em></p>
<p><!--more--></p>
<p><em>I've just seen this on the VMWare TAM blog too, great article: <a href="http://blogs.vmware.com/tam/2013/01/introducing-vmware-vcenter-support-assistant-51.html">http://blogs.vmware.com/tam/2013/01/introducing-vmware-vcenter-support-assistant-51.html</a></em></p>
<p><!--more--></p>
<p><strong>Update 25/01/2013 14:52</strong></p>
<p>It seems that viewing the Support Appliance in the web client is crippled by the certificates which were shipped with the appliance which have no Subject Name and are expired! I can access it by lowering the security zone in IE9, then chosing to ignore SSL errors and re-accessing the plugin - not ideal!</p>
<p><img class="alignnone size-medium wp-image-1492 colorbox-1454" alt="2013-01-25 024" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-024-300x130.png" width="300" height="130" /></p>
<p><img class="alignnone size-medium wp-image-1493 colorbox-1454" alt="2013-01-25 028" src="http://www.definit.co.uk/wp-content/uploads/2013/01/2013-01-25-028-300x187.png" width="300" height="187" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2013/01/installing-the-vmware-support-assistant/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Passed the VCP510 exam &#8211; VCP5-DV Qualified!</title>
		<link>http://www.definit.co.uk/2012/12/passed-the-vcp510-exam-vcp5-dv-qualified/</link>
		<comments>http://www.definit.co.uk/2012/12/passed-the-vcp510-exam-vcp5-dv-qualified/#comments</comments>
		<pubDate>Mon, 31 Dec 2012 14:27:52 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exams]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Skill Set]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1446</guid>
		<description><![CDATA[I'm very pleased to say that as of 21st December, I passed my VCP510 exam and am now VCP5 qualified! It's something that I've wanted to do for a long time (since VCP3) but have never been able to get funding for the required course. My current employer sent me on the vSphere 5 Fast [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-1447 colorbox-1446" alt="vmware certified professional 5" src="http://www.definit.co.uk/wp-content/uploads/2012/12/VMW-LGO-CERTIFIED-PRO-5-K1.png" width="162" height="107" />I'm very pleased to say that as of 21st December, I passed my VCP510 exam and am now VCP5 qualified! It's something that I've wanted to do for a long time (since VCP3) but have never been able to get funding for the required course. My current employer sent me on the vSphere 5 Fast Track course earlier this year, so I was all set to take the exam.</p>
<p>My exam experience was somewhat marred by a very poor first attempt which I narrowly failed. The exam I sat had dozens of spelling and grammatical mistakes, inaccuracies and other problems and I spent far too long commenting on those than concentrating on the questions. Fortunately I was eventually able to speak with VMware Education and they issued me with an exam voucher (they will also be releasing a new version of the exam soon, which I'm assured will resolve these problems). My second attempt was a lot better and I smashed the 300 point pass mark by 128 points, which went some way to restoring confidence in my own knowledge of the subject!</p>
<p>I'm now looking forward to studying for the VCAP-DCA and DCD exams with a view to completing them in 2013...</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/12/passed-the-vcp510-exam-vcp5-dv-qualified/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>A good year with VMware and better things to come!</title>
		<link>http://www.definit.co.uk/2012/12/a-good-year-with-vmware-and-better-things-to-come/</link>
		<comments>http://www.definit.co.uk/2012/12/a-good-year-with-vmware-and-better-things-to-come/#comments</comments>
		<pubDate>Thu, 20 Dec 2012 11:15:40 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1579</guid>
		<description><![CDATA[This year for me personally has been extremely busy and eventful coupled with a great deal of learning. Without wishing to bore the pants off of any would be reader I shall summarize my ruminations as someone whom is still quite new to the VMware world. The first thing that comes to mind is a [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1579" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>This year for me personally has been extremely busy and eventful coupled with a great deal of learning.</p>
<p>Without wishing to bore the pants off of any would be reader I shall summarize my ruminations as someone whom is still quite new to the VMware world.</p>
<p>The first thing that comes to mind is a a couple of recent meetings I have had with VMware. Learning that they are now very keen to engage with 'the rest of us' and by that I mean those of us working in SME's as we represent well over 50% of their business revenue. For me personally this was excellent news as we have already invested heavily into the VMware product range and plan to carry on doing so in the future. The recent release of VMware suites was a good step forward but I still feel they need to do a lot better in communicating to SME's about their vast (and ever increasing) product range as there are many gems that can often go unoticed. Our discovery of vCops earlier this year was a good example of this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/12/a-good-year-with-vmware-and-better-things-to-come/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>vCenter 5.1 Single Sign On Multi-Site error: User credentials are incorrect or empty</title>
		<link>http://www.definit.co.uk/2012/11/vcenter-5-1-single-sign-on-multi-site-error-user-credentials-are-incorrect-or-empty/</link>
		<comments>http://www.definit.co.uk/2012/11/vcenter-5-1-single-sign-on-multi-site-error-user-credentials-are-incorrect-or-empty/#comments</comments>
		<pubDate>Sat, 24 Nov 2012 20:24:37 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Linked Mode]]></category>
		<category><![CDATA[Single Sign On]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[multisite]]></category>
		<category><![CDATA[single sign on]]></category>
		<category><![CDATA[sso]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[vsphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1428</guid>
		<description><![CDATA[While adding an additional vCenter Server to our Multi-Site Single Sign On instance I encountered a problem as I entered the details of the existing SSO. The error thrown was: User credentials are incorrect or empty. Provide correct credentials. After a couple of hours online with VMware support I took a guess at the problem. [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1428" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="vmware logo" width="213" height="62" /></a>While adding an additional vCenter Server to our Multi-Site Single Sign On instance I encountered a problem as I entered the details of the existing SSO.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/SingleSignOnMultiSite.png"><img class="alignnone size-medium wp-image-1429 colorbox-1428" title="SingleSignOnMultiSite" src="http://www.definit.co.uk/wp-content/uploads/2012/11/SingleSignOnMultiSite-300x225.png" alt="" width="300" height="225" /></a></p>
<p>The error thrown was:</p>
<blockquote><p>User credentials are incorrect or empty. Provide correct credentials.</p></blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/ErrorMessage.png"><img class="alignnone size-medium wp-image-1430 colorbox-1428" title="ErrorMessage" src="http://www.definit.co.uk/wp-content/uploads/2012/11/ErrorMessage-300x120.png" alt="" width="300" height="120" /></a></p>
<p>After a couple of hours online with VMware support I took a guess at the problem. On the existing Single Sign On Configuration I have added the Active Directory domain DefinIT and in order to enable integrated authentication from the vSphere Client I moved it to the top of the list - this meant that System-Domain is no longer the default authentication domain. The SSO admin account (admin@System-Domain) is a part of that domain and so my guess is that the installer tries to authenticate using admin@definit.local rather than System-Domain, which of course failed.</p>
<p>Moving System-Domain back to the top of the list allowed me to install correctly, and once finished I could drop it back down to allow integrated authentication again.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/11/vcenter-5-1-single-sign-on-multi-site-error-user-credentials-are-incorrect-or-empty/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VCP5 &#8211; vSphere 5 Configuration Maximums Quiz in PowerShell</title>
		<link>http://www.definit.co.uk/2012/11/vcp5-vsphere-5-configuration-maximums-quiz-in-powershell/</link>
		<comments>http://www.definit.co.uk/2012/11/vcp5-vsphere-5-configuration-maximums-quiz-in-powershell/#comments</comments>
		<pubDate>Thu, 22 Nov 2012 16:48:15 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Exams]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[configuration maximums]]></category>
		<category><![CDATA[vsphere 5]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1418</guid>
		<description><![CDATA[I've been learning my vSphere 5 config maximums before my upcoming VCP5 exam, so in a supreme effort of procrastination I thought I'd write a PowerShell quiz script: here it is! Save the QuizMe.ps1 file into a folder and then place one or more text file in the same folder containing a comma delimited set of questions and [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/02/powershell.png"><img class="wp-image-1089 alignright colorbox-1418" title="powershell" src="http://www.definit.co.uk/wp-content/uploads/2012/02/powershell-300x217.png" alt="" width="150" height="108" /></a>I've been learning my vSphere 5 config maximums before my upcoming VCP5 exam, so in a supreme effort of procrastination I thought I'd write a PowerShell quiz script: here it is!</p>
<p>Save the QuizMe.ps1 file into a folder and then place one or more text file in the same folder containing a comma delimited set of questions and answers. Then run QuizMe.ps1!</p>
<p><span id="more-1418"></span></p>
<p>You can choose the quiz you take (which text file it will use).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-22-002.png"><img class="alignnone size-full wp-image-1419 colorbox-1418" title="2012-11-22 002" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-22-002.png" alt="" width="488" height="109" /></a></p>
<p>This will work for anything you want to quiz yourself on, it's not limited to VMware configuration maxiums.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-22-003.png"><img class="alignnone size-full wp-image-1420 colorbox-1418" title="2012-11-22 003" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-22-003.png" alt="" width="434" height="104" /></a></p>
<p><strong>QuizMe.ps1</strong></p>
<pre class="brush: powershell; gutter: true">$QuizFiles = Get-ChildItem . | where {$_.extension -eq &quot;.txt&quot;}
Clear-Host
Write-Host &quot;Choose a quiz file&quot; -fore Yellow
foreach ($QuizFile in $QuizFiles) {
	Write-Host &quot;$QuizFile&quot;
}
$Quiz = Read-Host -Prompt &quot;Type a file name&quot;

$VMM = Import-CSV $Quiz -Header &quot;Question&quot;,&quot;Answer&quot;
Clear-Host
$Count = 10
while ($Count -gt 0) {
	if(($VMM).GetType().ToString() -eq &quot;System.Object[]&quot;) {
		$Q = Get-Random $VMM
	} else {
		$Q = $VMM
	}
	$Question = $Q.Question
	$Answer = Read-Host -Prompt $Question
	Clear-Host
	if($Answer -match $Q.Answer) {
		Write-Host &quot;Correct!&quot; -Fore Green -NoNewLine
		$VMM = $VMM | where {$_.Question -ne $Q.Question}
	} else {
		Write-Host &quot;Wrong - &quot;$Q.Answer -Fore Red -NoNewLine
	}
	$temp = $VMM
	if($temp.count -eq $null) { $Count-- } else { $Count = $temp.count }
	Write-Host &quot; $Count questions remain&quot;
}</pre>
<p>Download quiz files: <a href="http://www.definit.co.uk/2012/11/vcp5-vsphere-5-configuration-maximums-quiz-in-powershell/virtualmachinemaximums-2/" rel="attachment wp-att-1423">VirtualMachineMaximums</a> <a href="http://www.definit.co.uk/2012/11/vcp5-vsphere-5-configuration-maximums-quiz-in-powershell/esxi5maximums/" rel="attachment wp-att-1422">ESXi5Maximums</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/11/vcp5-vsphere-5-configuration-maximums-quiz-in-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Powershell &#8211; Generate Microsoft CA signed SSL certificates with vSphere 5.1</title>
		<link>http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/</link>
		<comments>http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/#comments</comments>
		<pubDate>Tue, 06 Nov 2012 16:59:11 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMware Server]]></category>
		<category><![CDATA[ca]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[powercl]]></category>
		<category><![CDATA[vcenter]]></category>
		<category><![CDATA[vsphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1401</guid>
		<description><![CDATA[The process of requesting certificates for vSphere 5.1 is a fairly grim, manual process. It's repetitive and easy to make a mistake on any step of the way. Since I've got to do this for quite a few VirtualCenter Servers, I thought I'd script the certificate generation if nothing else. I am following the excellent&#160;documentation [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1401" title="VMware.jpg" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>The process of requesting certificates for vSphere 5.1 is a fairly grim, manual process. It's repetitive and easy to make a mistake on any step of the way. Since I've got to do this for quite a few VirtualCenter Servers, I thought I'd script the certificate generation if nothing else. I am following the excellent&nbsp;documentation provided in <a href="http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&amp;docType=kc&amp;docTypeID=DT_KB_1_1&amp;externalId=2034833" target="_blank">Implementing CA signed SSL certificates with vSphere 5.1</a>&nbsp;and more specifically in <a href="http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&amp;docType=kc&amp;docTypeID=DT_KB_1_1&amp;externalId=2037432" target="_blank">Creating certificate requests and certificates for vCenter Server 5.1 components</a>.</p>
<p>The script assumes that:</p>
<ol>
<li>You have a working Certificate Authority</li>
<li>You are in an Active Directory domain environment</li>
<li>You have the relevant permissions to modify Certificate Templates, Request and Issue certificates.</li>
<li>You have installed OpenSSL v1.0.1c or later.</li>
</ol>
<p>You will need to modify the configuration section to suit your environment and the $WorkingDir folder should exist before you run the script.<span id="more-1401"></span></p>
<h2>Creating the Certificate Template</h2>
<p>You need to modify the standard Microsoft Web Server template to&nbsp;allow the encryption of user data. Since you can't edit these templates, you have to duplicate&nbsp;the &nbsp;template and modify the settings.</p>

<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-001/' title='01 - Manage Certificate Templates'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-001-150x150.png" class="attachment-thumbnail colorbox-1401 " alt="01 - Manage Certificate Templates" /></a>
<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-000/' title='02 - Duplicate Template'><img width="150" height="112" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-000-150x112.png" class="attachment-thumbnail colorbox-1401 " alt="02 - Duplicate Template" /></a>
<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-002/' title='03 - Modify Certificate Template'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-002-150x150.png" class="attachment-thumbnail colorbox-1401 " alt="03 - Modify Certificate Template" /></a>
<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-003/' title='04 - Enable Signing of User Data'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-003-150x150.png" class="attachment-thumbnail colorbox-1401 " alt="04 - Enable Signing of User Data" /></a>
<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-005/' title='2012-11-06 005'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-005-150x150.png" class="attachment-thumbnail colorbox-1401 " alt="2012-11-06 005" /></a>
<a href='http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/2012-11-06-004/' title='Folder Structure'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-004-150x150.png" class="attachment-thumbnail colorbox-1401 " alt="Folder Structure" /></a>

<p>Download the CA's certificate as per the instructions in the linked KB above:</p>
<blockquote>
<ul>
<li>Navigate back to the home page of the certificate server and click on <strong>Download a CA certificate, certificate chain or CRL</strong>.</li>
<li>
<div>Click the <strong>Base 64</strong> option.</div>
</li>
<li>
<div>Click the <strong>Download CA Certificate chain</strong> link.</div>
</li>
<li>
<div>Save the certificate chain as cachain.p7b. in the c:\certs folder.</div>
</li>
<li>
<div>Double-click on the cachain.p7b file and navigate to <strong>C:\certs\cachain.p7b &gt; Certificates</strong>.</div>
</li>
<li>
<div>Right-click on the certificate listed and select <strong>All Actions &gt; Export</strong>.</div>
</li>
<li>
<div>Click <strong>Next</strong>.</div>
</li>
<li>
<div>Select <strong>Base-64 encoded X.509 (.CER)</strong>, and then click <strong>Next</strong>.</div>
</li>
<li>
<div>Save the export at C:\[Your $WorkingDir]\Root64.cer and click <strong>Next</strong>.</div>
</li>
</ul>
</blockquote>
<h2>Running the script</h2>
<p>The script itself is fairly simple, creating a folder structure for the individual certificates, wrestling with OpenSSL&nbsp;and handling the requests to the CA using CertReq. You can view the debug output by setting the $DebugPreference to 'Continue'</p>
<p>&nbsp;</p>
<pre class="brush: powershell; gutter: true"># The &quot;short&quot; name of the Virtual Center Server
$vC_NETBIOS = &quot;DefinIT-VC01&quot;
# The DNS name of the Virtual Center Server
$vC_FQDN = &quot;DefinIT-VC01.definit.co.uk&quot;
# The IP address of the Virtual Center Server
$vC_IP = &quot;192.168.1.10&quot;
# The Certificate Authority Name
$CA_Name = &quot;DefinIT-CA01\DefinIT-CA&quot;
# The name of the template you defined earlier
$CA_Template = &quot;CertificateTemplate:VirtualCenterWebServer&quot;
# The CA certificate you exported earlier
$CA_Certificate = &quot;Root64.cer&quot;
# Administrative email to use in the certificate
$AdminEmail = &quot;admin@definit.co.uk&quot;
# A working directory under which the certificates and folders will be created
$WorkingDir = &quot;c:\Certificates\VMCertificates&quot;
# An array of the services we will generate the certificates for
$Services = @(&quot;vCenterServer&quot;,&quot;vCenterInventoryService&quot;,&quot;vCenterSSO&quot;,&quot;VMwareUpdateManager&quot;,&quot;vCenterWebClient&quot;,&quot;vCenterLogBrowser&quot;,&quot;VMwareOrchestrator&quot;)# The path to the openssl executable
$OpenSSLExe =  &quot;c:\OpenSSL-Win32\bin\openssl.exe&quot;

if (!(Test-Path $OpenSSLExe)) {throw &quot;$OpenSSLExe required&quot;}
New-Alias -Name OpenSSL $OpenSSLExe

$RequestTemplate = &quot;[ req ]
default_bits = 2048
default_keyfile = rui.key
distinguished_name = req_distinguished_name
encrypt_key = no
prompt = no
string_mask = nombstr
req_extensions = v3_req

[ v3_req ]
basicConstraints = CA:FALSE
keyUsage = digitalSignature, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = DNS:ShortName,DNS:FQDN, DNS:IPADDRESS

[ req_distinguished_name ]
countryName = UK
stateOrProvinceName = West Sussex
localityName = Horsham
0.organizationName = DefinIT
organizationalUnitName = ORGREPLACE
commonName = FQDN
emailAddress = ADMINEMAIL

[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true

[ req_attributes ]&quot;

if(!(Test-Path $WorkingDir)) {
	New-Item $WorkingDir -Type Directory
}
Set-Location $WorkingDir
ForEach ($Service in $Services) {
	if(!(Test-Path $Service)) {
		New-Item $Service -Type Directory
	}
	Set-Location $Service
	write-debug &quot;$Service: Writing Template&quot;
	$Out = ((((($RequestTemplate -replace &quot;FQDN&quot;, $vC_FQDN) -replace &quot;ShortName&quot;, $vC_NETBIOS) -replace &quot;ORGREPLACE&quot;, $Service) -replace &quot;ADMINEMAIL&quot;, $AdminEmail) -replace &quot;IPADDRESS&quot;, $vC_IP) | Out-File &quot;$WorkingDir\$Service\$Service.cfg&quot; -Encoding Default -Force
	write-debug &quot;$Service: Generating CSR&quot;
	OpenSSL req -new -nodes -out &quot;$WorkingDir\$Service\$Service.csr&quot; -keyout &quot;$WorkingDir\$Service\rui-orig.key&quot; -config &quot;$WorkingDir\$Service\$Service.cfg&quot;
	write-debug &quot;$Service: Converting Private Key&quot;
	OpenSSL rsa -in &quot;$WorkingDir\$Service\rui-orig.key&quot; -out &quot;$WorkingDir\$Service\rui.key&quot;
	write-debug &quot;$Service: Submitting to $CA_Name&quot;
	certreq -submit -attrib $CA_Template -config &quot;$CA_Name&quot; &quot;$Service.csr&quot; &quot;$WorkingDir\$Service\rui.crt&quot;
	write-debug &quot;$Service: Generating PFX&quot;
	OpenSSL pkcs12 -export -in &quot;$WorkingDir\$Service\rui.crt&quot; -inkey &quot;$WorkingDir\$Service\rui.key&quot; -certfile &quot;$WorkingDir\$CA_Certificate&quot; -name &quot;rui&quot; -passout pass:testpassword -out &quot;$WorkingDir\$Service\rui.pfx&quot;
	Set-Location $WorkingDir
}</pre>
<p>&nbsp;</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-004.png"><img class="colorbox-1401"  title="Folder Structure" alt="" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-004.png" width="262" height="245" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-005.png"><img class="alignnone size-medium wp-image-1409 colorbox-1401" title="2012-11-06 005" alt="" src="http://www.definit.co.uk/wp-content/uploads/2012/11/2012-11-06-005-300x98.png" width="300" height="98" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/11/powershell-generate-microsoft-ca-signed-ssl-certificates-with-vsphere-5-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing VMware vSphere Single Sign On (SSO) in Multi-site Mode</title>
		<link>http://www.definit.co.uk/2012/10/installing-vmware-vsphere-single-sign-on-sso-in-multi-site-mode/</link>
		<comments>http://www.definit.co.uk/2012/10/installing-vmware-vsphere-single-sign-on-sso-in-multi-site-mode/#comments</comments>
		<pubDate>Sun, 28 Oct 2012 19:33:29 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Linked Mode]]></category>
		<category><![CDATA[Single Sign On]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[linked]]></category>
		<category><![CDATA[linked mode]]></category>
		<category><![CDATA[multisite]]></category>
		<category><![CDATA[single sign on]]></category>
		<category><![CDATA[sso]]></category>
		<category><![CDATA[vsphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1362</guid>
		<description><![CDATA[ VMware vSphere Single Sign On (SSO) can be installed in Multi-site mode to support local sign-on to vCenters that you want to be part of the same single sign on domain - for example, if you want to install Linked-Mode and have the advantage of a single pane of glass view, but can't risk using [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1362" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="vmware logo" width="213" height="62" /></a> VMware vSphere Single Sign On (SSO) can be installed in Multi-site mode to support local sign-on to vCenters that you want to be part of the same single sign on domain - for example, if you want to install Linked-Mode and have the advantage of a single pane of glass view, but can't risk using a single SSO instance across the WAN. In other words, from <a href="http://blogs.vmware.com/vsphere/2012/09/vcenter-single-sign-on-part-1-what-is-vcenter-single-sign-on.html">VMware's blog post</a>:</p>
<blockquote><p><em>Multisite deployments are  where a local replica is maintained at remote sites of the primary vCenter Single Sign-On instance. vCenter Servers are reconfigured to use the local vCenter Single Sign-On service and reduce authentication requests across the WAN. Multisite deployments do drop the support of single pane of glass views unless Linked Mode is utilized and multisite deployments are actually required to maintain Linked Mode configurations where roles, permissions and licenses are replicated between linked vCenter servers. Linked mode will re-enable single pane of glass views across multisite instances.<span id="more-1362"></span></em></p></blockquote>
<p>&nbsp;</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/SSO-MultiSIteSSO-MultiSite1.png"><img class="alignnone size-medium wp-image-1363 colorbox-1362" title="SSO-MultiSIteSSO-MultiSite1" src="http://www.definit.co.uk/wp-content/uploads/2012/10/SSO-MultiSIteSSO-MultiSite1-300x220.png" alt="SSO Multi-site" width="300" height="220" /></a></p>
<p>Using two test vCenters, Definit-VC01 and Definit-VC02, I ran through the installation.</p>
<h2>Installing the first vCenter SSO</h2>
<p>This is important! Don't install using the Simple Installation, even if you are just using a single server. The reason for this is that you can't install SSO in Multi-Site Mode if you do. If you have already installed the vCenter Server (as I had) then you will need to uninstall all the components, preserving the database and re-install using this guide. Uninstall components in this order: Web Client, vCenter Server, Inventory Service, Singe Sign On. I also will use the same service account user for both installations.</p>
<p>Install Single Sign On in Multi-site mode and select to install as a new primary node.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-014.png"><img class="alignnone size-medium wp-image-1364 colorbox-1362" title="vSphere 5.1a Installer" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-014-300x233.png" alt="vSphere 5.1a Installer" width="300" height="233" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-000.png"><img class="alignnone size-medium wp-image-1365 colorbox-1362" title="vSphere SSO - Create Primary Node" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-000-300x226.png" alt="vSphere SSO - Create Primary Node" width="300" height="226" /></a></p>
<p>Create an SSO administrator password and then either choose to install a new SQL Express instance, or use a supported one. I have a separate SQL server for this VC, so I will create an RSA database manually.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-005.png"><img class="alignnone  wp-image-1366 colorbox-1362" title="vSphere SSO - Installation" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-005-300x225.png" alt="vSphere SSO - Installation" width="300" height="225" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-006.png"><img class="alignnone size-medium wp-image-1367 colorbox-1362" title="vSphere SSO Database" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-006-300x225.png" alt="vSphere SSO Database" width="300" height="225" /></a></p>
<p>Modify the two scripts to reflect your installation path and passwords you want for the RSA DB.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-001.png"><img class="alignnone size-medium wp-image-1368 colorbox-1362" title="vSphere SSO Create DB Script" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-001-300x174.png" alt="vSphere SSO Create DB Script" width="300" height="174" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-002.png"><img class="alignnone size-medium wp-image-1369 colorbox-1362" title="vSphere SSO Create Users Script" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-002-300x90.png" alt="vSphere SSO Create Users Script" width="300" height="90" /></a></p>
<p>Once you've edited and run the two scripts check that they exist and then proceed to configure the database connection.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-003.png"><img class="alignnone size-medium wp-image-1370 colorbox-1362" title="vSphere SSO Database and Users" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-003-222x300.png" alt="vSphere SSO Database and Users" width="222" height="300" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-007.png"><img class="alignnone size-medium wp-image-1371 colorbox-1362" title="vSphere SSO Database Connection" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-007-300x226.png" alt="vSphere SSO Database Connection" width="300" height="226" /></a></p>
<p>Enter the FQDN and service details - I installed here with the Network Service account and later modified it to use a service account.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-008.png"><img class="alignnone size-medium wp-image-1372 colorbox-1362" title="vSphere SSO Enter URL" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-008-300x226.png" alt="" width="300" height="226" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-0091.png"><img class="alignnone size-medium wp-image-1377 colorbox-1362" title="vSphere SSO Service Account" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-0091-300x226.png" alt="vSphere SSO Service Account" width="300" height="226" /></a></p>
<p>I accepted the default location, and port.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-011.png"><img class="alignnone size-medium wp-image-1374 colorbox-1362" title="vSphere SSO Install Path" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-011-300x225.png" alt="vSphere SSO Install Path" width="300" height="225" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-012.png"><img class="alignnone  wp-image-1375 colorbox-1362" title="vSphere SSO Port" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-29-012-300x225.png" alt="vSphere SSO Port" width="300" height="225" /></a></p>
<p>And finished the Wizard.</p>
<h2>Stringing it all together - Linked Mode</h2>
<p>In my previous post, <a href="http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/">Configuring vCenter Linked Mode</a>, I ran through the process of installing Linked Mode using a single instance of SSO across a fast link, so I'm not going to cover the actual installation of Linked Mode here. The process is exactly the same and should be run using the same account that is running services on both vCenters.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/10/installing-vmware-vsphere-single-sign-on-sso-in-multi-site-mode/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>DataStore conflicts with an existing DataStore in the DataCenter &#8211; Manually disabling Storage I/O Control</title>
		<link>http://www.definit.co.uk/2012/10/datastore-conflicts-with-an-existing-datastore-in-the-datacenter-manually-disabling-storage-io-control/</link>
		<comments>http://www.definit.co.uk/2012/10/datastore-conflicts-with-an-existing-datastore-in-the-datacenter-manually-disabling-storage-io-control/#comments</comments>
		<pubDate>Wed, 17 Oct 2012 15:31:01 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[SIOC]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[datastore]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[esxi 5.1]]></category>
		<category><![CDATA[remove]]></category>
		<category><![CDATA[sioc]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1347</guid>
		<description><![CDATA[I ran into this issue yesterday while reconnecting hosts in our vCenter Server following a complete reinstall - the reasons for which are a long story, but suffice to say that there were new certificates and the host passwords were encrypted with the old ones. The LUNs had been unpresented at the hardware level by [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1347" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="vmware logo" width="213" height="62" /></a>I ran into this issue yesterday while reconnecting hosts in our vCenter Server following a complete reinstall - the reasons for which are a long story, but suffice to say that there were new certificates and the host passwords were encrypted with the old ones.</p>
<p>The LUNs had been unpresented at the hardware level by the storage team, but had not been unmounted or removed from vCenter. This is *<strong>not</strong>* the way to remove storage - let me re-iterate: <a href="http://blogs.vmware.com/vsphere/2011/11/best-practice-how-to-correctly-remove-a-lun-from-an-esx-host.html">remove storage properly</a>. Unfortunately in this case the storage was removed badly - doing this can lead to a condition called "All Paths Down" or APD which is best explained by Cormac Hogan (@vmwarestorage) in the article <a href="http://blogs.vmware.com/vsphere/2011/08/all-path-down-apd-handling-in-50.html">Handling the All Paths Down (APD) condition</a>.</p>
<p><span id="more-1347"></span>When adding the hosts back into the cluster, I received the following message:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-12-005.png"><img class="alignnone size-medium wp-image-1348 colorbox-1347" title="Error adding host" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-12-005-300x53.png" alt="Datastore XXX conflicts with an existing datastore" width="300" height="53" /></a></p>
<blockquote><p><em>Reconnect host HostFQDN - </em><em>Datastore 'DatastoreName' conflicts with an existing datastore in the datacenter that has the same URL (ds:///vmfs/volumes/4f00008-4200009c-0000-5000000ba397/), but is backed by different physical storage.</em></p></blockquote>
<p>Looking at the datastore name I realised that the 3 datastores that were causing this issue had been part of a Storage Cluster, so I attempted to remove the storage - but faced this error:</p>
<blockquote><p><em>Call "HostDatastoreSystem.RemoveDatastore" for object "datastoreSystem-119955" on vCenter Server "DefinIT-VC01" failed. Cannot remove datastore 'DefinIT-006' because storage I/O Control is either enabled or running in statistics collection mode on it. Correct the problem and retry the operation.</em></p></blockquote>
<p>I also attempted to connect directly to the host using the Client and remove the storage - the same error occured. Connecting to the host in Tech Support Mode via SSH and removing with PowerCLI produced similar messages.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-001.png"><img class="alignnone size-medium wp-image-1350 colorbox-1347" title="2012-10-17 001" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-001-300x47.png" alt="" width="300" height="47" /></a></p>
<p>However, I already had the clue I needed to fix the problem - the error message states "storage I/O Control is either enabled or running in statistics collection mode". Each LUN was marked by SIOC because it was part of a Storage Cluster that leveraged StorageDRS with the I/O metric enabled. I verified this using PowerCLI - "Get-DataStore 'DefinIT-006' | fl" - you can see that StorageIOCOntrolEnabled is True and State is Unavailable.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-000.png"><img class="alignnone size-medium wp-image-1349 colorbox-1347" title="2012-10-17 000" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-000-300x106.png" alt="" width="300" height="106" /></a></p>
<p>The only way to remove them from this would be to remove them from the Storage Cluster. This would work if the hosts were connected to vCenter, but they were not - and I couldn't get them into vCenter BECAUSE of this condition! Catch22.</p>
<p>Googleing "manually disable sioc esxi" led me to a virtuallyGhetto article about <a href="http://www.virtuallyghetto.com/2010/10/does-sioc-actually-require-enterprise.html">enabling SIOC without vCenter </a>in which the solution was found!</p>
<h2>Manually Disable SIOC on a disconnected LUN and Remove from host</h2>
<p>I connected to a host via SSH and began...</p>
<p>First, I needed to find the Device Name of the missing storage using the following command:</p>
<pre class="brush: text; gutter: false">esxcli storage vmfs extent list | grep &#039;Definit-006&#039;</pre>
<p>Armed with the naa (or eui) name for the device I could then get the iormState value for the device:</p>
<pre class="brush: text; gutter: false">vsish -e get /storage/scsifw/devices/eui.001738004e4c0068/iormState</pre>
<p>This returned a value of 1597 - SIOC is enabled! According to the virtuallyGhetto article, a value of 1956 will disable SIOC, so I used the set command to write the value:</p>
<pre class="brush: text; gutter: false">vsish -e set /storage/scsifw/devices/eui.001738004e4c0067/iormState 1596</pre>
<p>This completed, I could now move on and attempt to remove the LUN (note that it takes a few seconds to update the setting, don't attempt to remove the device too quickly!):</p>
<pre class="brush: text; gutter: false">esxcli storage core device set -d eui.001738004e4c0067 --state=off</pre>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-003.png"><img class="alignnone size-medium wp-image-1353 colorbox-1347" title="2012-10-17 003" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-17-003-300x52.png" alt="" width="300" height="52" /></a><br />
After this, you can either manually rescan all HBAs on the host or I found that after a few minutes they disappeared from the host. Reconnecting the host was a success! I could see in the vCenter Client the progress of my work:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-16-003.png"><img class="alignnone size-medium wp-image-1352 colorbox-1347" title="2012-10-16 003" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-16-003-300x73.png" alt="" width="300" height="73" /></a></p>
<p>This procedure was required for each LUN on each host that was disconnected and in this state - fortunately only 4 hosts required this work.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/10/datastore-conflicts-with-an-existing-datastore-in-the-datacenter-manually-disabling-storage-io-control/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Host disk write latency errors – troubleshooting</title>
		<link>http://www.definit.co.uk/2012/10/host-disk-write-latency-errors-troubleshooting/</link>
		<comments>http://www.definit.co.uk/2012/10/host-disk-write-latency-errors-troubleshooting/#comments</comments>
		<pubDate>Fri, 05 Oct 2012 11:02:06 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1573</guid>
		<description><![CDATA[So recently we upgraded our cluster monitoring suite to it's latest iteration (Veeam ONE), it was not long before I began to receive emails from the monitor informing me of Host disk write latency "errors" (Datastore write latency had exceeded the defined threshold in the monitor) on several of the Datastores on our SAN. Naturally [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1573" alt="vmware logo" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>So recently we upgraded our cluster monitoring suite to it's latest iteration (Veeam ONE), it was not long before I began to receive emails from the monitor informing me of Host disk write latency "errors" (Datastore write latency had exceeded the defined threshold in the monitor) on several of the Datastores on our SAN.</p>
<p>Naturally I began the process of cross referencing backup routines and any heavy I/O routines that may have been running at the time the warning messages were generated. My conclusion was that even under average load these alerts were being generated, which was far from ideal even if we had not noticed any performance problems with any of the busy VMs.</p>
<p>After consulting the web/reference material and a few very knowledgable friends it was clear the first port of call was the Host Datastore Multipath policy. Upon quick inspection, all of the offending Datastores were configured with the Path Selection "Most Recently Used (vmware)". I had the option to set the Path Selection to "Round Robin (vmware)" but before doing so I double checked our MSA2312i SAN could support such a policy, which in this case it did.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/10/host-disk-write-latency-errors-troubleshooting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>vCenter 5.1 &#8211; Configuring vCenter Linked Mode</title>
		<link>http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/</link>
		<comments>http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/#comments</comments>
		<pubDate>Thu, 04 Oct 2012 15:42:20 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Inventory Service]]></category>
		<category><![CDATA[Linked Mode]]></category>
		<category><![CDATA[Single Sign On]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMware Server]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[vSphere Web Client]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1265</guid>
		<description><![CDATA[One thing we have been meaning to do for a while but haven't got round to is getting our Virtual Center Servers into "Linked" mode - essentially to provide a single pane of glass view of our entire virtual estate. One vCenter resides on the other side of our DMZ and manages hosts isolated for [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1265" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="" width="213" height="62" /></a>One thing we have been meaning to do for a while but haven't got round to is getting our Virtual Center Servers into "Linked" mode - essentially to provide a single pane of glass view of our entire virtual estate. One vCenter resides on the other side of our DMZ and manages hosts isolated for security purposes. I've created an IPSec server-to-server connection and allowed that through the firewall to secure traffic between the DMZ VC and LAN VC.</p>
<p>For the purposes of this, let's call them DefinIT-VC01.definit.co.uk and DefinIT-VC02.definit.test.<span id="more-1265"></span></p>
<h4>Linked Mode Pre-requisites</h4>
<p>As well as the normal vCenter Server pre-requisites, there are certain criteria you have to fulfil to be able to use linked mode too. These are taken from the docs here: <a href="http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.install.doc%2FGUID-7C9A1E23-7FCD-4295-9CB1-C932F2423C63.html">http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.install.doc%2FGUID-7C9A1E23-7FCD-4295-9CB1-C932F2423C63.html</a></p>
<blockquote><p><em>Linked Mode groups that contain both vCenter Server 5.x and versions of vCenter Server earlier than 5.0 are not supported. The vSphere Client does not function correctly with vCenter Servers in groups that have both version 5.x and pre-5.0 versions of vCenter Server. Do not join a version 5.x vCenter Server to pre-5.0 versions of vCenter Server, or pre-5.0 version of vCenter Server to a version 5.x vCenter Server. Upgrade any vCenter Server instance to version 5.0 or later before joining it to a version 5.x vCenter Server.</em></p></blockquote>
<p>Easy one to start with, both my vCenter Servers are 5.1!</p>
<blockquote><p><em>Make sure that all vCenter Servers in a Linked Mode group are registered to the same vCenter Single Sign On server.</em></p></blockquote>
<p>Not so easy - I need to register DefinIT-VC02 with DefinIT-VC01's Single Sign On service. This is possible using <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2033620">Repointing and reregistering VMware vCenter Server 5.1.x and components</a>, however if your install path is not the default the scripts do not work. There are references all over the place to "c:\Program Files" hard coded - even editing them as best I could I couldn't get it to work. In the end I removed everything from DefinIT-VC02 and reinstalled each component, skipping the SSO and pointing the Inventory Service, vCenter Server and WebClient to DefinIT-VC01.</p>
<blockquote><p><em>To join a Linked Mode group the vCenter Server must be in evaluation mode or licensed as a Standard edition. vCenter Server Foundation and vCenter Server Essentials editions do not support Linked Mode.</em></p></blockquote>
<p>Both VCs are installed with a vCenter Server Standard License.</p>
<blockquote><p><em>DNS must be operational for Linked Mode replication to work.</em></p></blockquote>
<p>Both VCs can resolve their own and each other's DNS names.</p>
<blockquote><p><em>The vCenter Server instances in a Linked Mode group can be in different domains if the domains have a two-way trust relationship. Each domain must trust the other domains on which vCenter Server instances are installed.</em></p></blockquote>
<p>The two domains do trust each other.</p>
<blockquote><p><em>When adding a vCenter Server instance to a Linked Mode group, the installer must be run by a domain user who is an administrator on both the machine where vCenter Server is installed and the target machine of the Linked Mode group.</em></p></blockquote>
<p>Both vCenter Servers are run using the same service account, and the Linked Mode Configuration will be run from this context.</p>
<blockquote><p><em>All vCenter Server instances must have network time synchronization. The vCenter Server installer validates that the machine clocks are not more than five minutes apart. See Synchronizing Clocks on the vSphere Network.</em></p></blockquote>
<p>Finally, check you're in time sync - 5 minutes is a big difference though, more tolerant than most applications!</p>
<h4>Configuring Linked Mode</h4>
<p>Running the Linked Mode Configuration tool was pretty straightforward, though it did get confused in the middle reporting errors that didn't exist. The steps are self-explanatory:</p>

<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-002/' title='vCenter Linked Mode Configuration #1'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-002-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="Begin the wizard" /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-003/' title='vCenter Linked Mode Configuration #2'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-003-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="Select the &quot;Modify&quot; option - this is an odd screen as it looks like it&#039;s already installed." /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-004/' title='vCenter Linked Mode Configuration #3'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-004-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="The only choice you&#039;ll have is to join this instance." /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-005/' title='vCenter Linked Mode Configuration #4'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-005-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="Specify the name of your &quot;first&quot; virtual center server" /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-006/' title='vCenter Linked Mode Configuration #5'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-006-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="Review the conflicts, mine had one which was the power users group, I let the wizard sort that out for me." /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-007/' title='vCenter Linked Mode Configuration #6'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-007-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="vCenter Linked Mode Configuration #6" /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-008-2/' title='vCenter Linked Mode Configuration #7'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-0081-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="This error was confusing, but I checked the logs (next image) and it says it all succeeded. I clicked yes." /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-009-2/' title='vCenter Linked Mode Configuration #8'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-0091-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="The log shows that the operation succeeded, and no errors were seen." /></a>
<a href='http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/2012-10-04-012/' title='vCenter Linked Mode Configuration #9'><img width="150" height="150" src="http://www.definit.co.uk/wp-content/uploads/2012/10/2012-10-04-012-150x150.png" class="attachment-thumbnail colorbox-1265 " alt="vSphere Web Client shows that both vCenter Servers are in Linked mode." /></a>

<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/10/vcenter-5-1-configuring-vcenter-linked-mode/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Converting vSphere Custom Attributes to Categories and Tags</title>
		<link>http://www.definit.co.uk/2012/09/converting-vsphere-custom-attributes-to-categories-and-tags/</link>
		<comments>http://www.definit.co.uk/2012/09/converting-vsphere-custom-attributes-to-categories-and-tags/#comments</comments>
		<pubDate>Tue, 25 Sep 2012 09:34:57 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[vSphere Web Client]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1254</guid>
		<description><![CDATA[In vSphere 5.1 "Tags" replace the old custom attributes to provide a way of adding metadata to vSphere objects. The "Tags" are organised into categories to "define how the tags can be applied to inventory objects". The easiest way to think of the difference is that custom attributes are "free text" and the tags are [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1254" title="VMware.jpg" alt="" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" width="213" height="62" /></a>In vSphere 5.1 "Tags" replace the old custom attributes to provide a way of adding metadata to vSphere objects. The "Tags" are organised into categories to "define how the tags can be applied to inventory objects". The easiest way to think of the difference is that custom attributes are "free text" and the tags are statically defined properties.</p>
<p>There is a wizard for converting custom attributes to tags, but it can get a bit confusing and is pretty poor - let me explain. We use four custom attributes in my current environment: CreatedBy, CreatedOn, Owner and ServiceType. CreatedBy contains the user ID of the person who created the VM, CreatedOn is the timestamp of when the VM was created, Owner is the Business Unit who own the server and ServiceType is the type of service - e.g. Active Directory, or SQL.</p>
<p><span id="more-1254"></span>CreatedBy is a fairly limited set of user IDs that don't change often, which I assumed lends itself quite well to the use of tags. The problem arises when you attempt to convert the attributes to tags. I ran the Wizard, filtered and selected all the CreatedBy Custom Attributes and moved on to the Create Tags page. This lists this Custom Attribute for each machine, and it's value, so clicked Next. I did this on two occasions and had two results - the first time the Wizard tried to validate the data and threw an error requiring each Tag to be unique, the second time it created two unique Tags and threw an error when it tried to create a new Tag that wasn't unique.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-007.png"><img class="alignnone size-thumbnail wp-image-1259 colorbox-1254" title="Convert custom attributes" alt="" src="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-007-150x150.png" width="150" height="150" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-002.png"><img class="alignnone size-thumbnail wp-image-1260 colorbox-1254" title="Migrate Custom Attributes - Instructions" alt="Migrate Custom Attributes - Instructions" src="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-002-150x150.png" width="150" height="150" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-003.png"><img class="alignnone  wp-image-1261 colorbox-1254" title="Migrate Custom Attributes - Select attributes" alt="Migrate Custom Attributes - Select attributes" src="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-003-150x150.png" width="150" height="150" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-005.png"><img class="alignnone size-thumbnail wp-image-1262 colorbox-1254" title="Migrate Custom Attributes - Create Categories" alt="Migrate Custom Attributes - Create Categories" src="http://www.definit.co.uk/wp-content/uploads/2012/09/2012-09-24-005-150x150.png" width="150" height="150" /></a></p>
<p>The problem is that the Wizard does not merge the custom attributes together when creating the tags, it tries to create a unique tag per custom attribute assigned. This is a seriously half-baked implementation! "Owner" and "Service Type" face the same problem as "CreatedBy" - there is no logical merging of attribute values to create Tags. I can create the Tags by carefully selecting one of each value, but I then need to manually assign the new Tags to each VM which would take an untenable amount of manual labour.</p>
<p>It also becomes a problem when you think of the CreatedOn field, which contains as many unique values as we have Virtual Machines. This isn't manageable as we'd need to create a new Tag every time there was a new timestamp. We decided to abandon this attribute as it's of limited value and there are other ways to determine when the VM was created (e.g. server commissioning forms).</p>
<p>The solution? At present there is no way to programattically add or remove, or assign tags and categories. This was confirmed to me by Alan Renouf (@alanrenouf) on twitter, and Luc Dekens (@LucD) on the <a href="http://communities.vmware.com/message/2119885#2119885">VMware Communities forums</a>. LucD pointed to an <a href="http://www.virtuallyghetto.com/2011/06/vsphere-tagging-feature-not-so.html">article on VirtuallyGhetto</a> regarding the Managed Object Browser (MOB) which allows for the creation of tags, but this doesn't help me much.</p>
<!-- tweet id : 250261571832516608 --><style type='text/css'>#bbpBox_250261571832516608 a { text-decoration:none; color:#1F98C7; }#bbpBox_250261571832516608 a:hover { text-decoration:underline; }</style><div id='bbpBox_250261571832516608' class='bbpBox' style='padding:20px; margin:5px 0; background-color:#C6E2EE; background-image:url(http://a0.twimg.com/profile_background_images/400532442/twilk_background_4f10c2fd46bb6.jpg); background-repeat:no-repeat'><div style='background:#fff; padding:10px; margin:0; min-height:48px; color:#663B12; -moz-border-radius:5px; -webkit-border-radius:5px;'><span style='width:100%; font-size:18px; line-height:22px;'>@<a href="http://twitter.com/intent/user?screen_name=sammcgeown" class="twitter-action">sammcgeown</a> @<a href="http://twitter.com/intent/user?screen_name=lucd22" class="twitter-action">lucd22</a> no unfortunately not, it's a private API at the moment</span><div class='bbp-actions' style='font-size:12px; width:100%; padding:5px 0; margin:0 0 10px 0; border-bottom:1px solid #e6e6e6;'><img class="colorbox-1254"  align='middle' src='http://www.definit.co.uk/wp-content/plugins/twitter-blackbird-pie//images/bird.png' /><a title='tweeted on 24/09/2012 3:53 pm' href='http://twitter.com/#!/alanrenouf/status/250261571832516608' target='_blank'>24/09/2012 3:53 pm</a> via <a href="http://twitter.com/download/iphone" rel="nofollow" target="blank">Twitter for iPhone</a><a href='https://twitter.com/intent/tweet?in_reply_to=250261571832516608&related=@sammcgeown' class='bbp-action bbp-reply-action' title='Reply'><span><em style='margin-left: 1em;'></em><strong>Reply</strong></span></a><a href='https://twitter.com/intent/retweet?tweet_id=250261571832516608&related=@sammcgeown' class='bbp-action bbp-retweet-action' title='Retweet'><span><em style='margin-left: 1em;'></em><strong>Retweet</strong></span></a><a href='https://twitter.com/intent/favorite?tweet_id=250261571832516608&related=@sammcgeown' class='bbp-action bbp-favorite-action' title='Favorite'><span><em style='margin-left: 1em;'></em><strong>Favorite</strong></span></a></div><div style='float:left; padding:0; margin:0'><a href='http://twitter.com/intent/user?screen_name=alanrenouf'><img class="colorbox-1254"  style='width:48px; height:48px; padding-right:7px; border:none; background:none; margin:0' src='http://a0.twimg.com/profile_images/2611901964/aLo5gd3d_normal' /></a></div><div style='float:left; padding:0; margin:0'><a style='font-weight:bold' href='http://twitter.com/intent/user?screen_name=alanrenouf'>@alanrenouf</a><div style='margin:0; padding-top:2px'>Alan Renouf</div></div><div style='clear:both'></div></div></div><!-- end of tweet -->
<p>All in all, I love the new feature of Tags, it shows that VMware have thought about even this small portion of functionality (e.g. the cardinality, see below) - I just hope the wizard gets improved (or at least the PowerCLI team can access the APIs!) I also love the new web client, and despite some "we don't like change" rumblings from people around me, they are all getting used to it and enjoying it.</p>
<p><strong><em>A small explanation of the Cardinality of tags.</em></strong></p>
<p><em>There are some tags which you only need one value assigned to an object, for example if you used "Priority" as a Category and "High", "Medium" and "Low" as the available tags, you don't want to be able to tag a VM with both "High" and "Low". For this I would set the Category Cardinality for "Priority" to "1 tag per object". Conversely, there are some Categories which it would be great to be able to use multiple, for example my "ServiceType" category. I may have a Domain Controller which is also a DNS, SQL and DHCP server - I can add all those tags if I set the Cardinality to "Many tags per object".</em></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/09/converting-vsphere-custom-attributes-to-categories-and-tags/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Site to Site VPN Tunnel traffic flow problems</title>
		<link>http://www.definit.co.uk/2012/08/site-to-site-vpn-tunnel-traffic-flow-problems/</link>
		<comments>http://www.definit.co.uk/2012/08/site-to-site-vpn-tunnel-traffic-flow-problems/#comments</comments>
		<pubDate>Wed, 29 Aug 2012 10:58:49 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Sonicwall]]></category>
		<category><![CDATA[VPN]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1571</guid>
		<description><![CDATA[Firewalls being used – Sonicwall 3500 &#38; Cisco 506e Several months ago we relocated and it was then necessary to setup a Site to Site VPN tunnel with another network. (In this instance the other network was not directly managed by us) Upon the creation of the tunnel and after successful traffic tests all looked [...]]]></description>
				<content:encoded><![CDATA[<p>Firewalls being used – Sonicwall 3500 &amp; Cisco 506e</p>
<p>Several months ago we relocated and it was then necessary to setup a Site to Site VPN tunnel with another network. (In this instance the other network was not directly managed by us)</p>
<p>Upon the creation of the tunnel and after successful traffic tests all looked well. However after several hours or less in some cases traffic stopped flowing yet both firewalls reported the tunnel as “up”. We reviewed the first and second phase settings and tweaked the Sonicwall VPN settings to hopefully remedy.</p>
<p>Options on the Sonicwall such as “Enable IKE Dead Peer Detection” &amp; “Enable Keep Alive” were enabled and disabled to try and find a fix for the VPN traffic flow problem.</p>
<p>What was interesting during the troubleshooting process, we found that if we manually restarted the VPN tunnel it would resume with no issue, but obviously this was hardly a practical fix for our issues.</p>
<p>Liaising with the other site we also experimented with Phase 1 and Phase 2 Life Time settings with no success.</p>
<p>It was then we had a small eureka moment, we decided to check the time servers each firewall referenced. It transpired the Time Server being referenced by the Cisco Firewall was out of sync (it was an internally hosted NTS)</p>
<p>After the offending NTS had been re-sync’d we decided to completely recreate the VPN tunnel double checking the settings as we went along. The VPN Tunnel came up with no issues and has been stable ever since.</p>
<p>I would add if we encounter a problem like this again I would simply point both Firewalls to the same NTS but as one of the firewalls in this case was managed by a third party this was not an option.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/08/site-to-site-vpn-tunnel-traffic-flow-problems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>vSphere HA agent for host [Host&#039;s Name] has an error in [Cluster&#039;s Name] in [Datacenter&#039;s Name]: vSphere HA agent cannot be correctly installed or configured</title>
		<link>http://www.definit.co.uk/2012/08/vsphere-ha-agent-for-host-hosts-name-has-an-error-in-clusters-name-in-datacenters-name-vsphere-ha-agent-cannot-be-correctly-installed-or-configured/</link>
		<comments>http://www.definit.co.uk/2012/08/vsphere-ha-agent-for-host-hosts-name-has-an-error-in-clusters-name-in-datacenters-name-vsphere-ha-agent-cannot-be-correctly-installed-or-configured/#comments</comments>
		<pubDate>Fri, 24 Aug 2012 10:23:05 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[DRS/HA]]></category>
		<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[facepalm]]></category>
		<category><![CDATA[ha]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1237</guid>
		<description><![CDATA[Here's a lesson in checking the basics! I added new ESXi 5 host to a cluster today and spent a good couple of hours troubleshooting the error: vSphere HA agent for host [Host's Name] has an error in [Cluster's Name] in [Datacenter's Name]: vSphere HA agent cannot be correctly installed or configured After a few [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1237" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="" width="213" height="62" /></a>Here's a lesson in checking the basics! I added new ESXi 5 host to a cluster today and spent a good couple of hours troubleshooting the error:</p>
<blockquote><p><span style="font-size: small;">vSphere HA agent for host [Host's Name] has an error in [Cluster's Name] in [Datacenter's Name]: vSphere HA agent cannot be correctly installed or configured </span></p></blockquote>
<p><span style="font-size: small;">After a few basic checks, migrating the host in and out of the cluster and rebooting, I headed off to google and began troubleshooting.</span></p>
<p><a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2007739">Cannot install the vSphere HA (FDM) agent on an ESXi host </a>- this article suggests that the host is in lockdown mode. This is unlikely since we don't use lockdown mode, but I checked anyway:</p>
<pre class="brush: powershell; gutter: false">Get-vmhost esxi001.definit.co.uk | select Name,@{N=&quot;LockDown&quot;;E={$_.Extensiondata.Config.adminDisabled}} | ft -auto Name,LockDown</pre>
<p>This returned false - no lockdown.</p>
<p>To exit lockdown mode, you can use:</p>
<pre class="brush: powershell; gutter: false">(get-vmhost esx001.definit.co.uk | get-view).ExitLockdownMode()</pre>
<p>I spent a good amount of time going through the list on <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1001596">Troubleshooting VMware High Availability (HA) in vSphere</a> which isn't entirely ESXi relevant but has some good pointers nonetheless.</p>
<p>I finally got to <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2008609">Reconfiguring HA (FDM) on a cluster fails with the error: Operation timed out</a>, with the following gem of info:</p>
<blockquote><p><em> This issue occurs if the vSphere High Availability Agent service on the ESXi host is stopped.    </em></p></blockquote>
<p>*Facepalm* - I checked the services and set the service to start and stop automatically. HA is now happily configured.</p>
<p>No matter how much you know, you gotta check the basics!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/08/vsphere-ha-agent-for-host-hosts-name-has-an-error-in-clusters-name-in-datacenters-name-vsphere-ha-agent-cannot-be-correctly-installed-or-configured/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>vMA 5: Cannot initialize property &#8216; vami.DNS0.vSphere_Management_Assistant_(vMA)&#8217;</title>
		<link>http://www.definit.co.uk/2012/08/vma-5-cannot-initialize-property-vami-dns0-vsphere_management_assistant_vma/</link>
		<comments>http://www.definit.co.uk/2012/08/vma-5-cannot-initialize-property-vami-dns0-vsphere_management_assistant_vma/#comments</comments>
		<pubDate>Thu, 23 Aug 2012 17:25:59 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[vMA]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[vapp]]></category>
		<category><![CDATA[vma]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1230</guid>
		<description><![CDATA[Just a quick post regarding the vSphere Management Assistant 5 - when deploying the vMA with a static IP address, you might see the following error: Power On virtual machine &#60;VM name&#62; Cannot initialize property ' vami.DNS0.vSphere_Man- agement_Assistant_(vMA)' , since network '&#60;network name&#62;' has no associated IP pool configuration. Edit the vMA virtual machine's properties and go [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="alignright size-full wp-image-609 colorbox-1230" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="" width="213" height="62" /></a>Just a quick post regarding the vSphere Management Assistant 5 - when deploying the vMA with a static IP address, you might see the following error:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-23-002.png"><img class="alignnone size-medium wp-image-1231 colorbox-1230" title="vMA Error" src="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-23-002-300x70.png" alt="vMA Error" width="300" height="70" /></a></p>
<blockquote><p>Power On virtual machine &lt;VM name&gt; Cannot initialize property ' vami.DNS0.vSphere_Man- agement_Assistant_(vMA)' , since network '&lt;network name&gt;' has no associated IP pool configuration.</p></blockquote>
<p>Edit the vMA virtual machine's properties and go to Options, vApp Options and select disable. Acknowledge the warning and click OK to close the VM properties.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-23-003.png"><img class="alignnone size-medium wp-image-1232 colorbox-1230" title="Disable vApp Options" src="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-23-003-300x267.png" alt="Disable vApp Options" width="300" height="267" /></a></p>
<p>The vMA booted fine after that - the solution comes from <a href="http://communities.vmware.com/message/1887178">this vmware communities post</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/08/vma-5-cannot-initialize-property-vami-dns0-vsphere_management_assistant_vma/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VMware ESXi Maximum paths includes local storage</title>
		<link>http://www.definit.co.uk/2012/08/vmware-esxi-maximum-paths-includes-local-storage/</link>
		<comments>http://www.definit.co.uk/2012/08/vmware-esxi-maximum-paths-includes-local-storage/#comments</comments>
		<pubDate>Mon, 20 Aug 2012 09:45:16 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESX/ESXi 3.5]]></category>
		<category><![CDATA[ESX/ESXi 4]]></category>
		<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[local]]></category>
		<category><![CDATA[paths]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1217</guid>
		<description><![CDATA[If you are close to the VMware ESXi storage path limit of 1024 paths per host, you may want to consider the following: local storage, including CD-ROMs, are counted in your total paths. Simply because of the size and age of the environment, some of our production clusters have now reached the limit (including local paths) [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="size-full wp-image-609 alignright colorbox-1217" title="VMware.jpg" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="" width="213" height="62" /></a>If you are close to the VMware ESXi storage path limit of 1024 paths per host, you may want to consider the following: <strong>local storage, including CD-ROMs, are counted in your total paths</strong>.</p>
<p>Simply because of the size and age of the environment, some of our production clusters have now reached the limit (including local paths) - you see this message in the logs</p>
<blockquote><p>[2012-08-20 01:48:52.256 77C3DB90 info 'ha-eventmgr'] Event 2003 : The maximum number of supported paths of 1024 has been reached. Path vmhba3:C0:T4:L0 could not be added.</p></blockquote>
<p><span id="more-1217"></span>In this state the hosts drop SAN LUNs because they can't drop the locally attached storage, even though we are not using it. You can see how many paths are being used on a specific host by selecting the host, going to Configuration &gt; Storage Adapters and selecting the local storage adaptor:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-20-000.png"><img class="alignnone size-medium wp-image-1218 colorbox-1217" title="Local HBA path count" src="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-20-000-300x190.png" alt="" width="300" height="190" /></a></p>
<p>In fact you can see that this IBM blade is registering two local paths, one for the storage and one for the ServeRAID and one for the disk enclosure. Removing some LUNs reduced the number of paths and, now that it's fixed, if I look at the Fibre Channel HBAs you can see that each one has 126 LUNs and 4 targets making 504 paths, there are two Fibre HBAs and 2 local paths making a total of 1010 paths (504*2 + 2 = 1010).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-20-001.png"><img class="alignnone size-medium wp-image-1220 colorbox-1217" title="504 Paths" src="http://www.definit.co.uk/wp-content/uploads/2012/08/2012-08-20-001-300x213.png" alt="" width="300" height="213" /></a></p>
<p>Before we removed some LUNs, one adaptor had 512 LUNs and the other 510 - if you add the local adaptor paths that makes you 1024 paths (512 + 510 + 2 = 1024). This meant that the LUN in the error message had been dropped to satisfy the limit.</p>
<p>Of course, you want to avoid being this close to the limit: but if like me there are compelling requirements to be this close, make sure you factor in the local storage!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/08/vmware-esxi-maximum-paths-includes-local-storage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Upgrading to ESXi 5.0 Update 1 using VMware Update Manager</title>
		<link>http://www.definit.co.uk/2012/07/upgrading-to-esxi-5-0-update-1-using-vmware-update-manager/</link>
		<comments>http://www.definit.co.uk/2012/07/upgrading-to-esxi-5-0-update-1-using-vmware-update-manager/#comments</comments>
		<pubDate>Thu, 19 Jul 2012 15:34:30 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESXi 5]]></category>
		<category><![CDATA[Microsoft Cluster Services]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[esx]]></category>
		<category><![CDATA[esxi 5]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[update manager]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1194</guid>
		<description><![CDATA[I'm currently updating a very small 4-host cluster built for a specific application within our datacentre, the hosts are IBM HS22 blades. Since we have the VMware Update Manager infrastructure in place already, I downloaded the IBM ESXi 5.0 Update 2 ISO and imported it into Update Manager, created a baseline and then applied it [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg"><img class="size-full wp-image-609 alignright colorbox-1194" style="margin: 10px;" title="VMware" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="VMware" width="213" height="62" /></a>I'm currently updating a very small 4-host cluster built for a specific application within our datacentre, the hosts are IBM HS22 blades. Since we have the VMware Update Manager infrastructure in place already, I downloaded the IBM ESXi 5.0 Update 2 ISO and imported it into Update Manager, created a baseline and then applied it to the cluster. I scanned the cluster with the baseline and was issued this warning for each host:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-18-001.png"><img class="alignnone size-medium wp-image-1195 colorbox-1194" title="HS22 Upgrade Error 1" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-18-001-300x99.png" alt="HS22 Upgrade Error 1" width="300" height="99" /></a></p>
<p>That's fine - there is an option to remove those modules when you remediate the host.<span id="more-1194"></span></p>
<h3>Part 1 - Upgrading doesn't go entirely to plan</h3>
<p>I went ahead and remediated my first host, which was duly placed in maintenance mode and then bombed out at 7% complete with the error:</p>
<blockquote>
<div id="_mcePaste">Software or system configuration of host &lt;hostname&gt; is incompatible. Check scan results for details.</div>
</blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-18-002.png"><img class="alignnone  wp-image-1196 colorbox-1194" title="Error #2" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-18-002.png" alt="" width="669" height="74" /></a></p>
<p>Searching for this error led me to<a href="http://communities.vmware.com/message/2066589"> this Communities post </a> which in turn pointed to a VMware KB which recommends disabling the Ethernet over USB interface on the blade configuration: <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2006133">http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2006133</a></p>
<p><em>The Ethernet over USB interface is only used if you have the IBM management agents installed - this cluster did not.</em></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-001.png"><img class="alignnone size-medium wp-image-1201 colorbox-1194" title="Disable Ethernet over USB" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-001-300x254.png" alt="Disable Ethernet over USB" width="300" height="254" /></a></p>
<p>Once I'd change this the Upgrade worked on 1 out of 4 blades -  the remaining 3 threw this error (at the annoyingly late stage of 92%!):</p>
<blockquote><p>Cannot execute upgrade script on host.</p></blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-002.png"><img class="alignnone size-medium wp-image-1204 colorbox-1194" title="ESX 5 upgrade error 2" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-002-300x36.png" alt="ESX 5 upgrade error 2" width="300" height="36" /></a></p>
<p>A further search took me to <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2007163">Upgrading from ESXi 4.0 Update 1 or Update 2 to ESXi 5.0 using vCenter Update Manager fails with the error: Cannot run upgrade script on host</a>. I didn't have the errors in the vua.log, but following the procedure did resolve the issue on a further 2 of the hosts.</p>
<p>The resolution is to SSH to the host in question and browse to the /bootbank folder. List the contents and you see a state.xxxxxxx folder - move inside the folder and you see a local.tgz file. The KB tells you to move that file to the parent folder and try again.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-003.png"><img class="alignnone size-medium wp-image-1205 colorbox-1194" title="Fix the cannot execute script error" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-003-300x186.png" alt="Fix the cannot execute script error" width="300" height="186" /></a></p>
<p>The final hurdle to upgrading was to remove the space in the name of the management network on the remaining host. <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2006254">Upgrading from ESXi 4.x to ESXi 5.0 using Update Manager fails with the error: integrity.fault.HostUpgradeRunScriptFailure</a> points to the port group name for the Management Network needing to be less than 20 characters - which the default ("Management Network")  is. Since our management network is left to default, I moved on - but later read a forum post mentioning the need to remove spaces.</p>
<p>Finally the install process was working - however there were other issues once I'd upgraded!</p>
<h3>Part 2 - MSCS RDM LUNs and ESXi 5 cause an incredibly long boot time</h3>
<p>The hosts took an <em>exceedingly </em>long time (read 1-2 hours) to progress past "vmw_satp_alua loaded successfully" - Alt-F12 showed that the boot was going forward but I'm talking 3 hours in total to boot!  Subsequent reboots did not improve the situation, and this wasn't an issue with the ESXi 4 installation.  We have RDMs attached to these hosts for MSCS, and this led me to this article: <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1016106">ESX/ESXi hosts hosting passive MSCS nodes with RDM LUNs may take a long time to boot</a>. (If you use iSCSI <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=2007108">this VMware KB</a> is more relevant).</p>
<p>All four of hosts have the RDM luns presented and although only two of the hosts actually run the Microsoft Cluster Services, the slow boot affected all four. The problem is that when the host boots it tries to claim all LUNs that it can see - including the RDMs which are reserved for the Cluster. As the doc puts it better than me:</p>
<blockquote><p>ESXi 5.0 uses a different technique to determine if Raw Device Mapped (RDM) LUNs are used for MSCS cluster devices, by introducing a configuration flag to mark each device as "perennially reserved" that is participating in an MSCS cluster. <strong>During a boot of an ESXi system the storage mid-layer attempts to discover all devices presented to an ESXi system during device claiming phase. However, MSCS LUNs that have a permanent SCSI reservation cause the boot process to elongate as the ESX cannot interrogate the LUN due to the persistent SCSI reservation</strong> placed on a device by an active MSCS Node hosted on another ESXi host.</p></blockquote>
<p>Following the procedure in the VMware KB, I found the naa.xxx ID for each the 14 RDM LUNs (and had to manually type them out, grrr) and then enabled SSH on the newly upgraded hosts to send the following command:</p>
<pre class="brush: text; gutter: false">esxcli storage core device setconfig -d naa.6005076307ffc7930000000000000103 --perennially-reserved=true</pre>
<p>and verified it with the command</p>
<pre class="brush: text; gutter: false">esxcli storage core device list -d naa.6005076307ffc7930000000000000103</pre>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-000.png"><img class="alignnone size-medium wp-image-1202 colorbox-1194" title="Is perennially reserved = true" src="http://www.definit.co.uk/wp-content/uploads/2012/07/2012-07-19-000-300x217.png" alt="Is perennially reserved = true" width="300" height="217" /></a></p>
<p>Rebooting then took about 10 minutes, most of which was the UEFI. Unfortunately this process needed to be run on each host, and each host had to boot with the RDM LUNs connected to then be able to change their reservation. Unfortunately, with each host taking several hours to boot through the 14 RDMs, stepping through to upgrde the cluster hosts took an awful long time! I'm not looking forward to doing the "big" clusters with 20, 30 and 50 hosts.</p>
<p>Sam</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/07/upgrading-to-esxi-5-0-update-1-using-vmware-update-manager/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing a TMG Enterprise Management Server and Migrating and Existing Standalone Array: Part 1</title>
		<link>http://www.definit.co.uk/2012/06/installing-a-tmg-enterprise-management-server-and-migrating-and-existing-standalone-array-part-1/</link>
		<comments>http://www.definit.co.uk/2012/06/installing-a-tmg-enterprise-management-server-and-migrating-and-existing-standalone-array-part-1/#comments</comments>
		<pubDate>Tue, 12 Jun 2012 11:21:47 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Firewall]]></category>
		<category><![CDATA[Forefront Threat Management Gateway]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[ems]]></category>
		<category><![CDATA[enterprise]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[threat]]></category>
		<category><![CDATA[TMG]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1108</guid>
		<description><![CDATA[This is my current scenario: there are two existing servers in a stand-alone array - TMG01 and TMG02, and over in a DR site there is a new server (TMG03) that is in the process of being built. To comply with DR, all 3 servers must have their configurations up to date, however there is [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010.png"><img class="alignright  wp-image-780 colorbox-1108" title="TMG2010.png" src="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010-300x147.png" alt="" width="240" height="118" /></a>This is my current scenario: there are two existing servers in a stand-alone array - TMG01 and TMG02, and over in a DR site there is a new server (TMG03) that is in the process of being built. To comply with DR, all 3 servers must have their configurations up to date, however there is no direct communication allowed between the two DMZs, so simply adding to the new server as an array member is not possible.</p>
<p>Fortunately, IPSec is allowed between each DMZ and the management DMZ so the plan is to configure IPSec between a new Enterprise Management Server in the Management DMZ (we''ll call it EMS01) and each of the three TMG servers.</p>
<h2><span id="more-1108"></span>Configuring the IPSec connection</h2>
<p>There's nothing fancy about this, just a plain ol' IPSec setup:</p>
<p>Create a new IPSec Policy using the wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-009.png"><img class="alignnone size-medium wp-image-1116 colorbox-1108" title="IPSec Policy 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-009-300x203.png" alt="" width="300" height="203" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-010.png"><img class="alignnone size-medium wp-image-1117 colorbox-1108" title="IPSec Policy Wizard 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-010-300x240.png" alt="" width="300" height="240" /></a></p>
<p>The policy does not specify a tunnel (it's host-to-host) and we can keep it set to all network connections</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-011.png"><img class="alignnone  wp-image-1118 colorbox-1108" title="IPSec Wizard 2" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-011-300x228.png" alt="" width="300" height="228" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-012.png"><img class="alignnone size-medium wp-image-1119 colorbox-1108" title="IPSec Wizard 3" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-012-300x240.png" alt="" width="300" height="240" /></a></p>
<p>Add an IP Filter list and name it accordingly - click Add to start the IP Filter Wizard and create an entry description from EMS01 to TMG01 - ensure the Mirrored option is checked.</p>
<p> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-013.png"><img class="alignnone  wp-image-1120 colorbox-1108" title="IPSec Wizard 5" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-013-300x217.png" alt="" width="300" height="217" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-014.png"><img class="alignnone size-medium wp-image-1121 colorbox-1108" title="IPSec Wizard 06" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-014-300x233.png" alt="" width="300" height="233" /></a></p>
<p>Add the IP address of EMS01 as the source, and TMG01 as the destination</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-015.png"><img class="alignnone size-medium wp-image-1122 colorbox-1108" title="IPSec Wizard 7" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-015-300x233.png" alt="" width="300" height="233" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-016.png"><img class="alignnone size-medium wp-image-1123 colorbox-1108" title="IPSec Wizard 8" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-016-300x233.png" alt="" width="300" height="233" /></a></p>
<p>We want to encrypt any traffic between these servers, and finish the wizard. Repeat this process (using the IP Filter Wizard) to add entries for all of the servers you wish to secure communications between. I created three rules, "EMS01 to TMG01", "EMS01 to TMG02" and "EMS01 to TMG03". Ensure the filter just created is selected and click Next.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-017.png"><img class="alignnone size-medium wp-image-1124 colorbox-1108" title="IPSec Wizard 8" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-017-300x232.png" alt="" width="300" height="232" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-018.png"><img class="colorbox-1108"  title="IPSec Wizard 9" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-018-300x240.png" alt="" width="300" height="240" /></a></p>
<p>Create a filter using the Filter Action wizard, named appropriately and set to negotiate security</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-019.png"><img class="alignnone size-medium wp-image-1126 colorbox-1108" title="IPSec Wizard 10" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-019-300x229.png" alt="" width="300" height="229" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-020.png"><img class="alignnone size-medium wp-image-1127 colorbox-1108" title="IPSec Wizard 11" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-020-300x229.png" alt="" width="300" height="229" /></a></p>
<p>Deny unsecured communication and require the Integrity and encryption option.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-021.png"><img class="alignnone size-medium wp-image-1128 colorbox-1108" title="IPSec Wizard 12" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-021-300x230.png" alt="" width="300" height="230" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-022.png"><img class="alignnone size-medium wp-image-1129 colorbox-1108" title="IPSec Wizard 13" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-022-300x230.png" alt="" width="300" height="230" /></a></p>
<p>As all servers are domain members we can use Kerberos authentication. Finish the wizards</p>
<p>.<a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-023.png"><img class="alignnone size-medium wp-image-1130 colorbox-1108" title="IPSec Wizard 14" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-023-300x240.png" alt="" width="300" height="240" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-024.png"><img class="alignnone  wp-image-1131 colorbox-1108" title="IPSec Wizard 15" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-024-271x300.png" alt="" width="194" height="238" /></a></p>
<p>With the policy now created but unassigned, right click "IP Security Policies on Local Computer" and select "All Tasks &gt; Export Policies...". Copy the created .ipsec file to the other servers in the array and import the file.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-027.png"><img class="colorbox-1108"  title="IPSec Import" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-027-300x86.png" alt="" width="300" height="86" /></a></p>
<p>Add the new TMG EMS server to the Array Servers group within the existing TMG array and create a new rule allowing IPSec (add "IKE Client" and "IPSec ESP") from and to "Array Servers" and "localhost" - this is critical as without it, we will not be able to communicate between these servers.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-026.png"><img class="size-medium wp-image-1133 alignnone colorbox-1108" title="IPSec TMG Rule" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-026-300x58.png" alt="" width="300" height="58" /></a></p>
<p>Finally, we are ready to "Assign" the IPSec policies on all TMG servers - I assigned it on EMS01 and TMG01 first and fired a ping to check the IPSec communication was working.</p>
<p> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-025.png"><img class="alignnone size-medium wp-image-1132 colorbox-1108" title="IPSec Assign Policy" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-025-300x152.png" alt="" width="300" height="152" /></a></p>
<p><em>Troubleshooting note: you can add "IP Security Monitor" snap-in to an MMC console to monitor the IPSec communication.</em></p>
<h2> Installing the TMG Enterprise Management Server</h2>
<p>Run the Preparation Tool, selecting the Enterprise Management Server option and ensure all the pre-requisites are installed.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/Image-002.png"><img class="size-medium wp-image-1109 alignnone colorbox-1108" title="TMG EMS Install Wizard 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/Image-002-300x226.png" alt="" width="300" height="226" /></a></p>
<p>Accept the EULA and enter your license and company details. Set the installation path and then select the option to Create a new enterprise configuration.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-000.png"><img class="alignnone size-medium wp-image-1110 colorbox-1108" title="TMG EMS Install Wizard 2" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-000-300x226.png" alt="" width="300" height="226" /></a></p>
<p>Enter a name and description for the Enterprise</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-001.png"><img class="alignnone size-medium wp-image-1111 colorbox-1108" title="TMG EMS Install Wizard 3" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-001-300x225.png" alt="" width="300" height="225" /></a></p>
<p>Since all my TMG servers are in a single domain, I will chose the Single Domain Deployment.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-002.png"><img class="alignnone size-medium wp-image-1112 colorbox-1108" title="TMG EMS Install Wizard 4" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-002-300x225.png" alt="" width="300" height="225" /></a></p>
<p>Hit install and watch the blue bar until completion</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-003.png"><img class="alignnone size-medium wp-image-1113 colorbox-1108" title="TMG EMS Install Wizard 5" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-003-300x226.png" alt="" width="300" height="226" /></a></p>
<p>Firing up the console you can see the Enterprise configuration and Arrays.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-005.png"><img class="alignnone size-medium wp-image-1114 colorbox-1108" title="TMG EMS Installed" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-005-300x187.png" alt="" width="300" height="187" /></a></p>
<p>Log on to the TMG stand-alone array and export the configuration to file.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-006.png"><img class="alignnone size-full wp-image-1115 colorbox-1108" title="TMG Export Configuration" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-006.png" alt="" width="286" height="218" /></a></p>
<p>Run through the Export Wizard, ensuring that you export the confidential information and password protect it</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-028.png"><img class="alignnone size-medium wp-image-1135 colorbox-1108" title="TMG Export 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-028-300x230.png" alt="" width="300" height="230" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-029.png"><img class="alignnone size-medium wp-image-1136 colorbox-1108" title="TMG Export 2" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-029-300x232.png" alt="" width="300" height="232" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-030.png"><img class="alignnone size-medium wp-image-1137 colorbox-1108" title="TMG Export 3" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-030-300x230.png" alt="" width="300" height="230" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-031.png"><img class="alignnone  wp-image-1138 colorbox-1108" title="TMG Export 4" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-031-300x231.png" alt="" width="300" height="231" /></a></p>
<p>Copy the exported config file over to EMS01, log on to the server and open the TMG console.</p>
<h2>Importing the TMG Array Configuration to the Enterprise Management Server</h2>
<p>Right click Arrays and select "New Array..."  and then match the array name exactly to the existing array</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-032.png"><img class="alignnone  wp-image-1139 colorbox-1108" title="TMG New Array" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-032-300x193.png" alt="" width="300" height="193" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-033.png"><img class="alignnone size-medium wp-image-1140 colorbox-1108" title="New Array Wizard" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-033-300x230.png" alt="" width="300" height="230" /></a></p>
<p><em>Match the Array DNS name exactly</em>, and select the Default Policy</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-034.png"><img class="alignnone size-medium wp-image-1141 colorbox-1108" title="TMG Array DNS" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-034-300x230.png" alt="" width="300" height="230" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-035.png"><img class="alignnone size-medium wp-image-1142 colorbox-1108" title="TMG Array Policy" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-035-300x231.png" alt="" width="300" height="231" /></a></p>
<p>Ensure that all 3 policy types are checked and finish the wizard, but don't apply the configuration yet! Right click on the array and select "Import (Restore)..."</p>
<p> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-036.png"><img class="alignnone  wp-image-1143 colorbox-1108" title="TMG Array Policy Rule Types" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-036-300x229.png" alt="" width="300" height="229" /></a>  <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-037.png"><img class="alignnone size-medium wp-image-1144 colorbox-1108" title="TMG Import config" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-037-300x190.png" alt="" width="300" height="190" /></a></p>
<p>Select the file we created before and select the option to "Overwrite (restore)"</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-038.png"><img class="alignnone size-medium wp-image-1145 colorbox-1108" title="TMG Import Config" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-038-300x230.png" alt="" width="300" height="230" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-039.png"><img class="alignnone size-medium wp-image-1146 colorbox-1108" title="TMG Overwrite Config" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-039-300x230.png" alt="" width="300" height="230" /></a></p>
<p>Select "Import server-specific information" and "Import user permission settings" and enter the password</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-040.png"><img class="alignnone size-medium wp-image-1147 colorbox-1108" title="TMG Import Preferences" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-040-300x231.png" alt="" width="300" height="231" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-041.png"><img class="alignnone size-medium wp-image-1148 colorbox-1108" title="TMG Import Password" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-041-300x230.png" alt="" width="300" height="230" /></a></p>
<p>If you get the following error, ensure the EMS is at the same patch level as the array servers</p>
<blockquote><p>Error 0xc0040399 - The XML file cannot be imported to this version of Forefront TMG. Install the latest version of Forefront TMG updates and then try importing the XML file again.</p></blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-042.png"><img class="alignnone size-medium wp-image-1149 colorbox-1108" title="TMG version error" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-18-042-300x206.png" alt="" width="300" height="206" /></a></p>
<p>Once the import is completed, save the array configuration. You will be prompted to restart the services - select Save the changes and restart the services.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-018.png"><img class="alignnone size-medium wp-image-1168 colorbox-1108" title="Save changes and restart services" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-018-252x300.png" alt="" width="252" height="300" /></a></p>
<p>At this point the stand-alone array will not be affected - it's still pointing at it's own configuration storage on the array servers. If you look at the System tab, the connection to the servers will either have an hour glass, or a red cross - this is to be expected, they are not configured to talk to the EMS yet. The Config Management field will be set to "EMS-Managed Array"</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-019.png"><img class="alignnone size-medium wp-image-1169 colorbox-1108" title="EMS Managed TMG Array" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-019-300x91.png" alt="" width="300" height="91" /></a></p>
<h2>Disjoining Servers from the Stand-alone Array and joining the EMS Managed Array</h2>
<p>Disjoining the servers will erase the config on the servers, so it needs to be done carefully and out of business hours. Disjoining the non-CSS server first will leave the current array manager in a working state while the other is disjoined and joined to the EMS. If you are using NLB, both servers will remain as part of the NLB while this happens - this can mean that traffic will be directed to the disjoined array but denied by the default rule.</p>
<p>Log directly onto the TMG server that is not the array manager, and open the TMG Console. Select the top node and in the actions pane, click the "Disjoin Server from Array" link.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-020.png"><img class="alignnone size-full wp-image-1170 colorbox-1108" title="Disjoin Server from Array" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-020.png" alt="" width="206" height="207" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-021.png"><img class="alignnone size-medium wp-image-1171 colorbox-1108" title="Disjoin array wizard 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-021-300x197.png" alt="" width="300" height="197" /></a></p>
<p> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-022.png"><img class="alignnone size-medium wp-image-1172 colorbox-1108" title="2012-05-29 022" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-022-300x197.png" alt="" width="300" height="197" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-023.png"><img class="alignnone size-medium wp-image-1174 colorbox-1108" title="Disjoin array wizard 3" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-023-300x188.png" alt="" width="300" height="188" /></a></p>
<p> Now we have one of the array disjoined and ready to join the EMS managed array. Since the TMG config is essentially blank, create a rule to allow IPSEC again between the EMS and this server. Now run the "Join Array" wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-024.png"><img class="alignnone size-full wp-image-1179 colorbox-1108" title="Joining an EMS Array 1" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-024.png" alt="" width="199" height="205" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-025.png"><img class="alignnone size-medium wp-image-1178 colorbox-1108" title="Joining EMS Array 2" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-025-300x244.png" alt="" width="300" height="244" /></a></p>
<p>Enter the FQDN of the EMS and select the array you have just configured</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-026.png"><img class="alignnone size-medium wp-image-1177 colorbox-1108" title="Joining an EMS Array 3" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-026-300x244.png" alt="" width="300" height="244" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-027.png"><img class="alignnone size-medium wp-image-1176 colorbox-1108" title="Joining an EMS array 4" src="http://www.definit.co.uk/wp-content/uploads/2012/05/2012-05-29-027-300x244.png" alt="" width="300" height="244" /></a></p>
<p>And that's it - joined! Repeat the process for the other array member</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-05-29-028.png"><img class="alignnone  wp-image-1184 colorbox-1108" title="Joining an EMS Array 5" src="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-05-29-028-300x244.png" alt="" width="300" height="244" /></a> </p>
<p>Check you have the servers correctly in the array, and the configuration is syncing correctly</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-06-12-000.png"><img class="alignnone size-medium wp-image-1185 colorbox-1108" title="TMG Array in Sync 1" src="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-06-12-000-300x136.png" alt="" width="300" height="136" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-06-12-001.png"><img class="alignnone size-medium wp-image-1186 colorbox-1108" title="TMG Array in Sync 2" src="http://www.definit.co.uk/wp-content/uploads/2012/06/2012-06-12-001-300x89.png" alt="" width="300" height="89" /></a></p>
<p>Since this post is getting long, I'll split adding the 3rd server for another day - I'll update here when it's done.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/06/installing-a-tmg-enterprise-management-server-and-migrating-and-existing-standalone-array-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>SCOM 2007 R2: Daily Health Check Script v2</title>
		<link>http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/</link>
		<comments>http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/#comments</comments>
		<pubDate>Mon, 28 May 2012 13:57:02 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[daily]]></category>
		<category><![CDATA[health check]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[scom]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1106</guid>
		<description><![CDATA[A couple of months ago I posted the first version of my SCOM 2007 R2 Daily Health Check Script - here is version 2. It's more than a little motivated by some friendly competition with a Microsoft PFE for SCOM, hopefully you'll agree it's a big improvement on the last version. Updated for this version Formatting [...]]]></description>
				<content:encoded><![CDATA[<p><img class="colorbox-1106"  title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo_thumb.png" alt="MSFT-System-Center-logo" width="160" height="137" align="right" border="0" />A couple of months ago I posted the first version of my <a href="http://bit.ly/x9qwg4">SCOM 2007 R2 Daily Health Check Script </a>- here is version 2. It's more than a little motivated by some friendly competition with a Microsoft PFE for SCOM, hopefully you'll agree it's a big improvement on the last version.</p>
<p>Updated for this version</p>
<ul>
<li>Formatting changed to make it more readable and more compatible</li>
<li>Added "Report generated on <em>&lt;server&gt;</em>" to the top of the report</li>
<li>Management Server states reported as one section</li>
<li>Default MP check moved to beneath the Management servers</li>
<li>Agents in pending states moved to be with the Agent health states</li>
<li>Clarified "Unresponsive Agents" and "Agents reporting errors"</li>
<li>Management server alerts streamlined</li>
<li>Added top 10 alerts for the last 7 days, and added top alerters for each</li>
</ul>
<p><span id="more-1106"></span>I'm planning to wrap in some SQL database size checks and some of the other recommendations later - I'll post again here when that's ready <img src='http://www.definit.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley colorbox-1106' /> </p>
<pre class="brush: powershell; gutter: true">$Head = &quot;&lt;style&gt;&quot;
$Head +=&quot;BODY{background-color:#FFF;font-family:Verdana,sans-serif; font-size: 11px;}&quot;
$Head +=&quot;TABLE{border-width: 0px;border-collapse: collapse; width: 100%;}&quot;
$Head +=&quot;TH{border-width: 0px;background-color:#F5F5F5;color:Navy;padding: 5px; font-weight: bold;text-align:left;}&quot;
$Head +=&quot;TD.Gray{ border-width: 0px; background-color: #D3D3D3; color:Navy; padding: 5px; font-weight: bold; text-align:left;}&quot;
$Head +=&quot;TD.Blank{ border-width: 0px;}&quot;
$Head +=&quot;TD{ border-width: 0px; color:Red;}&quot;
$Head +=&quot;H1{color:Navy; font-size: 12px; padding: 5px;}&quot;
$Head +=&quot;H3{color:Navy; font-size: 11px;}&quot;
$Head +=&quot;P{font-size: 11px;}&quot;
$Head +=&quot;P.OK{color:Green; font-size: 11px;}&quot;
$Head +=&quot;P.Error{color:Red; font-size: 11px; font-weight: Bold;}&quot;
$Head +=&quot;&lt;/style&gt;&quot;
$ReportOutput += &quot;&lt;H1&gt;SCOM Daily Healthcheck Report&lt;/H1&gt;&quot;
$ReportOutput += &quot;&lt;p&gt;Report generated on &quot;+(gwmi WIN32_ComputerSystem).Name+&quot;&lt;/p&gt;&quot;

write-host &quot;Getting Management Health Server States&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;TABLE&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Management Servers&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
$Count = Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | Measure-Object
if($Count.Count -gt 0) {
	$ReportOutput += Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState,IsRootManagementServer,IsGateway | ConvertTo-HTML -fragment
} else {
	$ReportOutput += &quot;&lt;p class=OK&gt;All management servers are in healthy state.&lt;/p&gt;&quot;
}
write-host &quot;Getting RMS Maintenance Mode&quot; -ForegroundColor Yellow
$RMS = Get-ManagementServer | where {$_.IsRootManagementServer -eq $True}
$criteria = new-object Microsoft.EnterpriseManagement.Monitoring.MonitoringObjectGenericCriteria(&quot;InMaintenanceMode=1&quot;)
$objectsInMM = (Get-ManagementGroupConnection).ManagementGroup.GetPartialMonitoringObjects($criteria)
$is = &quot;&lt;p class=OK&gt;&quot;+ $RMS.Name +&quot; is not in maintenance mode&lt;/p&gt;&quot;
foreach ($MM in $objectsInMM){
	if($MM.Displayname -eq $RMS.Name){
		$is = &quot;&lt;p class=Error&gt;&quot;+ $RMS.Name +&quot; is in maintenance mode&lt;/p&gt;&quot;
	}
}
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;+$is+&quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

write-host &quot;Getting Overrides in Default Management Pack&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Overrides in Default Management Pack&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
$OverrideCount = Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | measure-object
if($OverrideCount.Count -gt 2){
	$ReportOutput += &quot;&lt;p class=Error&gt;There are unexpected overrides in the Default Management Pack&lt;/p&gt;&quot;
	foreach ($monitor in Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | where {$_.monitor}) {
		$ReportOutput += get-monitor | where {$_.Id -eq $monitor.monitor.id} | select-object DisplayName,Description | ConvertTo-HTML -fragment
		$ReportOutput += &quot;&lt;br /&gt;&quot;
	}
	foreach ($rule in Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | where {$_.rule}) {
		$ReportOutput += get-rule | where {$_.Id -eq $rule.rule.id} | select-object DisplayName,Description | ConvertTo-HTML -fragment
		$ReportOutput += &quot;&lt;br /&gt;&quot;
	}
} else {
	$ReportOutput += &quot;&lt;p class=OK&gt;There are no unexpected overrides in the Default Management Pack&lt;/p&gt;&quot;
}

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

write-host &quot;Getting Agents in Pending State&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Agents in Pending State&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
#$ReportOutput += Get-AgentPendingAction | sort AgentPendingActionType | select AgentName,ManagementServerName,AgentPendingActionType | ConvertTo-HTML -fragment
$Pending = Get-AgentPendingAction
if($Pending.Count -gt 0) {
	$ReportOutput += $Pending | sort AgentPendingActionType | select AgentName,ManagementServerName,AgentPendingActionType | ConvertTo-HTML -fragment
} else {
	$ReportOutput += &quot;&lt;p class=OK&gt;No pending agents&lt;/p&gt;&quot;
}

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Unresponsive Agents&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
$AgentMonitoringClass = get-monitoringclass -name &quot;Microsoft.SystemCenter.Agent&quot;
$ReportOutput += Get-MonitoringObject -monitoringclass:$AgentMonitoringClass | where {$_.IsAvailable -eq $false} | select DisplayName | ConvertTo-HTML -fragment

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

write-host &quot;Getting Agent Health Status&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Agents reporting errors&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
$ReportOutput += Get-Agent | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState | ConvertTo-HTML -fragment

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

write-host &quot;Getting Management Server Alerts&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Management Server Alerts&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;
$ManagementServers = Get-ManagementServer
$ReportOutput += &quot;&lt;TABLE&gt;&quot;
foreach ($ManagementServer in $ManagementServers){
	$ReportOutput += &quot;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;H3&gt;&quot; + $ManagementServer.ComputerName + &quot;&lt;/H3&gt;&lt;/TD&gt;&lt;TD&gt;&quot;
	$MSAlerts = get-alert -Criteria (&quot;NetbiosComputerName = &#039;&quot; + $ManagementServer.ComputerName + &quot;&#039;&quot;) | where {$_.ResolutionState -ne &#039;255&#039; -and $_.MonitoringObjectFullName -Match &#039;Microsoft.SystemCenter&#039;}
	if(($MSAlerts).Count -gt 0) {
		$ReportOutput += $MSAlerts  | select TimeRaised,Name,Description,Severity | ConvertTo-HTML -fragment
	} else {
		$ReportOutput += &quot;&lt;p class=OK&gt;No Alerts&lt;/p&gt;&quot;
	}
	$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&quot;
}
$ReportOutput += &quot;&lt;/TABLE&gt;&quot;

$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&lt;p&gt; &lt;/p&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Blank&gt;&quot;

write-host &quot;Getting Top 10 Alerts in the last 7 days&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=Gray&gt;&lt;H1&gt;Top 10 Alerts (last 7 days)&lt;/H1&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&quot;
$ReportOutput += &quot;&lt;TABLE&gt;&quot;
$topten = get-alert | where {$_.TimeRaised -gt ((get-date).adddays(-7))} | group-Object Name | sort-object Count -desc | select -first 10 Name, Count
foreach ($toptenalert in $topten) {
	$ReportOutput += &quot;&lt;TD class=Gray&gt;&quot;+$toptenalert.Name+&quot; (Total: &quot;+$toptenalert.Count+&quot;)&lt;/TD&gt;&lt;TR&gt;&lt;TD&gt;&quot;
	$ReportOutput += get-alert | where {$_.Name -eq $toptenalert.Name -and $_.TimeRaised -gt ((get-date).adddays(-7))} | group-Object PrincipalName | sort-object Count -desc | select -first 10 Name, Count | ConvertTo-HTML -fragment
	$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&quot;
}
$ReportOutput += &quot;&lt;/TABLE&gt;&quot;
$ReportOutput += &quot;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&quot;

$Body = ConvertTo-HTML -head $Head -body &quot;$ReportOutput&quot;

$SmtpClient = New-Object system.net.mail.smtpClient
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Host = &quot;smtp.definit.co.uk&quot;
$mailmessage.from = &quot;scom.report@definit.co.uk&quot;
$mailmessage.To.add(&quot;&lt;a href=&quot;mailto:sam@definit.co.uk&quot;&gt;sam@definit.co.uk&lt;/a&gt;&quot;)
#$mailmessage.To.add(&quot;&lt;a href=&quot;mailto:another@definit.co.uk&quot;&gt;another@definit.co.uk&lt;/a&gt;&quot;)
$mailmessage.Subject = &quot;SCOM Daily Healthcheck Report&quot;
$MailMessage.IsBodyHtml = 1
$mailmessage.Body = $Body
$smtpclient.Send($mailmessage)
}</pre>
<p>Download the full PowerShell file here:<a href="http://www.definit.co.uk/wp-content/uploads/2012/05/Get-HealthCheck.v2.ps1_.zip">Get-HealthCheck.v2.ps1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>PowerShell: Recursively taking ownership of files and folders and adding permissions without removing existing permissions</title>
		<link>http://www.definit.co.uk/2012/02/powershell-recursively-taking-ownership-of-files-and-folders-and-adding-permissions-without-removing-existing-permissions/</link>
		<comments>http://www.definit.co.uk/2012/02/powershell-recursively-taking-ownership-of-files-and-folders-and-adding-permissions-without-removing-existing-permissions/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 14:59:03 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[acls]]></category>
		<category><![CDATA[icacls]]></category>
		<category><![CDATA[owner]]></category>
		<category><![CDATA[permissions]]></category>
		<category><![CDATA[recurse]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[takeown]]></category>
		<category><![CDATA[takeown.exe]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1082</guid>
		<description><![CDATA[This is every file server admin's nightmare: hundreds of shares, thousands of folders, hundreds of thousands of files - and custom or not inherited rights on many of them. Terabytes of data that need auditing - e.g. to find customer data, or credit card information. How do you go about accessing all the data in [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/02/powershell1.png"><img class="alignright  wp-image-1090 colorbox-1082" title="powershell logo" src="http://www.definit.co.uk/wp-content/uploads/2012/02/powershell1.png" alt="PowerShell Logo" width="202" height="137" /></a>This is every file server admin's nightmare: hundreds of shares, thousands of folders, hundreds of thousands of files - and custom or not inherited rights on many of them. Terabytes of data that need auditing - e.g. to find customer data, or credit card information. How do you go about accessing all the data in all the trees? What about backups failing because someone removed the System account? Of course you can seize control of the folder by taking ownership and pushing down from a top level - but how do you preserve the existing Access Control Lists?<span id="more-1082"></span></p>
<p>Microsoft gives us 2 tools for doing this, <a href="http://technet.microsoft.com/en-us/library/cc755342(WS.10).aspx" target="_blank">Takeown.exe</a> and <a href="http://support.microsoft.com/kb/919240" target="_blank">ICACLs.exe</a> - but there is a catch. To use takeown.exe to to take ownership of a tree you can use the /R recurse option, but you then have to specify a default answer - yes or no. The question that is asked is: "you do not have permission to take ownership, do you want to?" This will strip out existing permissions!!! If you answer yes, you delete the permissions you wish to preserve. If you answer no you do not take ownership of the folder. Without the recurse option you can take ownership of an individual file or folder, but of course this needs to be run as many times as there are folders to be sure.</p>
<p>Engaging with Microsoft product support for this gave us a solution of sorts - namely to run a looped batch file until all the folders were owned, and then running ICACLS.exe. There would be no way of knowing whether this had completed the tree unless you knew already the number of files and folders within the tree - and if you could get that info you would already have permissions! Not a great solution.</p>
<p>Fortunately, using PowerShell and Takeown.exe, we can work around this limitation, by exploiting Get-ChildItem in recursive mode, and changing the default error action to SilentlyContinue. Get-ChildItem will throw an error if it tries to access a folder you do not have permissions to, and you can catch this error and pass the folder to Takeown.exe to seize ownership. Trapping this error does not work because it's a "stop" error - but changing the error action means that the $error variable is populated with the exception details. This is the basis of the first function in my script.</p>
<h1>Function: Test-Folder</h1>
<pre class="brush: powershell; gutter: true">function Test-Folder($FolderToTest){
$error.Clear()
$ErrorArray = @()
Get-ChildItem $FolderToTest -Recurse -ErrorAction SilentlyContinue | Select FullName
if ($error) {
$ErrorArray = $error + $ErrorArray
foreach ($err in $ErrorArray) {
if($err.FullyQualifiedErrorId -eq &quot;DirUnauthorizedAccessError,Microsoft.PowerShell.Commands.GetChildItemCommand&quot;) {
    Write-Host Unable to access $err.TargetObject -Fore Red
    Write-Host Attempting to take ownership of $err.TargetObject -Fore Yellow
    Take-Ownership($err.TargetObject)
    Test-Folder($err.TargetObject)
   }
  }
 }
}</pre>
<p><em>* This section has been updated as per David's comments and solution below - thanks to David for his work!</em></p>
<p>It's fairly simple code, running through it we clear any existing errors using $error.Clear(), recurse through the folder structure using Get-ChildItem with the errors suppressed. The select statement is for logging output - the full path of the file or folder that we DO have access to. We then check if $error is set - if it is then we had errors accessing a file or folder, so we loop through them and check if the error Fully Qualified ID matches the access denied error message. If it does we write something for the logging and call the Take-Ownership function, followed by looping back with a call to itself to re-test the folder we are working on (and anything below it).</p>
<h1>Function: Take-Ownership</h1>
<p>  The Take-Ownership function simply calls Takeown.exe against the folder it is passed, then adds entries to the ACL for that folder.</p>
<pre class="brush: powershell; gutter: true">function Take-Ownership {
 param(
  [String]$Folder
 )
 takeown.exe /A /F $Folder
 $CurrentACL = Get-Acl $Folder
 write-host ...Adding NT Authority\SYSTEM to $Folder -Fore Yellow
 $SystemACLPermission = &quot;NT AUTHORITY\SYSTEM&quot;,&quot;FullControl&quot;,&quot;ContainerInherit,ObjectInherit&quot;,&quot;None&quot;,&quot;Allow&quot;
 $SystemAccessRule = new-object System.Security.AccessControl.FileSystemAccessRule $SystemACLPermission
 $CurrentACL.AddAccessRule($SystemAccessRule)
 write-host ...Adding Infrastructure Services to $Folder -Fore Yellow
 $AdminACLPermission = &quot;DEFINIT\AdminGroup&quot;,&quot;FullControl&quot;,&quot;ContainerInherit,ObjectInherit&quot;,&quot;None&quot;,&quot;Allow&quot;
 $SystemAccessRule = new-object System.Security.AccessControl.FileSystemAccessRule $AdminACLPermission
 $CurrentACL.AddAccessRule($SystemAccessRule)
 Set-Acl -Path $Folder -AclObject $CurrentACL
}</pre>
<p>Running through, it takes the folder name as a parameter, runs Takeown.exe against it using the /A option to add the administrators group. We then get the current ACL from the folder, build a new ACL permission as a string and use that to create a FileSystemAccessRule object. That object is then added to the ACL we copied from the folder. In this example I am adding two accounts, NT AUTHORITY\SYSTEM and a domian group DEFINIT\AdminGroup. The Set-ACL command applies the ACL list with the two new entries to the folder.</p>
<h1>The final script</h1>
<p>Finally, we can build the script together taking a parameter for the target folder, and a log file. The Functions are called against the target folder - first taking ownership of the root, and then testing the contents. I start and stop a transcript around them to capture output, which can be crucial for proving that you have access!</p>
<pre class="brush: powershell; gutter: true">Start-Transcript $Log
Take-OwnerShip ($RootPath)
Test-Folder($RootPath)
Stop-Transcript</pre>
<p> Download the whole script as a zip file here: <a href="http://www.definit.co.uk/2012/02/powershell-recursively-taking-ownership-of-files-and-folders-and-adding-permissions-without-removing-existing-permissions/set-ownerrecursively/" rel="attachment wp-att-1084">set-ownerrecursively</a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/02/powershell-recursively-taking-ownership-of-files-and-folders-and-adding-permissions-without-removing-existing-permissions/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>SCOM 2007 R2: Daily Health Check Script</title>
		<link>http://www.definit.co.uk/2012/01/scom-2007-r2-daily-health-check-script/</link>
		<comments>http://www.definit.co.uk/2012/01/scom-2007-r2-daily-health-check-script/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 16:59:39 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[health check]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[scom]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1073</guid>
		<description><![CDATA[An updated version of this script has been released: http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/ I've been working with a Microsft SCOM PFE (Premier Field Engineer) for the last few months and part of the engagement is an environment health check for the SCOM setup. Based on this Microsoft recommend a series of health checks to for the environment that [...]]]></description>
				<content:encoded><![CDATA[<p>An updated version of this script has been released: <a href="http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/">http://www.definit.co.uk/2012/05/scom-2007-r2-daily-health-check-script-v2/</a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo.png"><img class="colorbox-1073"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo_thumb.png" alt="MSFT-System-Center-logo" width="160" height="137" align="right" border="0" /></a>I've been working with a Microsft SCOM PFE (Premier Field Engineer) for the last few months and part of the engagement is an environment health check for the SCOM setup. Based on this Microsoft recommend a series of health checks to for the environment that should be carried out every day. This is summarised as the following:</p>
<ol>
<li>Check the health of all Management Servers and Gateways</li>
<li>Check the RMS is not in maintenance mode</li>
<li>Review Outstanding Alerts</li>
<li>Review Agent's Health Status</li>
<li>Review Backup Status</li>
<li>Review any Management Group Alerts</li>
<li>Review the Pending Management status</li>
<li>Review Database Sizes (Operations, Data warehouse, ACS)</li>
<li>Review Volume of Alerts</li>
<li>Review Alert Latency</li>
<li>Document any changes </li>
</ol>
<p><span id="more-1073"></span>From this, there are certain aspects that can't be automated so easily, or shouldn't be - e.g:</p>
<p style="padding-left: 30px;">3. Review Outstanding Alerts: There is no point in scripting a capture of this as they need to be dealt with in the Console.</p>
<p style="padding-left: 30px;">5. Review Backup Status: Backups are generally monitored elsewhere and by other software, you could query SQL to find the last backup of the DBs if required.</p>
<p style="padding-left: 30px;">8. Review Database Sizes: This one I don't agree with being a daily check - if you have sized and tuned your environment correctly then these can be checked on a weekly or monthly schedule.</p>
<p style="padding-left: 30px;">11. Document any changes: Clearly this isn't going to work as a scripted healthcheck!</p>
<h1>Check the health of all Management Servers and Gateways</h1>
<pre class="brush: powershell; gutter: true">$ReportOutput = &quot;&lt;H2&gt;Management Servers not in Healthy States&lt;/H2&gt;&quot;
$Count = Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | Measure-Object
if($Count.Count -gt 0) {
 $ReportOutput += Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState,IsRootManagementServer,IsGateway | ConvertTo-HTML -fragment
} else {
 $ReportOutput += &quot;&lt;p&gt;All management servers are in healthy state.&lt;/p&gt;&quot;
}</pre>
<h1>Check the RMS is not in maintenance mode</h1>
<pre class="brush: powershell; gutter: true">$RMS = Get-ManagementServer | where {$_.IsRootManagementServer -eq $True}
$criteria = new-object Microsoft.EnterpriseManagement.Monitoring.MonitoringObjectGenericCriteria(&quot;InMaintenanceMode=1&quot;)
$objectsInMM = (Get-ManagementGroupConnection).ManagementGroup.GetPartialMonitoringObjects($criteria)
$is = &quot;is not&quot;
foreach ($MM in $objectsInMM){
 if($MM.Displayname -eq $RMS.Name){
   $is = &quot;is&quot;
 }
}
$ReportOutput += &quot;&lt;h2&gt;RMS in Maintenance Mode&lt;/h2&gt;&lt;p&gt;&quot;+ $RMS.Name +&quot; &quot;+$is+&quot; in maintenance mode&lt;/p&gt;&quot;</pre>
<h1>Review Agent's Health Status</h1>
<pre class="brush: powershell; gutter: true">$ReportOutput += &quot;&lt;h2&gt;Agents where Health State is not Green&lt;/h2&gt;&quot;
$ReportOutput += Get-Agent | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState | ConvertTo-HTML -fragment$ReportOutput += &quot;&lt;h2&gt;Agents where the Monitoring Class is not available&lt;/h2&gt;&quot;
$AgentMonitoringClass = get-monitoringclass -name &quot;Microsoft.SystemCenter.Agent&quot;
$ReportOutput += Get-MonitoringObject -monitoringclass:$AgentMonitoringClass | where {$_.IsAvailable -eq $false} | select DisplayName | ConvertTo-HTML -fragment</pre>
<h1>Review any Management Group Alerts</h1>
<pre class="brush: powershell; gutter: true">$ManagementServers = Get-ManagementServer
foreach ($ManagementServer in $ManagementServers){
 $ReportOutput += &quot;&lt;h3&gt;Alerts on &quot; + $ManagementServer.ComputerName + &quot;&lt;/h3&gt;&quot;
 $ReportOutput += get-alert -Criteria (&quot;NetbiosComputerName = &#039;&quot; + $ManagementServer.ComputerName + &quot;&#039;&quot;) | where {$_.ResolutionState -ne &#039;255&#039; -and $_.MonitoringObjectFullName -Match &#039;Microsoft.SystemCenter&#039;} | select TimeRaised,Name,Description,Severity | ConvertTo-HTML -fragment
}</pre>
<h1>Review the Pending Management status</h1>
<pre class="brush: powershell; gutter: true">$ReportOutput += &quot;&lt;h2&gt;Agents in Pending State&lt;/h2&gt;&quot;
$ReportOutput += Get-AgentPendingAction | sort AgentPendingActionType | select AgentName,ManagementServerName,AgentPendingActionType | ConvertTo-HTML -fragment</pre>
<h1>Review Volume of Alerts</h1>
<pre class="brush: powershell; gutter: true">$ReportOutput += &quot;&lt;h2&gt;Top 10 Repeating Alerts&lt;/h2&gt;&quot;
$ReportOutput += get-alert -Criteria &#039;ResolutionState &lt; &quot;255&quot;&#039; | Sort -desc RepeatCount | select-object –first 10 Name, RepeatCount, MonitoringObjectPath, Description | ConvertTo-HTML -fragment$ReportOutput += &quot;&lt;h2&gt;Agents in Pending State&lt;/h2&gt;&quot;
$ReportOutput += Get-AgentPendingAction | sort AgentPendingActionType | select AgentName,ManagementServerName,AgentPendingActionType | ConvertTo-HTML -fragment</pre>
<h2>The Final Product</h2>
<p>My full Daily Health Check Script, with some formatting, output for console and sending an email:</p>
<pre class="brush: powershell; gutter: true">$Head = &quot;&lt;style&gt;&quot;
$Head +=&quot;BODY{background-color:#CCCCCC;font-family:Verdana,sans-serif; font-size: x-small;}&quot;
$Head +=&quot;TABLE{border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse; width: 100%;}&quot;
$Head +=&quot;TH{border-width: 1px;padding: 0px;border-style: solid;border-color: black;background-color:green;color:white;padding: 5px; font-weight: bold;text-align:left;}&quot;
$Head +=&quot;TD{border-width: 1px;padding: 0px;border-style: solid;border-color: black;background-color:#F0F0F0; padding: 2px;}&quot;
$Head +=&quot;&lt;/style&gt;&quot;write-host &quot;Getting Management Health Server States&quot; -ForegroundColor Yellow
$ReportOutput = &quot;&lt;H2&gt;Management Servers not in Healthy States&lt;/H2&gt;&quot;
$Count = Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | Measure-Object
if($Count.Count -gt 0) {
 $ReportOutput += Get-ManagementServer | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState,IsRootManagementServer,IsGateway | ConvertTo-HTML -fragment
} else {
 $ReportOutput += &quot;&lt;p&gt;All management servers are in healthy state.&lt;/p&gt;&quot;
}
write-host &quot;Getting RMS Maintenance Mode&quot; -ForegroundColor Yellow
$RMS = Get-ManagementServer | where {$_.IsRootManagementServer -eq $True}
$criteria = new-object Microsoft.EnterpriseManagement.Monitoring.MonitoringObjectGenericCriteria(&quot;InMaintenanceMode=1&quot;)
$objectsInMM = (Get-ManagementGroupConnection).ManagementGroup.GetPartialMonitoringObjects($criteria)
$is = &quot;is not&quot;
foreach ($MM in $objectsInMM){
 if($MM.Displayname -eq $RMS.Name){
   $is = &quot;is&quot;
 }
}
$ReportOutput += &quot;&lt;h2&gt;RMS in Maintenance Mode&lt;/h2&gt;&lt;p&gt;&quot;+ $RMS.Name +&quot; &quot;+$is+&quot; in maintenance mode&lt;/p&gt;&quot;write-host &quot;Getting Agent Health Status&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Agents where Health State is not Green&lt;/h2&gt;&quot;
$ReportOutput += Get-Agent | where {$_.HealthState -ne &quot;Success&quot;} | select Name,HealthState | ConvertTo-HTML -fragment$ReportOutput += &quot;&lt;h2&gt;Agents where the Monitoring Class is not available&lt;/h2&gt;&quot;
$AgentMonitoringClass = get-monitoringclass -name &quot;Microsoft.SystemCenter.Agent&quot;
$ReportOutput += Get-MonitoringObject -monitoringclass:$AgentMonitoringClass | where {$_.IsAvailable -eq $false} | select DisplayName | ConvertTo-HTML -fragmentwrite-host &quot;Getting Management Server Alerts&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Management Server Alerts&lt;/h2&gt;&quot;
$ManagementServers = Get-ManagementServer
foreach ($ManagementServer in $ManagementServers){
 $ReportOutput += &quot;&lt;h3&gt;Alerts on &quot; + $ManagementServer.ComputerName + &quot;&lt;/h3&gt;&quot;
 $ReportOutput += get-alert -Criteria (&quot;NetbiosComputerName = &#039;&quot; + $ManagementServer.ComputerName + &quot;&#039;&quot;) | where {$_.ResolutionState -ne &#039;255&#039; -and $_.MonitoringObjectFullName -Match &#039;Microsoft.SystemCenter&#039;} | select TimeRaised,Name,Description,Severity | ConvertTo-HTML -fragment
}write-host &quot;Getting Top 10 Unresolved Alerts&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Top 10 Unresolved Alerts&lt;/h2&gt;&quot;
$ReportOutput += get-alert -Criteria &#039;ResolutionState &lt; &quot;255&quot;&#039;  | Group-Object Name | Sort-object Count -desc | select-Object -first 10 Count, Name | ConvertTo-HTML -fragmentwrite-host &quot;Getting Top 10 Repeating Alerts&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Top 10 Repeating Alerts&lt;/h2&gt;&quot;
$ReportOutput += get-alert -Criteria &#039;ResolutionState &lt; &quot;255&quot;&#039; | Sort -desc RepeatCount | select-object –first 10 Name, RepeatCount, MonitoringObjectPath, Description | ConvertTo-HTML -fragmentwrite-host &quot;Getting Agents in Pending State&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Agents in Pending State&lt;/h2&gt;&quot;
$ReportOutput += Get-AgentPendingAction | sort AgentPendingActionType | select AgentName,ManagementServerName,AgentPendingActionType | ConvertTo-HTML -fragmentwrite-host &quot;Getting Overrides in Default Management Pack&quot; -ForegroundColor Yellow
$ReportOutput += &quot;&lt;h2&gt;Overrides in Default Management Pack&lt;/h2&gt;&quot;$OverrideCount = Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | measure-objectif($OverrideCount.Count -gt 2){
 foreach ($monitor in Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | where {$_.monitor}) {
  $ReportOutput += get-monitor | where {$_.Id -eq $monitor.monitor.id} | select-object DisplayName,Description | ConvertTo-HTML -fragment
  $ReportOutput += &quot;&lt;br /&gt;&quot;
 }
 foreach ($rule in Get-ManagementPack | where {$_.DisplayName -match &quot;Default Management Pack&quot;} | get-override | where {$_.rule}) {
  $ReportOutput += get-rule | where {$_.Id -eq $rule.rule.id} | select-object DisplayName,Description | ConvertTo-HTML -fragment
  $ReportOutput += &quot;&lt;br /&gt;&quot;
 }
} else {
 $ReportOutput += &quot;&lt;p&gt;There are no unexpected overrides in the Default Management Pack&lt;/p&gt;&quot;
}$Body = ConvertTo-HTML -head $Head -body &quot;$ReportOutput&quot;$SmtpClient = New-Object system.net.mail.smtpClient
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Host = &quot;smtp.definit.co.uk&quot;
$mailmessage.from = &quot;scom.report@definit.co.uk&quot;
$mailmessage.To.add(&quot;&lt;a href=&quot;mailto:sam@definit.co.uk&quot;&gt;sam@definit.co.uk&lt;/a&gt;&quot;)
#$mailmessage.To.add(&quot;&lt;a href=&quot;mailto:another@definit.co.uk&quot;&gt;another@definit.co.uk&lt;/a&gt;&quot;)
$mailmessage.Subject = &quot;SCOM Daily Healthcheck Report&quot;
$MailMessage.IsBodyHtml = 1
$mailmessage.Body = $Body$smtpclient.Send($mailmessage)</pre>
<pre> </pre>
<p>You can download the file here (zip): <a href="http://www.definit.co.uk/2012/01/scom-2007-r2-daily-health-check-script/get-healthcheck/" rel="attachment wp-att-1079">Get-HealthCheck</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/01/scom-2007-r2-daily-health-check-script/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>I&#8217;m running the Virgin London Marathon 2012 for The Lighthouse Group</title>
		<link>http://www.definit.co.uk/2012/01/im-running-the-virgin-london-marathon-2012-for-the-lighthouse-group/</link>
		<comments>http://www.definit.co.uk/2012/01/im-running-the-virgin-london-marathon-2012-for-the-lighthouse-group/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 12:46:44 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[charity]]></category>
		<category><![CDATA[virgin london marathon]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1068</guid>
		<description><![CDATA[This post is nothing more than a shameless request for sponsorship! As the title suggests, I am running the London marathon this year (in 96 days!) for the charity "The Lighthouse Group". Check out the TLG site for more detail on what they do, but in a nutshell they are a charity that works with [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/vlm-logo.gif"><img class=" wp-image-1069  alignright colorbox-1068" style="background-color: red; margin-left: 5px; margin-right: 5px; border: red 5px solid;" title="Virgin London Marathon Logo" src="http://www.definit.co.uk/wp-content/uploads/2012/01/vlm-logo.gif" alt="Virgin London Marathon Logo" width="147" height="120" /></a></p>
<p>This post is nothing more than a shameless request for sponsorship! As the title suggests, I am running the London marathon this year (in 96 days!) for the charity "The Lighthouse Group". Check out <a href="http://www.tlg.org.uk/about.aspx">the TLG site</a> for more detail on what they do, but in a nutshell they are a charity that works with young people who have been excluded from school, at risk of exclusion or are at crisis point in their education. It's a really worthwhile cause and my father-in-law has just been involved in opening a TLG center based in Normanton, Yorkshire</p>
<p>I'd appreciate any contribution, big or small! It's fair to say I'm not quite the right build to run a marathon, so a little bit of sponsorship would be very encouraging! I've been training since late August last year, and am currently managing two 7 mile runs a week, plus a game of football and a couple of swims! Keep up to date with my progress over on my <a href="http://runkeeper.com/user/SamMcG/">Runkeeper </a>profile.</p>
<p><a title="JustGiving - Sponsor me now!" href="http://www.justgiving.com/Samsbigrun" target="_blank"><img class="colorbox-1068"  src="http://www.justgiving.com/App_Themes/JustGiving/images/badges/badge10.gif" alt="JustGiving - Sponsor me now!" width="270" height="50" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/01/im-running-the-virgin-london-marathon-2012-for-the-lighthouse-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Overriding the OpsMgr Exchange 2007 Test MAPI Connectivity Monitor for Recovery Storage Groups</title>
		<link>http://www.definit.co.uk/2012/01/overriding-the-opsmgr-exchange-2007-test-mapi-connectivity-monitor-for-recovery-storage-groups/</link>
		<comments>http://www.definit.co.uk/2012/01/overriding-the-opsmgr-exchange-2007-test-mapi-connectivity-monitor-for-recovery-storage-groups/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 12:29:27 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[opsmgr]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1055</guid>
		<description><![CDATA[The Test MAPI Connectivity monitor for the Exchange 2007 management pack will automatically generate a critical error for any Recovery Storage Groups you have on monitored Exchange Mailbox Roles. As these are generally temporary Storage Groups created for a recovery and then removed, you don't want an alert - but manually adding an override for [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo.png"><img class="colorbox-1055"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo_thumb.png" alt="MSFT-System-Center-logo" width="160" height="137" align="right" border="0" /></a>The Test MAPI Connectivity monitor for the Exchange 2007 management pack will automatically generate a critical error for any Recovery Storage Groups you have on monitored Exchange Mailbox Roles. As these are generally temporary Storage Groups created for a recovery and then removed, you don't want an alert - but manually adding an override for every time is not a great use of your time either.<span id="more-1055"></span></p>
<p>The State Change event details are as follows:</p>
<blockquote><p>Date and Time: 05/12/2011 12:44:00<br />
Property Name Property Value<br />
State Error<br />
Message Unable to obtain Test-MAPIConnectivity result - The mailbox database 'MAILBOXSERVER01\Recovery Storage Group\Database01' is a recovery mailbox database. Only non-recovery mailbox databases are monitored by this task.</p></blockquote>
<p>Fortunately we can create a dynamic group that will populate any Mailbox Database objects containing the "Recovery Storage Group" string in the display name - any new recovery databases will be automatically populated as they are discovered. We can override this monitor for the group, and forget about this issue!</p>
<p>Open the Authoring console and select the Groups tab. Select Create a New Group from the Actions pane.</p>
<p>Enter a descriptive name for the group - Exchange 2007 Recovery Storage Groups, and select the Management Pack to store it in - not the Default MP!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/0004-2012.01.05-11.51.gif"><img class="alignnone size-medium wp-image-1060 colorbox-1055" title="0004 2012.01.05 11.51" src="http://www.definit.co.uk/wp-content/uploads/2012/01/0004-2012.01.05-11.51-300x256.gif" alt="" width="300" height="256" /></a></p>
<p>Click next for the Explicit Members, and then click "Create/Edit rules..." on the Dynamic Members tab. Find "Exchange 2007 Mailbox Database" in the dropdown and add it to the rule conditions. Select the following conditions: "Display Name", "Contains" and then "Recovery Storage Group".</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/0006-2012.01.05-11.531.gif"><img class="alignnone size-medium wp-image-1062 colorbox-1055" title="0006 2012.01.05 11.53" src="http://www.definit.co.uk/wp-content/uploads/2012/01/0006-2012.01.05-11.531-300x243.gif" alt="" width="300" height="243" /></a></p>
<p>Finish the wizard to create the group. Click on the Monitors tab and locate the "Exchange 2007 Test MAPI Connectivity Monitor", right click and open the properties. Select the Overrides tab.</p>
<p>&nbsp;</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/0009-2012.01.05-12.16.gif"><img class="alignnone size-medium wp-image-1065 colorbox-1055" title="0009 2012.01.05 12.16" src="http://www.definit.co.uk/wp-content/uploads/2012/01/0009-2012.01.05-12.16-300x202.gif" alt="" width="300" height="202" /></a></p>
<p>Select "Override..." and then "For a group...", then find the group you just created.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/0010-2012.01.05-12.17.gif"><img class="wp-image-1057 alignnone colorbox-1055" title="0010 2012.01.05 12.17" src="http://www.definit.co.uk/wp-content/uploads/2012/01/0010-2012.01.05-12.17-300x139.gif" alt="" width="300" height="139" /></a></p>
<p>Override the "Enabled" parameter and select "False" to disable the Monitor, and click OK to apply the override.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2012/01/0011-2012.01.05-12.18.gif"><img class="size-medium wp-image-1056 alignnone colorbox-1055" title="0011 2012.01.05 12.18" src="http://www.definit.co.uk/wp-content/uploads/2012/01/0011-2012.01.05-12.18-300x159.gif" alt="" width="300" height="159" /></a></p>
<p>After a few minutes, the override will take effect and reset the health of any Mailbox roles with a Recovery Storage Group.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/01/overriding-the-opsmgr-exchange-2007-test-mapi-connectivity-monitor-for-recovery-storage-groups/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Trouble with SCOM 2007 R2 Certificates? Validate the entire PKI path!</title>
		<link>http://www.definit.co.uk/2012/01/troublewithscom2007r2certificates/</link>
		<comments>http://www.definit.co.uk/2012/01/troublewithscom2007r2certificates/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 11:30:23 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[pki]]></category>
		<category><![CDATA[system center]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1051</guid>
		<description><![CDATA[I learned something new today: SCOM 2007 R2 certificate based communications not only checks the validity of the certificate you use, but also the CA that issued it...let me expand: Like many organisations there is a root CA (we'll call it ROOTCA01), and then a subordinate CA (we'll call that SUBCA01). OPSMGM01 has a certificate [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo.png"><img class="colorbox-1051"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo_thumb.png" alt="MSFT-System-Center-logo" width="160" height="137" align="right" border="0" /></a>I learned something new today: SCOM 2007 R2 certificate based communications not only checks the validity of the certificate you use, but also the CA that issued it...let me expand:</p>
<p>Like many organisations there is a root CA (we'll call it ROOTCA01), and then a subordinate CA (we'll call that SUBCA01). OPSMGM01 has a certificate to identify itself and has certificates for ROOTCA01 and SUBCA01 in it's Trusted Root Certificate Authorities.</p>
<p>The certificate to secure the connection between OpsMgr Gateway (OPSGW01) and the OpsMgr Management Server (OPSMGM01) is issued by SUBCA01 and is installed on OPSGW01, and to validate the certificate chain SUBCA01's certificate is also installed in the Trusted Root Certification Authorities. Opening OPSGW01's certificate and examining the Certificate Path tab shows the certificate is valid all the way up to the issuing CA - SUBCA01.</p>
<p>The connection will not work - OPSGW01 logs the following events:</p>
<blockquote><p>Log Name:      Operations Manager<br />
Source:        OpsMgr Connector<br />
Date:          05/01/2012 10:18:28<br />
Event ID:      21016<br />
Level:         Error<br />
Computer:      opsgw01.definit.co.uk<br />
Description:   OpsMgr was unable to set up a communications channel to opsmgm01.definit.co.uk and there are no failover hosts.  Communication will resume when opsmgm01.definit.co.uk is available and communication from this computer is allowed.</p>
<p>Log Name:      Operations Manager<br />
Source:        OpsMgr Connector<br />
Date:          05/01/2012 10:18:25<br />
Event ID:      20070<br />
Level:         Error<br />
Computer:      opsgw01.definit.co.uk<br />
Description:   The OpsMgr Connector connected to opsmgm01.definit.co.uk, but the connection was closed immediately after authentication occurred.  The most likely cause of this error is that the agent is not authorized to communicate with the server, or the server has not received configuration.  Check the event log on the server for the presence of 20000 events, indicating that agents which are not approved are attempting to connect.</p>
<p>Log Name:      Operations Manager<br />
Source:        OpsMgr Connector<br />
Date:          05/01/2012 10:18:24<br />
Event ID:      21002<br />
Level:         Warning<br />
Computer:      opsgw01.definit.co.uk<br />
Description:   The OpsMgr Connector could not accept a connection from xxx.xxx.xxx.xxx:5723 because mutual authentication failed.</p>
<p>Log Name:      Operations Manager<br />
Source:        OpsMgr Connector<br />
Date:          05/01/2012 10:18:24<br />
Event ID:      20067<br />
Level:         Warning<br />
Computer:      opsgw01.definit.co.uk<br />
Description:   A device at IP xxx.xxx.xxx.xxx:5723 attempted to connect but the certificate presented by the device was invalid.  The connection from the device has been rejected.  The failure code on the certificate was 0x800B0109 (A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.).</p></blockquote>
<p>It's the last event that led me to check the certificate chain for the SUBCA01 certificate, which was installed and trusted but did not validate up the chain to ROOTCA01. Installing the ROOTCA01 certificate resolved this issue.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2012/01/troublewithscom2007r2certificates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VMware PowerCLI &#8211; Set Path Selection Policy on all LUNs for a host</title>
		<link>http://www.definit.co.uk/2011/10/vmware-powercli-set-path-selection-policy-on-all-luns-for-a-host/</link>
		<comments>http://www.definit.co.uk/2011/10/vmware-powercli-set-path-selection-policy-on-all-luns-for-a-host/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 11:08:40 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[maintenance mode]]></category>
		<category><![CDATA[multipathing]]></category>
		<category><![CDATA[powercli]]></category>
		<category><![CDATA[psp]]></category>
		<category><![CDATA[round robin]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1042</guid>
		<description><![CDATA[Just a quick script to set the Path Selection Policy on any LUNs on a host that do not have your target policy enabled. The script sets the server to Maintenance mode first, evacuating any VMs if you are in a full DRS automated environment. While this is not strictly necessary, it was required for [...]]]></description>
				<content:encoded><![CDATA[<p>Just a quick script to set the Path Selection Policy on any LUNs on a host that do not have your target policy enabled. The script sets the server to Maintenance mode first, evacuating any VMs if you are in a full DRS automated environment. While this is not strictly necessary, it was required for my production environment just to be safe.</p>
<pre escaped="true">param( [string] $vCenterServer = $(Read-Host -prompt "Enter vCenter Server Name"),
[string] $TargetPolicy = $(Read-Host -Prompt "Enter target policy (RoundRobin, Fixed or MostRecentlyUsed)"),
[string] $TargetHost = $(Read-Host -Prompt "Enter target Host"),
[switch] $WhatIf)

# Add the VI-Snapin if it isn't loaded already
if ((Get-PSSnapin -Name "VMware.VimAutomation.Core" -ErrorAction SilentlyContinue) -eq $null ) {Add-PSSnapin -Name "VMware.VimAutomation.Core"}

Connect-VIServer $vCenterServer | out-null

Write-Host "Connected to: " $vCenterServer -ForegroundColor Green
Write-Host "Target PSP: " $TargetPolicy -ForegroundColor Yellow
Write-Host

switch ($TargetPolicy) {
RoundRobin { $DisplayPolicy = "VMW_PSP_RR"; }
MostRecentlyUsed { $DisplayPolicy = "VMW_PSP_MRU"; }
Fixed { $DisplayPolicy = "VMW_PSP_FIXED"; }
default { Write-Warning "Unknown PSP selected! Please consult the help and try again."; exit }
}

Write-Host "Setting Policy to"$TargetPolicy" on "$TargetHost -ForegroundColor Green

if($WhatIf) {
$vHost = Get-VMHost -Name $TargetHost
$vHost | Set-VMHost -State Maintenance -Evacuate -WhatIf
$vHost | Get-ScsiLun -LunType "disk" -ErrorAction SilentlyContinue | where {$_.IsLocal -eq $false -and $_.MultipathPolicy -ne $TargetPolicy} | Set-ScsiLun -MultipathPolicy $TargetPolicy -WhatIf
$vHost | Set-VMHost -State Connected -WhatIf
} else {
$vHost = Get-VMHost -Name $TargetHost
Write-Host "Setting "$TargetHost" to Maintenance Mode" -ForegroundColor White
$vHost | Set-VMHost -State Maintenance -Evacuate
$vHost | Get-ScsiLun -LunType "disk" -ErrorAction SilentlyContinue | where {$_.IsLocal -eq $false -and $_.MultipathPolicy -ne $TargetPolicy} | Set-ScsiLun -MultipathPolicy $TargetPolicy
Write-Host "Exiting Maintenance mode on"$TargetHost -ForegroundColor White
$vHost | Set-VMHost -State Connected
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/10/vmware-powercli-set-path-selection-policy-on-all-luns-for-a-host/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>SCOM 2007 DFS Backlog Monitoring – Distributing a RunAs account to only DFS replication members</title>
		<link>http://www.definit.co.uk/2011/10/scom-2007-dfs-backlog-monitoring-%e2%80%93-distributing-a-runas-account-to-only-dfs-replication-members/</link>
		<comments>http://www.definit.co.uk/2011/10/scom-2007-dfs-backlog-monitoring-%e2%80%93-distributing-a-runas-account-to-only-dfs-replication-members/#comments</comments>
		<pubDate>Tue, 18 Oct 2011 11:13:25 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[backlog]]></category>
		<category><![CDATA[dfs]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[profile]]></category>
		<category><![CDATA[runas]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1037</guid>
		<description><![CDATA[The DFS monitoring tool in SCOM 2007 has some great features, which will replace many a custom VB script running in enterprises. As with a lot of Management Packs, to get the most out of it you need to have a dedicated RunAs account with local admin permissions on the servers you are monitoring (e.g. for the Backlogged [...]]]></description>
				<content:encoded><![CDATA[<p>The DFS monitoring tool in SCOM 2007 has some great features, which will replace many a custom VB script running in enterprises. As with a lot of Management Packs, to get the most out of it you need to have a dedicated RunAs account with local admin permissions on the servers you are monitoring (e.g. for the Backlogged Files reporting).</p>
<p>The easy (and wrong) option here is to go with the less secure option and distribute a RunAs account to ALL servers. There are lots of reasons why you wouldn’t want to distribute the credentials to <em>every</em> server in your SCOM installation – but just from a security standpoint, you shouldn’t do it! Selecting the “More Secure” option and distributing credentials only to servers which will require them is a much safer bet.</p>
<p>You can view the members of the DFS discovered inventory in the SCOM Console by going to the “Discovered Inventory” view and changing the target type to “Replication Member” – which is great: you can see all the Servers involved in the DFS replication topology. But there’s no easy way to add these to a RunAs credential to distribute.</p>
<p>To narrow it down to a short list, you can open a Operation Manager Shell prompt and  list any monitoring classes which have “DFS” in the name – there are about 6 or so:</p>
<pre escaped="true">Get-MonitoringClass | where {$_.Name –match “DFS”}</pre>
<p>The one that matches my SCOM console view is “Microsoft.Windows.DfsReplication.ReplicationGroupMember” so I want to select all the monitoring-objects that match this discovery and export the “Path” (server name) to a csv file:</p>
<pre escaped="true">Get-MonitoringClass | where {$_.Name –match “Microsoft.Windows.DfsReplication.ReplicationGroupMember”} | get-monitoringobject | select-object Path | export-csv c:\DFS-Members.csv</pre>
<p>I’ve not yet figured out how to add these to the RunAs account credential distribution via PowerShell, so I’m afraid it’s a manual process from here. To make it easier I opened the csv in Excel and filtered out duplicates (for servers with multiple DFS shares) before pasting the servers in individually to the distribution dialogue.</p>
<p>Once the RunAs account has been downloaded by the Agents, and if you've added it correctly to your "DFS Replication Monitoring Account" profile, you should start to see the Backlog Monitoring view beginning to populate.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/10/scom-2007-dfs-backlog-monitoring-%e2%80%93-distributing-a-runas-account-to-only-dfs-replication-members/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>More notes on Threat Management Gateway Arrays</title>
		<link>http://www.definit.co.uk/2011/08/more-notes-on-threat-management-gateway-arrays/</link>
		<comments>http://www.definit.co.uk/2011/08/more-notes-on-threat-management-gateway-arrays/#comments</comments>
		<pubDate>Wed, 31 Aug 2011 19:57:32 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Forefront]]></category>
		<category><![CDATA[Forefront Threat Management Gateway]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[routing]]></category>
		<category><![CDATA[TMG]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1029</guid>
		<description><![CDATA[It seems that despite my previous experiences with TMG 2010, I still stumble when creating a TMG array. Here are some "notes to self", which will hopefully stop me making the same mistakes next time Get the NICs right first In this case I came to a project after the initial installation of the array [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010.png"><img class="alignright size-medium wp-image-780 colorbox-1029" style="margin: 10px;" title="TMG2010.png" src="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010-300x147.png" alt="" width="180" height="88" /></a>It seems that despite my previous <a title="Installing Exchange 2010 Edge Server with Forefront Protection for Exchange (FPE) and Threat Management Gateway (TMG) – Part 1" href="http://www.definit.co.uk/2010/08/installing-exchange-2010-edge-server-with-forefront-protection-for-exchange-fpe-and-threat-management-gateway-tmg-part-1/">experiences </a>with <a title="Configuring SSTP VPN connections to Threat Management Gateway 2010" href="http://www.definit.co.uk/2011/03/configuring-sstp-vpn-connections-threat-management-gateway-2010/">TMG 2010</a>, I still stumble when <a title="In-depth: Installing and Configuring Threat Management Gateway 2010 in a Network Load Balanced Array" href="http://www.definit.co.uk/2010/11/in-depth-installing-and-configuring-threat-management-gateway-2010-in-a-network-load-balanced-array/">creating a TMG array</a>. Here are some "notes to self", which will hopefully stop me making the same mistakes next time</p>
<h4>Get the NICs right first</h4>
<p>In this case I came to a project after the initial installation of the array and there was no dedicated intra-array network installed. I added a new NIC to each VM and configured the IP addressing, VLANs and routing, but could not get the intra-array network to ping, let alone talk to each other. So the lesson here is to set up the servers with their NICs before you install TMG - Microsoft recommend a dedicated intra-array network and every bit of experience I have with TMG arrays confirms that.</p>
<h4>Get the NIC Binding order right</h4>
<p>This is simple, the order I have found to work is:</p>
<ul>
<li>Intra-array Network</li>
<li>Private/Internal Network</li>
<li>Public/External Network</li>
</ul>
<p>Some people recommend the Private/Internal network first, then the Intra-array, but I have found that this order works better (anyone able to dispute this or give me a reason why it should be the other way?). The key thing is that the External Network (which should be your default Gateway) is last in the binding order, which brings me to the next point...</p>
<h4>Get the gateway and routing right</h4>
<ul>
<li><strong>Default Gateway</strong>: The only NIC with a Default Gateway set should be the Public/External NIC</li>
<li><strong>DNS</strong>: The only NIC with DNS configured should be your Private/Internal NIC</li>
<li><strong>Register in DNS</strong>: The only NIC registering in DNS should be the Private/Internal NIC</li>
<li><strong>Client for Microsoft Networks</strong>: Only enabled on the Private/Internal NIC</li>
<li><strong>File and Print Sharing for Microsoft Networks</strong>: Only enabled on the Private/Internal NIC</li>
<li><strong>NetBIOS over TCP/IP</strong>: Only enabled on the Private/Internal NIC</li>
</ul>
<p>Add any static and persistant routes required and make sure you can access those networks before installing TMG. This allows you to get the routing right without the complication of TMG rules and firewalls.</p>
<p>Then, and only then, install TMG <img src='http://www.definit.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley colorbox-1029' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/08/more-notes-on-threat-management-gateway-arrays/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing and Configuring OTRS 3.0.9 on Windows Server 2008 R2</title>
		<link>http://www.definit.co.uk/2011/07/installing-configuring-otrs-3-0-9-windows-server-2008/</link>
		<comments>http://www.definit.co.uk/2011/07/installing-configuring-otrs-3-0-9-windows-server-2008/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 15:02:15 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Open Source Software]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[otrs]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1019</guid>
		<description><![CDATA[OTRS is an exceptionally flexible ITIL compliant ticketing/helpdesk solution, which runs beautifully on almost any LAMP (Linux, Apache, MySQL, Perl (yes, I know it’s PHP really;-)) server, but what happens when you work in a Windows-only environment? OTRS does have a Windows installer, but it is somewhat clunky and requires almost as much work to [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/acquia_marina_logo.jpg"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="acquia_marina_logo" src="http://www.definit.co.uk/wp-content/uploads/2011/07/acquia_marina_logo_thumb.jpg" alt="acquia_marina_logo" width="240" height="87" align="right" border="0" /></a>OTRS is an exceptionally flexible ITIL compliant ticketing/helpdesk solution, which runs beautifully on almost any LAMP (Linux, Apache, MySQL, Perl (yes, I know it’s PHP really;-)) server, but what happens when you work in a Windows-only environment? OTRS does have a Windows installer, but it is somewhat clunky and requires almost as much work to configure as manually installing. Installing as components allows you to upgrade portions of the system and have more granular control over the setup.</p>
<p>I’ve recently installed OTRS on a Windows Server 2008 R2 (64-bit) server, including experimenting with various combinations of IIS/Apache, MSSQL2008/MySQL, ActiveState Perl 32-bit/64-bit, different configurations and setups - these are my findings:</p>
<ul>
<li>IIS7, MSSQL (64), ActiveState Perl (64) – to make use of the native IIS7 webserver and 64-bit Perl. The server does run but performs abysmally, and you have to force IIS to run a 32-bit application pool to get Perl to work.</li>
<li>Apache2.2 (32), MSSQL (64) and ActiveState Perl (32) – again OTRS will run but performance is grim</li>
<li>Apache2.2 (64 unofficial binaries), MySQL (64) and ActiveState Perl (64) – this seemed the most promising approach but without a 64-bit version of mod_perl the performance was worse than the final combo</li>
<li>Apache2.2 (32), MySQL (64) and ActiveState Perl (32) – this performed the best, and although there are slow portions (SysConfig) the general user experience was good.</li>
</ul>
<p><em>None of these combinations came close to the performance of OTRS running on a native Linux server, my 64-bit Ubuntu server absolutely flew, with less processor and RAM than the Windows box. In short, if you have the skills, use the Linux option. Yes, yes I do feel a little dirty now, sorry Mr Gates.</em></p>
<p>So, the final setup I have opted for is:</p>
<ul>
<li>A Virtual Machine running Windows Server 2008, 2GB RAM and 2 vCPUs at 3.2Ghz</li>
<li>MySQL Server 5.5, 64-bit</li>
<li>Apache 2.2, 32-bit</li>
<li>ActiveState Perl, 32-bit</li>
</ul>
<p><span id="more-1019"></span></p>
<h2>Installing Apache HTTP Server</h2>
<p>Make sure you don’t have IIS running (eye-roll), and then click through the wizard…</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb.png" alt="image" width="244" height="185" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image1.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb1.png" alt="image" width="244" height="186" border="0" /></a></p>
<p>Configure the network and server details</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image2.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb2.png" alt="image" width="244" height="186" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image3.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb3.png" alt="image" width="244" height="185" border="0" /></a></p>
<p>Do a custom installation and ensure that you install it to D:\Apache\</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image4.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb4.png" alt="image" width="244" height="187" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image5.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb5.png" alt="image" width="244" height="185" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image6.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb6.png" alt="image" width="244" height="186" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image7.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb7.png" alt="image" width="244" height="186" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image8.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb8.png" alt="image" width="244" height="186" border="0" /></a></p>
<p>Apache should now be running on the local machine, navigate to <a href="http://localhost">http://localhost</a> to check that it’s running. You should see a page saying “It works!”</p>
<h2>Installing MySQL</h2>
<p>Installing MySQL is again a very simple click-through process, once you’ve downloaded it from <a href="http://dev.mysql.com/downloads/">http://dev.mysql.com/downloads/</a>. I am installing the 64-bit server to make the most of the 64-bit performance on this server.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image9.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb9.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image10.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb10.png" alt="image" width="244" height="189" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image11.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb11.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image12.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb12.png" alt="image" width="244" height="189" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image13.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb13.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image14.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb14.png" alt="image" width="244" height="190" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image15.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb15.png" alt="image" width="244" height="184" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image16.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb16.png" alt="image" width="244" height="185" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image17.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb17.png" alt="image" width="244" height="184" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image18.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb18.png" alt="image" width="244" height="184" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image19.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb19.png" alt="image" width="244" height="184" border="0" /></a></p>
<h4>Changes to MySQL’s default configuration file</h4>
<p>Stop the MySQL service and edit c:\Program Files\MySQL\MySQL Server 5.5\my.ini in your favourite text editor– you will need to run it as an Administrator.</p>
<p>Change the default data directory (you wouldn’t leave a MSSQL DB on the System drive would you?!) – create a folder on the data drive (I use D:\MySQL\Data).</p>
<pre>#Path to the database root
datadir=&quot;D:\MySQL\Data&quot;</pre>
<p>Go to c:\ProgramData\MySQL\MySQL 5.5\data\ and move all the files and folders there to the folder you specified for datadir.</p>
<p>For performance, it’s also recommended that you change the query_cache_size to “32M”</p>
<p>You can now start the MySQL service again.</p>
<h2>Installing ActiveState Perl</h2>
<p>You can download the 32-bit version of ActiveState Perl here: <a href="http://www.activestate.com/activeperl/downloads">http://www.activestate.com/activeperl/downloads</a></p>
<p>Run through the installation, accepting the defaults apart from changing the location of the installation to D:\Perl\:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image20.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb20.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image21.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb21.png" alt="image" width="244" height="190" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image22.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb22.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image23.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb23.png" alt="image" width="244" height="189" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image24.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb24.png" alt="image" width="244" height="189" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image25.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb25.png" alt="image" width="244" height="189" border="0" /></a></p>
<h2>Installing OTRS</h2>
<p>At this point, we will download and extract the OTRS installation from <a title="http://ftp.otrs.org/pub/otrs/otrs-3.0.9.zip" href="http://ftp.otrs.org/pub/otrs/otrs-3.0.9.zip">http://ftp.otrs.org/pub/otrs/otrs-3.0.9.zip</a> and extract it to D:\OTRS\</p>
<p>Once that’s done, we can begin joining up the dots.</p>
<h2>Installing the correct Perl Packages</h2>
<p>Run a command prompt as administrator and navigate to the OTRS installation directory (for me, d:\OTRS).</p>
<p>&nbsp;</p>
<pre>perl bin\otrs.CheckModules.pl</pre>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image26.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb26.png" alt="image" width="217" height="244" border="0" /></a></p>
<p>You can then use the Perl Package Manager to install the missing required packages, and some of the options:</p>
<p>&nbsp;</p>
<pre>ppm install date::format

ppm install dbd::mysql

ppm install json::xs

ppm install apache::reload

ppm install net::dns

ppm install net::ldap

ppm install pdf::api2

ppm install http://cpan.uwinnipeg.ca/PPMPackages/12xx/mod_perl.ppd</pre>
<p>&nbsp;</p>
<p>(this one requires that you point it to the correct Apache modules folder, for me d:\Apache\modules)</p>
<p>If you re-run the otrs.CheckModules.pl script it should now pass all modules.</p>
<h2>Configuring Apache</h2>
<p>The main Apache configuration file is installed at d:\Apache\conf\httpd.conf, open it in Notepad and add the following lines at the end of the config file:</p>
<p>&nbsp;</p>
<pre># load mod_perl
LoadFile &#039;d:/Perl/bin/perl512.dll&#039; #match your perl installation
LoadModule perl_module modules/mod_perl.so

Include &#039;d:/OTRS/scripts/apache2-httpd.include.conf&#039; # match your OTRS installation</pre>
<p>&nbsp;</p>
<p>Also modify the  DirectoryIndex directive to be index.pl rather than index.pl.</p>
<pre>DirectoryIndex index.pl</pre>
<h2>Configuring OTRS</h2>
<p>Configuring OTRS is initially a case of changing paths referenced in the configuration files to the Windows paths that match your environments.</p>
<h4>D:/OTRS/scripts/apache2-httpd.include.conf</h4>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td valign="top"><strong>Change this</strong></td>
<td valign="top"><strong>…to this</strong></td>
</tr>
<tr>
<td valign="top">ScriptAlias /otrs/ "/opt/otrs/bin/cgi-bin/"</td>
<td valign="top">ScriptAlias /otrs/ "D:/otrs/bin/cgi-bin/"</td>
</tr>
<tr>
<td valign="top">Alias /otrs-web/ "/opt/otrs/var/httpd/htdocs/"</td>
<td valign="top">Alias /otrs-web/ "D:/otrs/var/httpd/htdocs/"</td>
</tr>
<tr>
<td valign="top">Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl</td>
<td valign="top">Perlrequire D:/otrs/scripts/apache2-perl-startup.pl</td>
</tr>
<tr>
<td valign="top">&lt;Directory "/opt/otrs/bin/cgi-bin/"&gt;</td>
<td valign="top">&lt;Directory "D:/otrs/bin/cgi-bin/"&gt;</td>
</tr>
<tr>
<td valign="top">&lt;Directory "/opt/otrs/var/httpd/htdocs/"&gt;</td>
<td valign="top">&lt;Directory "D:/otrs/var/httpd/htdocs/"&gt;</td>
</tr>
<tr>
<td valign="top">&lt;Directory "/opt/otrs/var/httpd/htdocs/skins/*/*/css-cache"&gt;</td>
<td valign="top">&lt;Directory "D:/otrs/var/httpd/htdocs/skins/*/*/css-cache"&gt;</td>
</tr>
<tr>
<td valign="top">&lt;Directory "/opt/otrs/var/httpd/htdocs/js/js-cache"&gt;</td>
<td valign="top">&lt;Directory "D:/otrs/var/httpd/htdocs/js/js-cache"&gt;</td>
</tr>
</tbody>
</table>
<p>I performed a search/replace for “/opt” with “D:”, and checked through after.</p>
<h4>D:\OTRS\scripts\apache2-perl-startup.pl</h4>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td valign="top"><strong>Change this</strong></td>
<td valign="top"><strong>…to this</strong></td>
</tr>
<tr>
<td valign="top">use lib "/opt/otrs/";</td>
<td valign="top">use lib "D:/otrs/";</td>
</tr>
<tr>
<td valign="top">use lib "/opt/otrs/Kernel/cpan-lib";</td>
<td valign="top">use lib "D:/otrs/Kernel/cpan-lib";</td>
</tr>
<tr>
<td valign="top">use lib "/opt/otrs/Custom";</td>
<td valign="top">use lib "D:/otrs/Custom";</td>
</tr>
</tbody>
</table>
<h4></h4>
<h4>D:\OTRS\kernel\Config.pm</h4>
<p>Rename D:\OTRS\kernel\Config.pm.dist to Config.pm, and open Config.pm in your text editor.</p>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td valign="top"><strong>Change this</strong></td>
<td valign="top"><strong>…to this</strong></td>
</tr>
<tr>
<td valign="top">$Self-&gt;{Home} = '/opt/otrs';</td>
<td valign="top">$Self-&gt;{Home} = 'D:/otrs';</td>
</tr>
</tbody>
</table>
<p>Add the following lines to configure logging:</p>
<pre>$Self-&gt;{&#039;LogModule&#039;} = &#039;Kernel::System::Log::File&#039;;
$Self-&gt;{&#039;LogModule::LogFile&#039;} = &quot;$Self-&gt;{Home}/var/log/otrs.log&quot;;</pre>
<h4>Running the web installer</h4>
<p>Run <a href="http://localhost/otrs/installer.pl">http://localhost/otrs/installer.pl</a> in your browser of choice and click through the initial details and accepth the licensing agreement:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image27.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb27.png" alt="image" width="244" height="145" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image28.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb28.png" alt="image" width="244" height="185" border="0" /></a></p>
<p>Enter the MySQL root user and password you created earlier, and test the settings</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image29.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb29.png" alt="image" width="244" height="115" border="0" /></a></p>
<p>Next configure a user, password, database name and create the database. you don’t have to change the default names, but if you don’t change the password from the default “hot” to something complex, you deserve to get hacked!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image30.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb30.png" alt="image" width="244" height="178" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image31.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb31.png" alt="image" width="244" height="104" border="0" /></a></p>
<p>Configure the general system, FQDN, admin email address and logging</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image32.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb32.png" alt="image" width="244" height="171" border="0" /></a></p>
<p>Configure incoming and outbound email</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image33.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb33.png" alt="image" width="244" height="178" border="0" /></a></p>
<p>And finish!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image34.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb34.png" alt="image" width="244" height="70" border="0" /></a></p>
<p>You can now log in to your OTRS installation – but we’re not finished yet!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image35.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb35.png" alt="image" width="244" height="126" border="0" /></a></p>
<h4>Configuring Scheduled Jobs</h4>
<p>The MSI installer uses Cron4Win, but in my experience it was barely working, clunky and not at all suitable for a production service. Since the jobs are just .pl scripts, it’s better to run them from the Scheduled Tasks.</p>
<p>Open up the Task Scheduler and run the Create Task action (not Create Basic Task). Name the task and configure the user you want to run under. Ensure that you select to run whether the user is logged in or not, and run with elevated privileges. I have used a specific account with locked down privileges.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image36.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb36.png" alt="image" width="244" height="183" border="0" /></a></p>
<p>Move on to the “Triggers” panel and create a schedule for the task (see the table below for my config)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image37.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb37.png" alt="image" width="244" height="211" border="0" /></a></p>
<p>Move to the “Actions” panel and create an action to start a program and pass the script as an argument (again, see the table below for my config).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image38.png"><img class="colorbox-1019"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb38.png" alt="image" width="227" height="244" border="0" /></a></p>
<p>You can accept the default settings for the rest of the panes.</p>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td valign="top"><strong>Task Name</strong></td>
<td valign="top" width="177"><strong>Triggers</strong></td>
<td valign="top" width="380"><strong>Program/Arguments</strong></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS 1 Minute Actions</span></td>
<td valign="top" width="177"><span style="font-size: x-small;">At 00:00 Every day – After triggered, repeat every 00:01:00 indefinitely.</span></td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.PostMaster.pl</span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS 10 Minute Actions</span></td>
<td valign="top" width="177"><span style="font-size: x-small;">At 00:00 Every day – After triggered, repeat every 10 minutes indefinitely.</span></td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.GenericAgent.pl -c db</span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS 15 Minute Actions</span></td>
<td valign="top" width="177"><span style="font-size: x-small;">At 00:00 Every day – After triggered, repeat every 15 minutes indefinitely.</span></td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.GenericAgent.pl </span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS 2 Hour Actions</span></td>
<td valign="top" width="177"><span style="font-size: x-small;">At 00:00 Every day – After triggered, repeat every 02:00:00 indefinitely.</span></td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.PendingJobs.pl<br />
d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.DeleteSessionIDs.pl --expired</span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS Daily Actions</span></td>
<td valign="top" width="177"><span style="font-size: x-small;">At 00:05 every day</span></td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.CleanUp.pl<br />
</span><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.RebuildTicketIndex.pl</span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS Hourly Actions</span></td>
<td valign="top" width="177">At 00:15 on 13/07/2011 – After triggered, repeat every 1 hour indefinitely.</td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.UnlockTickets.pl --timeout</span></td>
</tr>
<tr>
<td valign="top"><span style="font-size: x-small;">OTRS Weekly Actions</span></td>
<td valign="top" width="177">At 11:00 every Sunday of every week</td>
<td valign="top" width="380"><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:/OTRS/bin/otrs.DeleteCache.pl<br />
</span><span style="font-size: x-small;">d:\Perl\bin\perl.exe d:/OTRS/bin/otrs.LoaderCache.pl -o delete</span></td>
</tr>
</tbody>
</table>
<p>Run each of the jobs manually to ensure that they process OK, without any errors. I have exported my jobs as XML files, <a href="http://www.definit.co.uk/wp-content/uploads/2011/07/OTRS-Tasks.zip" target="_blank">which are available here to download and import</a> (assuming you’ve put all the files in the same place as me!)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/07/image39.png"><img class="colorbox-1019"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/07/image_thumb39.png" alt="image" width="244" height="63" border="0" /></a></p>
<p>That’s it, OTRS is ready for you to configure, which is way beyond the scope of this post!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/07/installing-configuring-otrs-3-0-9-windows-server-2008/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring a Guest wireless network with restricted access to Production VLANs</title>
		<link>http://www.definit.co.uk/2011/06/configuring-guest-wireless-network-restricted-access-production-vlans/</link>
		<comments>http://www.definit.co.uk/2011/06/configuring-guest-wireless-network-restricted-access-production-vlans/#comments</comments>
		<pubDate>Wed, 29 Jun 2011 16:42:47 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[VLAN]]></category>
		<category><![CDATA[access control lists]]></category>
		<category><![CDATA[acl]]></category>
		<category><![CDATA[guest]]></category>
		<category><![CDATA[peap]]></category>
		<category><![CDATA[secure]]></category>
		<category><![CDATA[vlan]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=924</guid>
		<description><![CDATA[It’s a fairly common requirement – setting up a guest WiFi network that is secure from the rest of your LAN. You need a secure WLAN access for the domain laptops which has full access to the Server and Client VLANs, but you also need a guest WLAN for visitors to the office which only [...]]]></description>
				<content:encoded><![CDATA[<p>It’s a fairly common requirement – setting up a guest WiFi network that is secure from the rest of your LAN. You need a secure WLAN access for the domain laptops which has full access to the Server and Client VLANs, but you also need a guest WLAN for visitors to the office which only allows internet access. Since the budget is limited, this must all be accomplished via a single Access Point – for this article, the access point is a Cisco WAP4410N.<span id="more-924"></span></p>
<h4>Existing Network layout and Design</h4>
<p>Assuming there is a core network switch and that it is a Layer 3 enabled switch which has inter-VLAN routing configured. By default all the VLANs can talk to each other, routed through the switch. The switch also is configured with a gateway of last resort pointing to the firewall’s internal IP – this allows internet access.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/Wireless.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="Wireless" src="http://www.definit.co.uk/wp-content/uploads/2011/06/Wireless_thumb.png" border="0" alt="Wireless" width="244" height="207" /></a></p>
<p>So the headlines are:</p>
<ul>
<li><strong>Existing Production VLANs</strong> – VLAN10 iSCSI (10.1.10.0/24), 11 Server (10.1.11.0/24) and 12 Client(10.1.12.0/24) – these all route through the core switch and can see each other.</li>
<li><strong>Create a Guest VLAN</strong> – to be created VLAN13 (10.1.13.0/24), which can access the internet, but not the existing VLANs</li>
<li><strong>Create a <em>Secure</em> Wireless LAN</strong> – all traffic assigned to VLAN12. Since it’s a domain environment this will use PEAP authentication, so clients can use their domain password to access the WLAN.</li>
<li><strong>Create a Guest Wireless LAN</strong> – all traffic assigned to VLAN13. This will use a static WPA2 access passphrase which can be changed regularly – since it won’t be used by domain clients or those who will repeatedly access it, it's not a huge admin overhead.</li>
</ul>
<p>I’m not going to cover setting up a Domain, Certificate Authority, or Internet Authentication Service. I am assuming you have this already, and have issued a Server certificate to your IAS server, and the CA is trusted throughout your domain clients. My demo lab set up:</p>
<ul>
<li><strong>Wireless Access Point (Cisco WAP4410N)</strong> – Definit-WAP</li>
<li><strong>Core Network Switch (Cisco 3750) – </strong>Definit-SW</li>
<li><strong>Active Directory Domain Controller – </strong>DefinIT-DC</li>
<li><strong>Public Key Infrastructure</strong> – DefinIT-CA</li>
<li><strong>Windows Server 2003 IAS</strong> – DefinIT-IAS</li>
</ul>
<h4>Preparing the Network Core</h4>
<p>All commands are from the Configure prompt (config t)</p>
<p>The first task is to configure the new Guest VLAN13 using the commands below. The IP address assigned to the vlan13 interface acts as the gateway for VLAN13 on the core switch. (VTP will propagate the VLAN settings to the access switches, if configured).</p>
<pre escaped="true" lang="dos" line="1">vlan1
name DefinITGuest
interface Vlan13
description DefinIT Guest VLAN
ip address 10.1.13.1 255.255.255.0</pre>
<p>Next configure the interface for the Cisco WAP4410N to plug into on the core switch (in this case G2/0/13) – port needs to be in trunk mode to carry multiple VLANs. I’ve configured the default VLAN to be the Server VLAN11 as this is the one I want the web management interface to be accessible on. Any untagged traffic will be assigned to this by default. Here you could also restrict the allowed VLANs using “switchport trunk allowed 13” but this wouldn’t allow the secure WLAN to access the server/client VLANs.</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">interface GigabitEthernet2/0/13
description DefinIT-WAP Trunk
switchport trunk encapsulation dot1q
switchport trunk native vlan 11
switchport mode trunk
no shutdown</pre>
<p>The Guest WLAN will not be allowed access to the server VLAN in any form, so it can’t use the client DHCP server. Fortunately the switch is more than capable of handling that – we move on to the DHCP pool configuration. Because the DHCP scope is on the same IP network as the VLAN13 interface, only that interface that will respond to DHCP requests (which is good, because I don’t want my network ruined by fighting DHCP servers!)</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">ip dhcp pool GuestWLAN
network 10.1.13.0 255.255.255.0
default-router 10.1.13.1
dns-server 8.8.8.8, 8.8.4.4</pre>
<p>Now that the plumbing is set up, we need to control who is allowed to access what. This means creating an Access List to deny the guest VLAN access to the production VLANs. Note that the format for the ACL does not use a subnet mask, but a wildcard mask. You need to subtract each octet of your subnet mask from 255 to get the wildcard mask (e.g 255.255.255.0 becomes 255-255=0, 255-255=0, 255-255=0 and 255-0=255 to get 0.0.0.255).</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">ip access-list extended DefinIT_GUEST
remark Deny Guest VLAN13 access to other VLANs
deny ip any 10.1.10.0 0.0.0.255
deny ip any 10.1.11.0 0.0.0.255
deny ip any 10.1.12.0 0.0.0.255
permit ip any any</pre>
<p>Finally, apply the Access List to the Guest VLAN13 interface. Note that the direction is “in” which seems counter-intuitive but is correct. The perspective is <em>from</em> the switch, so traffic is coming <strong>in </strong>from a client on the guest VLAN to the VLAN13 interface on the switch.</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">interface Vlan13
ip access-group DefinIT_GUEST in</pre>
<p>That’s it, core network configured!</p>
<h4>Configure IAS to provide RADIUS authentication</h4>
<p>Create a new RADIUS client by selecting the RADIUS Clients folder and right-click – new. Configure a friendly name for the Wireless Access Point, and the IP you’re using for the WAP (for me, DefinIT-WAP and 10.1.13.20). Configure the Client-Vendor to Cisco – or the vendor you’re using, and a strong shared secret (random, 13 characters upper/lower/alpha/numeric/special will do nicely).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image.png"><img class="colorbox-924"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb.png" border="0" alt="image" width="244" height="188" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image1.png"><img class="colorbox-924"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb1.png" border="0" alt="image" width="244" height="189" /></a></p>
<p>Create an new Remote Access Policy using the Remote Access Policy wizard (right-click Remote Access Policies and select new…):</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image2.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb2.png" border="0" alt="image" width="244" height="194" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image3.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb3.png" border="0" alt="image" width="244" height="194" /></a></p>
<p>Select Wireless as the access method, and select a Windows Security group to allow access:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image4.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb4.png" border="0" alt="image" width="244" height="194" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image5.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb5.png" border="0" alt="image" width="244" height="193" /></a></p>
<p>Select PEAP as the Authentication method, and configure the server certificate for identification, and the EAP type to use MSCHAP-v2. If you have issued client certificates to all users, you can add Smart Card or other Certificate to the EAP authentication methods.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image6.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb6.png" border="0" alt="image" width="225" height="244" /></a></p>
<h4>Configuring the Access Point</h4>
<p>I’m assuming you can manage to turn the thing on, access it’s web interface and assign the static IP you picked earlier to the AP, now we can configure the authentication and VLANs for the guest and secure WLANs.</p>
<p>Open the Wireless &gt; Basic settings and configure your two SSIDs, save and then open the Security page.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image7.png"><img class="colorbox-924"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb7.png" border="0" alt="image" width="244" height="147" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image8.png"><img class="colorbox-924"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb8.png" border="0" alt="image" width="244" height="170" /></a></p>
<p>Here you can configure WPA2-Personal for the Guest SSID, and WPA2-Enterprise Mixed for the Secure SSID. Configure the IP address of you RADIUS server and the Share Secret you configured earlier.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image9.png"><img class="colorbox-924"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb9.png" border="0" alt="image" width="244" height="241" /></a></p>
<p>Now move onto the VLAN and QoS page – here you need to enable VLAN but leave the defaults otherwise. Under QoS you need to assign the VLAN ID for each network – 13 for Guest and 12 for Secure</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/06/image10.png"><img class="colorbox-924"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/06/image_thumb10.png" border="0" alt="image" width="244" height="168" /></a></p>
<p>That’s more or less it, time to test with a handy wireless client sitting nearby…</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/06/configuring-guest-wireless-network-restricted-access-production-vlans/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>A work/learn balance</title>
		<link>http://www.definit.co.uk/2011/06/a-worklearn-balance/</link>
		<comments>http://www.definit.co.uk/2011/06/a-worklearn-balance/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 10:50:58 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Emerging Technologies]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Skill Set]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1561</guid>
		<description><![CDATA[As with all things IT the pace of technology change is relentless and we are constantly and rightly told that change is good and that being able to evolve and move with the times is an important skill and ability. However I am often left wondering how we can maintain a balance. I have all [...]]]></description>
				<content:encoded><![CDATA[<p>As with all things IT the pace of technology change is relentless and we are constantly and rightly told that change is good and that being able to evolve and move with the times is an important skill and ability.</p>
<p>However I am often left wondering how we can maintain a balance. I have all to often seen IT professionals falling into the trap chasing the latest and greatest and rushing to try to implement or learn new emerging technologies without much thought to what they already have.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/06/a-worklearn-balance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing SharePoint Foundation 2010 with Remote BLOB support in SQL 2008 R2</title>
		<link>http://www.definit.co.uk/2011/04/installing-sharepoint-foundation-2010-remote-blob-support-sql-2008-r2/</link>
		<comments>http://www.definit.co.uk/2011/04/installing-sharepoint-foundation-2010-remote-blob-support-sql-2008-r2/#comments</comments>
		<pubDate>Thu, 14 Apr 2011 11:45:22 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SQL 2008]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[RBS]]></category>
		<category><![CDATA[remote BLOB storage]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SharePoint Foundation 2010]]></category>
		<category><![CDATA[SQL Server 2008]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=881</guid>
		<description><![CDATA[Configuring WSS or SharePoint Services for a small client is a pretty effective way of getting a document management solution for a reasonable cost point. One of the limitations that caused headaches was that it used to have a maximum storage of 4GB, which was the database limit. If you wanted to go larger, you [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image.png"><img class="colorbox-881"  style="background-image: none; margin-top: 0px; margin-right: 0px; margin-bottom: 20px; margin-left: 20px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px initial initial;" title="SharePoint Foundation 2010" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb.png" alt="SharePoint Foundation 2010" width="160" height="51" align="right" border="0" /></a>Configuring WSS or SharePoint Services for a small client is a pretty effective way of getting a document management solution for a reasonable cost point. One of the limitations that caused headaches was that it used to have a maximum storage of 4GB, which was the database limit. If you wanted to go larger, you would need either a) multiple SPS installations, b) a full version of SQL server, or c) the full version of MOSS. None of those solutions are particularly cost effective, and for a small company cost is king.<span id="more-881"></span></p>
<p>SharePoint Foundation 2010 introduces a new 10GB limit with SQL Server Express 2008 R2 for database sizes, and something called “Remote BLOB” storage, which limits you only to your storage. Traditionally, BLOBs (Binary Large OBjects) have been stored in the Database file itself with the structured data. Put simply Remote BLOB stores the file data in a folder rather than the database. This makes a lot of sense to me as the largely simple, unstructured file data does not really require the structured data environment of the database.</p>
<h3>Installing SQL Express 2008 R2</h3>
<p>For some reason best known to themselves, Microsoft didn’t include the option to install SQL Express 2008 R2 with the SharePoint Foundation installer, presumably the want to keep the installer size down to a minimum. So the first port of call is to <a href="http://www.microsoft.com/express/Database/" target="_blank">download the SQL Express installer from the Microsoft SQL Express download site</a>. Installing is very straight-forward, so I won’t go into much detail. Once downloaded, run the installer and click through the install, I created a user account for SQL and SharePoint services to run under.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image1.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb1.png" alt="image" width="244" height="183" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image2.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb2.png" alt="image" width="244" height="184" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image3.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb3.png" alt="image" width="244" height="184" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image4.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb4.png" alt="image" width="244" height="184" border="0" /></a></p>
<h4>Provisioning the FILESTREAM provider</h4>
<p>Once installed, we can move on to enabling the FILESTREAM provider. Open the SQL Server Configuration Manager and select the SQL Server Services node. Select the SQL instance you just installed, right click and select “Properties”. Select the FILESTREAM tab and tick all 3 boxes to enable:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image5.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb5.png" alt="image" width="395" height="244" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image6.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb6.png" alt="image" width="221" height="244" border="0" /></a></p>
<p>Next open SQL Server Management Studio and open a new query window. Run the following query to enable FILESTREAM:</p>
<pre escaped="true" lang="sql" line="1">EXEC sp_configure filestream_access_level, 2
RECONFIGURE</pre>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image7.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb7.png" alt="image" width="244" height="78" border="0" /></a></p>
<p>At this point, we move on to installing SPF 2010.</p>
<h3>Installing SharePoint Foundation 2010</h3>
<p>Run the installer and click “Install software prerequisites” – check you’re happy with the listed updates, roles and features and then click next.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image8.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb8.png" alt="image" width="244" height="185" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image9.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb9.png" alt="image" width="244" height="184" border="0" /></a></p>
<p>The go for a coffee, or two…</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image10.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb10.png" alt="image" width="244" height="183" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image11.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb11.png" alt="image" width="244" height="183" border="0" /></a></p>
<p>This unfortunately requires a restart before we can continue, which is a shame! Once the server has bounced, re-run the installer and click “Install SharePoint Foundation”. At this point I had an issue with the installer telling me “A system restart from a previous installation or update is pending. Restart your computer and run setup to continue.” Restarting did not resolve this issue, I had to <a href="http://blogs.technet.com/b/wbaer/archive/2009/12/11/common-microsoft-sharepoint-server-2010-installation-issues-and-resolutions.aspx" target="_blank">modify the registry keys mentioned on this technet blog</a>.</p>
<p>Once I’d done that, I was able to run the installer, choose the location for the search index data and watch the blue bar:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image12.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb12.png" alt="image" width="244" height="200" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image13.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb13.png" alt="image" width="244" height="200" border="0" /></a></p>
<p>Run the SharePoint Products Configuration Wizard and create a new farm</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image14.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb14.png" alt="image" width="244" height="209" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image15.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb15.png" alt="image" width="244" height="209" border="0" /></a></p>
<p>Enter the database details and create a pass phrase for joining the SPF 2010 farm</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image16.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb16.png" alt="image" width="244" height="209" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image17.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb17.png" alt="image" width="244" height="209" border="0" /></a></p>
<p>Configure the SharePoint Central Administration Web Application (defaults are fine)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image18.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb18.png" alt="image" width="244" height="209" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image19.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb19.png" alt="image" width="244" height="208" border="0" /></a></p>
<p>After a bit of crunching you should see the “Configuration Successful” page.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image20.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb20.png" alt="image" width="244" height="209" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image21.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb21.png" alt="image" width="244" height="209" border="0" /></a></p>
<h4>Configuring the SharePoint Farm</h4>
<p>Once finished the Central Administration web page should open and offer you the chance to configure the farm, either through a wizard or manually – I’m going to go through the wizard. I’m not going to document the wizard on here because it’s pretty straightforward. You do need to create a Site and Content Database in order to enable the BLOB Store.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image22.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb22.png" alt="image" width="264" height="133" border="0" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image23.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb23.png" alt="image" width="244" height="132" border="0" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image24.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb24.png" alt="image" width="520" height="193" border="0" /></a></p>
<h3>Provision a BLOB Store with the FILESTREAM provider</h3>
<p>Return to SQL Server Management Studio and select the database for the Site you’ve just created and want to enable BLOB storage for and open a new query window. In my case, this is WSS_Content (and will be for you used the wizard to create your first site). Run the following queries against the content DB:</p>
<pre escaped="true" lang="sql" line="1">use [ContentDbName]
if not exists (select * from sys.symmetric_keys where name = N'##MS_DatabaseMasterKey##')create master key encryption by password = N'Admin Key Password !2#4'</pre>
<p>&nbsp;</p>
<pre escaped="true" lang="sql" line="1">use [ContentDbName]
if not exists (select groupname from sysfilegroups where groupname=N'RBSFilestreamProvider')alter database [ContentDbName] add filegroup RBSFilestreamProvider contains filestream</pre>
<p>&nbsp;</p>
<pre escaped="true" lang="sql" line="1">use [ContentDbName]
alter database [ContentDbName] add file (name = RBSFilestreamFile, filename = 'c:\Blobstore') to filegroup RBSFilestreamProvider</pre>
<h4>Installing RBS on the SharePoint Foundation Server</h4>
<p><em>After a lot of head scratching I finally found </em><a href="http://social.msdn.microsoft.com/Forums/en-US/sharepoint2010general/thread/ea314bd8-d950-4136-8f9e-d5e92d6cb15f" target="_blank"><em>mention</em></a><em> that BEFORE you install RBS, make sure you enable NAMED PIPES for this instance of SQL Server or the RBS won’t install correctly.</em> Head over to the <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ceb4346f-657f-4d28-83f5-aae0c5c83d52&amp;displaylang=en" target="_blank">SQL Server 2008 Feature Pack site</a> and download the RBS package for your server type, which comes down as RBS.msi. Run a command prompt as an administrator and then install the MSI using the following command, changing DBNAME, DBINSTANCE to your environment (DBINSTANCE for me was the default instance on the server, so the server name was required):</p>
<pre escaped="true" lang="dos" line="1">msiexec /qn /lvx* rbs_install_log.txt /i RBS.msi TRUSTSERVERCERTIFICATE=true FILEGROUP=PRIMARY DBNAME="WSS_Content" DBINSTANCE="&lt;server name&gt;" FILESTREAMFILEGROUP=RBSFilestreamProvider FILESTREAMSTORENAME=FilestreamProvider_1</pre>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image25.png"><img class="colorbox-881"  style="background-image: none; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb25.png" alt="image" width="111" height="100" align="right" border="0" /></a>You won’t get any output from that command, but after a minute or so you should be able to check the log file that there is a line containing “Product: SQL Server 2008 R2 Remote Blob Store -- Installation completed successfully.” You should also be able to see several new “mssqlrbs*” tables in your content database.</p>
<h3>Enable and test RBS</h3>
<p>Open the SharePoint 2010 Management Shell on server and enter the following commands to test and enable RBS:</p>
<pre escaped="true" lang="dos" line="1">$cdb = Get-SPContentDatabase -WebApplication http://SiteName</pre>
<p>[No output]</p>
<pre escaped="true" lang="dos" line="2">$rbss = $cdb.RemoteBlobStorageSettings</pre>
<p>[No output]</p>
<pre escaped="true" lang="dos" line="3">$rbss.Installed()</pre>
<p>Should respond with “True”</p>
<pre escaped="true" lang="dos" line="4">$rbss.Enable()</pre>
<p>[No output]</p>
<pre escaped="true" lang="dos" line="5">$rbss.SetActiveProviderName($rbss.GetProviderNames()[0])</pre>
<p>[No output]</p>
<pre escaped="true" lang="dos" line="6">$rbss | fl</pre>
<blockquote><p>Enabled                     : True</p>
<p>ActiveProviderName          : FilestreamProvider_1</p>
<p>MinimumBlobStorageSize      : 0</p>
<p>UpgradedPersistedProperties : {}</p></blockquote>
<p>As a final test, browse to our SharePoint site and upload a file &gt;100k to the default document library. You can then check the size of the file you uploaded to the files in the BLOB storage folder you created and check they match (they won’t be called the same thing!).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image26.png"><img class="colorbox-881"  style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb26.png" alt="image" width="244" height="106" border="0" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/04/image27.png"><img class="colorbox-881"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/04/image_thumb27.png" alt="image" width="304" height="104" border="0" /></a></p>
<p>Storing your files as BLOBs in Remote storage has it’s detractors, and I’m not going to get into that now – this article was to show how to do it if you have read around and require to do so. I hope it helps!</p>
<p>Links</p>
<ul>
<li><a href="http://technet.microsoft.com/en-us/library/ee663474.aspx" target="_blank">Install and configure RBS with the FILESTREAM provider (SharePoint Foundation 2010)</a></li>
<li><a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49c79a8a-4612-4e7d-a0b4-3bb429b46595&amp;displaylang=en" target="_blank">Download Microsoft SharePoint Foundation 2010</a></li>
<li><a href="http://blogs.msdn.com/b/priyo/archive/2009/11/17/sharepoint-2010-foundation-a-simple-install.aspx" target="_blank">SharePoint Foundation 2010… A simple install</a></li>
<li><a href="http://blogs.technet.com/b/wbaer/archive/2009/12/11/common-microsoft-sharepoint-server-2010-installation-issues-and-resolutions.aspx" target="_blank">Common SharePoint 2010 Installation Problems</a></li>
<li><a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ceb4346f-657f-4d28-83f5-aae0c5c83d52&amp;displaylang=en" target="_blank">SQL Server 2008 R2 Feature Pack</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/04/installing-sharepoint-foundation-2010-remote-blob-support-sql-2008-r2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring SSTP VPN connections to Threat Management Gateway 2010</title>
		<link>http://www.definit.co.uk/2011/03/configuring-sstp-vpn-connections-threat-management-gateway-2010/</link>
		<comments>http://www.definit.co.uk/2011/03/configuring-sstp-vpn-connections-threat-management-gateway-2010/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 17:31:49 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Forefront]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[SSL VPN]]></category>
		<category><![CDATA[SSTP]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=822</guid>
		<description><![CDATA[SSTP or SSL VPN connections are great for people working on client sites or behind very restrictive firewalls – they only require HTTPS (port 443) to be open to be able to connect. Unfortunately, you need to be running Windows 7 or Server 2008 (or newer) in order to make use of them. Threat Management [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010.png"><img class="colorbox-822"  style="background-image: none; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="TMG2010" src="http://www.definit.co.uk/wp-content/uploads/2011/03/TMG2010_thumb.png" border="0" alt="TMG2010" width="160" height="79" align="right" /></a>SSTP or SSL VPN connections are great for people working on client sites or behind very restrictive firewalls – they only require HTTPS (port 443) to be open to be able to connect. Unfortunately, you need to be running Windows 7 or Server 2008 (or newer) in order to make use of them. Threat Management Gateway 2010 is one option for an SSL VPN endpoint.</p>
<h3>SSTP VPN Requirements</h3>
<ul>
<li>Clients must be Windows 7/Server 2008 or newer</li>
<li>Certificate – either commercial or an internal Certificate Authority</li>
<li>Published CRL – SSTP clients check for the Certificate Revocation List of the CA</li>
<li>If you already have an SSL listener (e.g. for Exchange publishing rules) then you need a dedicated IP address for the SSTP connection</li>
</ul>
<p><span id="more-822"></span>TMG is configured as a “back-firewall” in this environment, with an adaptor in the LAN and one in the Perimeter (DMZ). The DMZ has a NAT relationship to the External public IPs.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/back-firewall.jpg"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="back-firewall" src="http://www.definit.co.uk/wp-content/uploads/2011/03/back-firewall_thumb.jpg" border="0" alt="back-firewall" width="244" height="149" /></a></p>
<h4>Requesting a Certificate from a Certificate Authority from Certificate Services 2003</h4>
<p>Create a sstp.inf file to define the request. The subject CN MUST be the exact URL you’re going to use to access the SSL VPN, you can’t use a Subject Alternative Name (SAN):</p>
<p>&nbsp;</p>
<pre escaped="true" lang="text" line="1">[NewRequest]

Subject="CN=sstp.definit.co.uk"

Exportable=TRUE

KeyLength=2048

KeySpec=1

MachineKeySet=TRUE

[EnhancedKeyUsageExtension]

OID=1.3.6.1.5.5.7.3.1 ; Server Authentication
OID=1.3.6.1.5.5.7.3.2 ; Client Authentication

[RequestAttributes]
CertificateTemplate = WebServer</pre>
<p>&nbsp;</p>
<p>Open a command prompt as administrator and generate a request file:</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">certreq –new c:\sstp.inf c:\sstp.req</pre>
<p>This generates a request file, which we’ll use to create the certificate on the Certificate Authority. Normally I would submit the request directly to the CA, but TMG does not play nicely with the RPC protocol, and I’ve not managed to get this working.</p>
<p>Copy the sstp.req file over to your CA and run another command prompt. Submit the request and save the response back to the TMG server:</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">certreq –submit –PolicyServer “CA01\CA Name” c:\sstp.req c:\sstp.cer</pre>
<p>This creates the certificate required for the SSL VPN, which you can then accept back on the TMG server:</p>
<p>&nbsp;</p>
<pre escaped="true" lang="dos" line="1">certreq –accept c:\sstp.cer</pre>
<p>If you need to, also install the CA's Root Certificate in the Trusted Root Certification Authorities.</p>
<h3>Configuring VPN Client Access</h3>
<p>There are 6 steps in the Remote Access Policy (VPN) panel of the TMG console for setting up VPN connections, not all of them required.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image1.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb1.png" border="0" alt="image" width="244" height="159" /></a></p>
<h4>Configure Address Assignment Method and Enable VPN Client Access</h4>
<p>So, click the first link and configure the Address Assignment. Since this TMG server has a leg in the LAN, it can use the DHCP server there, select the Internal Network. You can configure a static pool of IPs if you want – e.g. to put the clients on a more secure VLAN or to control access to resources based on a subnet:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image2.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb2.png" border="0" alt="image" width="220" height="244" /></a></p>
<p>Select the Access Networks tab, and you can configure which networks the VPN clients can connect to. I’ve selected External and Perimeter for obivious reasons – that’s where my clients will be coming from. For testing purposes I’ve also selected the Internal network so I can test the SSL VPN from my desktop.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image3.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb3.png" border="0" alt="image" width="220" height="244" /></a></p>
<p>On the Authentication tab, select MS-CHAPv2 – this will allow the most secure username and password authentication method without issuing client certificates or smart cards (EAP). CHAP and PAP are basically a no-go.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image4.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb4.png" border="0" alt="image" width="222" height="244" /></a></p>
<p>I haven’t configured a RADIUS server for this connection to keep it simple. The “Enable VPN Client Access” link will enable the System Policy firewall rule.</p>
<h4>Specify Windows Users or select a RADIUS Server</h4>
<p>Click on the Specify Windows Users link and select a group from your Active Directory to allow VPN access.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image5.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb5.png" border="0" alt="image" width="219" height="244" /></a></p>
<p>Under the General tab you can enable or disable VPN access and set a limit on the number of users allowed at the same time.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image6.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb6.png" border="0" alt="image" width="219" height="244" /></a></p>
<p>Under protocols, untick the Enable PPTP box and check the Enable SSTP</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image7.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb7.png" border="0" alt="image" width="221" height="244" /></a></p>
<p>Click “Select Listener…” and create a New listener to open the Web Listener Wizard. Name the listener</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image8.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb8.png" border="0" alt="image" width="244" height="229" /></a></p>
<p>Select the Networks you want to configure the Listener for – the same as you configured for the Remote Access Policy is a good idea! To ensure that the SSL VPN has a unique certificate and IP address, specify the IP address you want the listener to listen on in the Perimeter network:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image9.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb9.png" border="0" alt="image" width="244" height="229" /></a></p>
<p>Select the Certificate you created earlier for the Listener and complete the wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image10.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb10.png" border="0" alt="image" width="244" height="230" /></a></p>
<h4>Verify VPN Properties and Remote Access Configuration</h4>
<p>Essentially, that means check what you’ve just done…not sure why this warrants a step MS?</p>
<h4>View Firewall Policy for the VPN Clients Network</h4>
<p>Create a rule to control where you want your VPN Clients to access – for me the VPN clients are trusted and therefore I created a rule to allow “All outbound traffic” to “All Networks”:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image11.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb11.png" border="0" alt="image" width="244" height="43" /></a></p>
<h4>View Network Rules</h4>
<p>Similarly, check that you’re happy with the Network Rules for the VPN clients – I didn’t need to change anything here.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image12.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb12.png" border="0" alt="image" width="244" height="75" /></a></p>
<h4>Configure Quarantine (Optional)</h4>
<p>As this is optional and I only want a simple setup so this will be a later post, hopefully!</p>
<h3>Publishing your Certificate Revocation List</h3>
<p>My CA is configured to add an external URL to the Certificates it creates – crl.definit.co.uk. This means that the CRL can be made publicly available, this is a requirement for SSTP clients which by default will check a certificate’s validity.</p>
<p>Using the Web Publishing Rule Wizard I created a rule called “CRL Publishing”  to “allow” access to a <em>single Web site or load balancer</em> using HTTP connections to the internal site name and with a path of /CertEnroll/* on the Public name is the external URL – crl.definit.co.uk. I created a new HTTP only listener, set the rule to “No Authentication” and allowed “All users” access.</p>
<h3>Configuring the SSTP client</h3>
<p>Configuring the clients is very simple – on Windows 7 and Server 2008 it’s the same. First of all, ensure that you trust the certificate authority that issued the SSTP certificate created earlier, then open the “Set up a Connection or Network” wizard and select “Connect to a workplace”:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image13.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb13.png" border="0" alt="image" width="244" height="180" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image14.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb14.png" border="0" alt="image" width="244" height="180" /></a></p>
<p>Connect via your internet connection and enter the url (sstp.definit.co.uk) and a nice name for it:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image15.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb15.png" border="0" alt="image" width="244" height="180" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image16.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb16.png" border="0" alt="image" width="244" height="180" /></a></p>
<p>Enter your Active Directory User credentials (must be a member of the user group added earlier) and click “Connect”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image17.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb17.png" border="0" alt="image" width="244" height="180" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image18.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb18.png" border="0" alt="image" width="244" height="180" /></a></p>
<p>All being well, you’re connected! If you get errors, double check the certificates!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image19.png"><img class="colorbox-822"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb19.png" border="0" alt="image" width="244" height="180" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/configuring-sstp-vpn-connections-threat-management-gateway-2010/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Keep it simple stupid!</title>
		<link>http://www.definit.co.uk/2011/03/keep-it-simple-stupid/</link>
		<comments>http://www.definit.co.uk/2011/03/keep-it-simple-stupid/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 10:57:29 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[IIS 7]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1569</guid>
		<description><![CDATA[I am a firm believer in trying to keep things simpler where ever possible (but not for the sake of it) In years gone by I have heard many admins lament about the complexities of deploying IIS to work alongside third party plugins such as PHP. I can remember numerous occasions where I have wrestled [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/iisselfsignedcertificatelogo.png"><img class="alignright size-full wp-image-625 colorbox-1569" alt="iisselfsignedcertificatelogo.png" src="http://www.definit.co.uk/wp-content/uploads/2010/11/iisselfsignedcertificatelogo.png" width="160" height="80" /></a>I am a firm believer in trying to keep things simpler where ever possible (but not for the sake of it) In years gone by I have heard many admins lament about the complexities of deploying IIS to work alongside third party plugins such as PHP. I can remember numerous occasions where I have wrestled with the config and "best practice".</p>
<p>I am however glad to say finally Microsoft have taken notice of this and produced a very simple and effective deployment toolkit.</p>
<p>The Microsoft Web Platform Installer (now in version 3.0)</p>
<p>I have recently deployed an IIS7.0 server that required PHP and MySQL using this tool and I am very happy with  the results!</p>
<p>I know generally any system admin will avoid "wizards" as it were but in this instance it is time well saved!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/keep-it-simple-stupid/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Online Archiving with Exchange 2010? Can&#8217;t see your Online Archive in Outlook?</title>
		<link>http://www.definit.co.uk/2011/03/online-archiving-with-exchange-2010-cant-see-your-online-archive-in-outlook/</link>
		<comments>http://www.definit.co.uk/2011/03/online-archiving-with-exchange-2010-cant-see-your-online-archive-in-outlook/#comments</comments>
		<pubDate>Tue, 22 Mar 2011 12:37:18 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Office 2010]]></category>
		<category><![CDATA[archiving]]></category>
		<category><![CDATA[licensing]]></category>
		<category><![CDATA[online archive]]></category>
		<category><![CDATA[Outlook 2007]]></category>
		<category><![CDATA[outlook 2010]]></category>
		<category><![CDATA[Pro Plus]]></category>
		<category><![CDATA[vlk]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/03/22/online-archiving-with-exchange-2010-cant-see-your-online-archive-in-outlook/</guid>
		<description><![CDATA[Having recently managed several Exchange 2010 migration projects, one of the best new features which really sells it to systems administrators is the Online Archive. “No more managing PST files? When can we have it installed by?” The problem is, once they’ve purchased licensing for Exchange 2010 and installed and configured the server, migrated the [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516.png"><img class="colorbox-764"  style="background-image: none; border-right-width: 0px; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Exchange-2010-Logo-748516" border="0" alt="Exchange-2010-Logo-748516" align="right" src="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516_thumb.png" width="160" height="77" /></a>
<p>Having recently managed several Exchange 2010 migration projects, one of the best new features which really sells it to systems administrators is the Online Archive. “No more managing PST files? When can we have it installed by?”</p>
<p>The problem is, once they’ve purchased licensing for Exchange 2010 and installed and configured the server, migrated the users’ mailboxes and decommissioned the old Exchange 2003 server, the Online Archive feature is not available. The users have been enabled, and as of SP1 we have a separate Archive mailbox database configured on slow (cheap) storage, but the Online Archive is nowhere to be found in Outlook. If the users log on using OWA, lo and behold the Online Archive is available.</p>
<p>Now, fair enough, Microsoft require an Enterprise Client Access License (CAL) per user for this feature – it’s an Enterprise level feature and you pay for it. What is not so apparent unless you dig around the licensing site is that you also need the Volume Licensing version of Outlook 2010 or 2007 called “Pro Plus”. An OEM or Retail copy of Outlook <em>will not cut it.</em></p>
<p>Where does this leave them then? Small companies who have shelled out for OEM/Retail copies of Office Professional cannot afford to simply purchase a whole new VLK copy and upgrade. You can’t upgrade and OEM/Retail license to a VLK license, there’s no path. These companies have paid for the Enterprise CALs to use Enterprise features, only to find out that it’s not just the CAL they need!</p>
<p>To me, this is a BIG flaw in the way Microsoft are selling Exchange 2010. Licensing is complex enough without adding this sort of gotcha to a solution, and the companies have paid for an Enterprise CAL. They’re not trying to use an Enterprise feature on a Standard license, they’ve paid for it!</p>
<p>And people like me can’t turn round and recommend an upgrade to a client without upgrading the entire Office licensing too. I hope Microsoft sort this out, I really do, because in all honesty, it puts a real downer on an otherwise superb product that up til now, I have had no hesitation in recommending.</p>
<p>I normally make it a rule that what I post on here is a solution, unfortunately in this case the solution is expensive and involves upgrading your licensing.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/online-archiving-with-exchange-2010-cant-see-your-online-archive-in-outlook/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Exchange 2010 &#8211; CreateTestUser : Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity requirements</title>
		<link>http://www.definit.co.uk/2011/03/exchange-2010-createtestuser-mailbox-could-not-be-created-verify-that-ou-users-exists-and-that-password-meets-complexity-requirements/</link>
		<comments>http://www.definit.co.uk/2011/03/exchange-2010-createtestuser-mailbox-could-not-be-created-verify-that-ou-users-exists-and-that-password-meets-complexity-requirements/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 14:56:39 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[new-testcasconnectivityuser.ps1]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/03/21/exchange-2010-createtestuser-mailbox-could-not-be-created-verify-that-ou-users-exists-and-that-password-meets-complexity-requirements/</guid>
		<description><![CDATA[While using the New-TestCasConnectivityUser.ps1 script to create a test user for Exchange 2010’s connectivity testing, I ran into an issue: CreateTestUser : Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity requirements. At C:\Program Files\Microsoft\Exchange Server\V14\Scripts\new-TestCasConnectivityUser.ps1:255 char:27 +   $result = CreateTestUser &#60;&#60;&#60;&#60;  $exchangeServer $mailboxServer $securePassword $OrganizationalUnit $UMDialPlan [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516.png"><img class="colorbox-759"  style="background-image: none; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="Exchange-2010-Logo-748516" src="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516_thumb.png" border="0" alt="Exchange-2010-Logo-748516" width="160" height="77" align="right" /></a></p>
<p>While using the New-TestCasConnectivityUser.ps1 script to create a test user for Exchange 2010’s connectivity testing, I ran into an issue:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/image.png"><img class="colorbox-759"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/03/image_thumb.png" border="0" alt="image" width="244" height="57" /></a></p>
<pre escaped="true" lang="powershell" line="1">CreateTestUser : Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity requirements.
At C:\Program Files\Microsoft\Exchange Server\V14\Scripts\new-TestCasConnectivityUser.ps1:255 char:27
+   $result = CreateTestUser &lt;&lt;&lt;&lt;  $exchangeServer $mailboxServer $securePassword $OrganizationalUnit $UMDialPlan $UMExtension $Prompt
+ CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CreateTestUser</pre>
<p>Oddly enough, that OU does exist (as it will by default on any Windows Domain!) and the password complexity more than satisfied the complexity requirements. The issue is simple enough to fix, I opened the script in notepad and found the line beginning “new-mailbox” – and deleted the parameter “–OrgainisationalUnit:$OrganistationalUnit”. This means the new user defaults to the default OU – Users!</p>
<p>Just a simple fix to save some time! Thanks MS for the buggy script!</p>
<p><strong>Update</strong>: Looks like this occurs when there's more than one OU called Users - my fix will still sort it, but at least you know!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/exchange-2010-createtestuser-mailbox-could-not-be-created-verify-that-ou-users-exists-and-that-password-meets-complexity-requirements/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Batch Converting Video Files on Ubuntu Linux using HandbrakeCLI</title>
		<link>http://www.definit.co.uk/2011/03/batch-converting-video-files-on-ubuntu-linux-using-handbrakecli/</link>
		<comments>http://www.definit.co.uk/2011/03/batch-converting-video-files-on-ubuntu-linux-using-handbrakecli/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 17:25:48 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[batch]]></category>
		<category><![CDATA[handbrake]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/03/10/batch-converting-video-files-on-ubuntu-linux-using-handbrakecli/</guid>
		<description><![CDATA[Disclaimer: this post is more for my own recollection than anything else! When it comes to Linux, I’m an amateur and everything I do from the simplest thing upwards is copy-and-paste from much more informed bloggers and websites! My home server is running Ubuntu Linux 10.10 – access is via an SSH client only. I [...]]]></description>
				<content:encoded><![CDATA[<p><em><a href="http://www.definit.co.uk/wp-content/uploads/2011/03/Ubuntu.png"><img class="colorbox-751"  style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="Ubuntu" border="0" alt="Ubuntu" align="right" src="http://www.definit.co.uk/wp-content/uploads/2011/03/Ubuntu_thumb.png" width="120" height="161" /></a>Disclaimer: this post is more for my own recollection than anything else! When it comes to Linux, I’m an amateur and everything I do from the simplest thing upwards is copy-and-paste from much more informed bloggers and websites!</em></p>
<p>My home server is running Ubuntu Linux 10.10 – access is via an SSH client only. I run an NFS file server for my home network, which stores my Music and Video for the network, and is running an <a href="http://www.apple.com/itunes/download/" target="_blank">iTunes</a> server. Most of my DVDs have been ripped to high quality MP4 files for viewing on PC, but they aren’t suitable for my iPhone, so I also frequently compress them for viewing on that device.</p>
<p>The following command lists the files in the <strong>Source</strong> folder and runs Handbrake via the CLI to convert the files using the iPhone template and spits them out to the <strong>Video</strong> folder.</p>
<pre lang="bash" line="1" escaped="true">for file in `ls /media/Data/NFS/Source/`; do $(HandBrakeCLI -v -i /media/Data/NFS/Source/${file} -o /media/Data/NFS/Video/&quot;${file%.vob}.mp4&quot; --preset=&quot;iPhone &amp; iPod Touch&quot;); done</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/batch-converting-video-files-on-ubuntu-linux-using-handbrakecli/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>The case of the missing network adaptor: a.k.a Installing additional drivers on ESXi 4.1</title>
		<link>http://www.definit.co.uk/2011/03/the-case-of-the-missing-network-adaptor-a-k-a-installing-additional-drivers-on-esxi-4-1/</link>
		<comments>http://www.definit.co.uk/2011/03/the-case-of-the-missing-network-adaptor-a-k-a-installing-additional-drivers-on-esxi-4-1/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 14:15:17 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESX/ESXi 4]]></category>
		<category><![CDATA[vMA]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[driver]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[intel]]></category>
		<category><![CDATA[nic]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/03/03/the-case-of-the-missing-network-adaptor-a-k-a-installing-additional-drivers-on-esxi-4-1/</guid>
		<description><![CDATA[Recently I installed and configured a client’s new ESXi host, they’re a small company and only require a single host. The host in question was an IBM x3650 M3, an excellent workhorse for virtualisation and one of 5 or 6 of the same model that I’ve installed in the last year. In addition to the [...]]]></description>
				<content:encoded><![CDATA[<p><img class="colorbox-727"  style="margin: 0px 0px 20px 20px; display: inline; float: right;" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" alt="" align="right" />Recently I installed and configured a client’s new ESXi host, they’re a small company and only require a single host. The host in question was an IBM x3650 M3, an excellent workhorse for virtualisation and one of 5 or 6 of the same model that I’ve installed in the last year. In addition to the onboard Broadcom Dual Gigabit NIC, we always install at least a second Intel PCIx Dual Gigabit card for resilience/redundancy/performance.<span id="more-727"></span></p>
<p>For some reason this time the installation of ESXi didn’t pick up the additional NIC and, after seating and reseating the card, checking the UEFI (new-fangled BIOS) settings and getting to the point of ordering a return code from our suppliers, I thought I’d try installing the drivers… you know, just in case.</p>
<p>What you need:</p>
<ol>
<li>VMware vSphere CLI installed on your admin machine (mine’s a Windows 7 Desktop)</li>
<li>The <a href="http://downloads.vmware.com/d/info/datacenter_downloads/vmware_vsphere_hypervisor_esxi/4_0#drivers_tools" target="_blank">latest driver CD for your ESXi component</a> and burn to a CD or mount the ISO</li>
<li>Shutdown any running VMs and set the host to Maintenance mode</li>
</ol>
<p>From there, open a CLI window, which looks just like a command prompt, because it is. Run the vihostupdate.pl script:</p>
<pre escaped="true" lang="dos" line="1">vihostupdate.pl --server  --username  --password  --install --bundle “e:\path\to\bundle.zip”</pre>
<p>Reboot the host and the new hardware will be installed and ready to use.</p>
<p>I am pretty sure that I didn’t need to do that on any of the other identical x3650s with Intel NICs that I have set up over the last year, so what has changed? The install media I used was freshly downloaded, so that could be a factor, as could the UEFI version on the server. Whatever it was, it won’t surprise me again!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/the-case-of-the-missing-network-adaptor-a-k-a-installing-additional-drivers-on-esxi-4-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>A start is a start</title>
		<link>http://www.definit.co.uk/2011/03/a-start-is-a-start/</link>
		<comments>http://www.definit.co.uk/2011/03/a-start-is-a-start/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 11:04:56 +0000</pubDate>
		<dc:creator>Simon Eady</dc:creator>
				<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=1576</guid>
		<description><![CDATA[So here we go, my very first tech blog... so what on earth do I start with? Given I am unlikely to have any profound revelations I shall simply focus on what I have discovered as useful and helpful on my travels! First up then... I have been asked on many occasions by individuals and [...]]]></description>
				<content:encoded><![CDATA[<p>So here <a href="http://www.definit.co.uk/wp-content/uploads/2010/07/simonsml.jpg"><img class="alignright  wp-image-741 colorbox-1576" style="margin: 10px; border: 0px currentColor;" alt="Simon Eady" src="http://www.definit.co.uk/wp-content/uploads/2010/07/simonsml-300x260.jpg" width="150" height="130" /></a>we go, my very first tech blog... so what on earth do I start with?</p>
<p>Given I am unlikely to have any profound revelations I shall simply focus on what I have discovered as useful and helpful on my travels!</p>
<p>First up then...</p>
<p>I have been asked on many occasions by individuals and SMEs should they opt for a brand such as HP over Dell or vice versa... as ever my default response is a brief needs analysis. It seems all to often folk get caught up by hearsay/brand loyalty over suitability.</p>
<p>For example I have had both great and poor experiences with well know brands such as HP and Dell.</p>
<p>More importantly our job in IT is to find out what the need really is! And then source a suitable cost effective solution that will last at least for the duration specified. Of course I am simplifying the matter a great deal but in a nutshell that is what we must do and what really should be expected of us. I have lost count of the mount of times I have come across IT solutions that are utterly over kill or completely inadequate and therefore cost a business large sums of time and money.</p>
<p>In short if you get the needs analysis and scoping right the solution will present itself readily and should deliver exactly what is required for the duration specified!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/03/a-start-is-a-start/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Twitter integration&#8230;</title>
		<link>http://www.definit.co.uk/2011/02/twitter-integration/</link>
		<comments>http://www.definit.co.uk/2011/02/twitter-integration/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 12:17:07 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=722</guid>
		<description><![CDATA[Not as easy as it seems!]]></description>
				<content:encoded><![CDATA[<p>Not as easy as it seems!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/02/twitter-integration/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Welcome to DefinIT!</title>
		<link>http://www.definit.co.uk/2011/02/welcome-to-definit/</link>
		<comments>http://www.definit.co.uk/2011/02/welcome-to-definit/#comments</comments>
		<pubDate>Wed, 23 Feb 2011 11:27:02 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[DefinIT]]></category>
		<category><![CDATA[McGeown]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/02/23/welcome-to-definit/</guid>
		<description><![CDATA[If you’ve been here before, you may have noticed a couple of changes – the theme and name of this blog for example, and hopefully you’ve been redirected to a new URL! There are a couple of reasons for the changes, all of which are aimed at increasing the presence and visitor numbers on this [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/wordpress.jpg"><img class="colorbox-716"  style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" title="wordpress" border="0" alt="wordpress" align="right" src="http://www.definit.co.uk/wp-content/uploads/2011/02/wordpress_thumb.jpg" width="120" height="160" /></a>If you’ve been here before, you may have noticed a couple of changes – the theme and name of this blog for example, and hopefully you’ve been redirected to a new URL! There are a couple of reasons for the changes, all of which are aimed at increasing the presence and visitor numbers on this site:</p>
<ol>
<li>Branding. Whether I like it or not, “McGeown” is not easy to spell or remember so I wanted to move away from it as an identity. After some discussion with my friend and creative advisor <a href="http://wedoadventure.blogspot.com" target="_blank">Matt Hellyer</a>, I picked DefinIT. </li>
<li>I’d like to add some more bloggers to the site – the number of visitors is directly in proportion to the number of posts, and I can’t post as much as I’d like to. I will introduce those bloggers as and when they arrive, but they will be people I know and trust – with real technical expertise. (That said, if you’re reading and are interested in writing for DefinIT, please contact me!) </li>
<li>Eventually I’d like to use McGeown.co.uk for a more personal site, aimed at family and friends. That’s what it was originally aimed at, and hopefully one of these days I’ll get the time.</li>
</ol>
<p>Feel free to let me know what you think about the new theme, new name and new URL in the comments below. This blog will always be dedicated to providing high quality IT help on a broad range of subjects, as ever, I hope it helps!</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/02/welcome-to-definit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Reporting all ActiveSync devices and their Users in Exchange 2010</title>
		<link>http://www.definit.co.uk/2011/02/reporting-all-activesync-devices-and-users-in-exchange-2010/</link>
		<comments>http://www.definit.co.uk/2011/02/reporting-all-activesync-devices-and-users-in-exchange-2010/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 14:28:14 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[devices]]></category>
		<category><![CDATA[ems]]></category>
		<category><![CDATA[exchange management shell]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/02/08/listing-all-activesync-devices-in-exchange-management-shell-2010/</guid>
		<description><![CDATA[Recently I needed to report on the ActiveSync devices that were attached to our Exchange 2010 organisation, and which users they were accessing, and then export them to a CSV file. This is the script: $ActiveSyncDevices = @() ForEach ($Mailbox in Get-Mailbox –Server MBX01) { Get-ActiveSyncDeviceStatistics -Mailbox $Mailbox.Identity –ErrorAction SilentlyContinue &#124; Select DeviceFriendlyName, Devicetype, DeviceUserAgent [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516.png"><img class="colorbox-708"  style="background-image: none; margin: 0px 0px 20px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="Exchange-2010-Logo-748516" src="http://www.definit.co.uk/wp-content/uploads/2011/02/Exchange-2010-Logo-748516_thumb.png" border="0" alt="Exchange-2010-Logo-748516" width="160" height="77" align="right" /></a>Recently I needed to report on the ActiveSync devices that were attached to our Exchange 2010 organisation, and which users they were accessing, and then export them to a CSV file.<span id="more-708"></span></p>
<p>This is the script:</p>
<pre escaped="true" lang="powershell" line="1">$ActiveSyncDevices = @()

ForEach ($Mailbox in Get-Mailbox –Server MBX01) {
Get-ActiveSyncDeviceStatistics -Mailbox $Mailbox.Identity –ErrorAction SilentlyContinue | Select DeviceFriendlyName, Devicetype, DeviceUserAgent | ForEach-Object { $_ | Add-Member –MemberType NoteProperty -Name "MailboxIdentity" -value $Mailbox
$ActiveSyncDevices += $_ }
}

$ActiveSyncDevices | Export-csv c:\Path\To\File.csv</pre>
<p>Walking through the script it gets all the mailboxes from the server MBX01, gets an object containing the ActiveSync device name, type and user agent. It then adds a property to that object called “MailboxIdentity” and adds it to that object. That object is then added to an array of objects called ActiveSyncDevices, which is then exported to CSV.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image13.png"><img class="colorbox-708"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb13.png" border="0" alt="image" width="244" height="85" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/02/reporting-all-activesync-devices-and-users-in-exchange-2010/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>My password confession: a.k.a sorting out password security with LastPass</title>
		<link>http://www.definit.co.uk/2011/02/my-password-confession-a-k-a-sorting-out-password-security-with-lastpass/</link>
		<comments>http://www.definit.co.uk/2011/02/my-password-confession-a-k-a-sorting-out-password-security-with-lastpass/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 17:36:01 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Passwords]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[keepass]]></category>
		<category><![CDATA[lastpass]]></category>
		<category><![CDATA[passwords]]></category>
		<category><![CDATA[roboform]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/02/04/my-password-confession-a-k-a-sorting-out-password-security-with-lastpass/</guid>
		<description><![CDATA[I can't plead ignorance: I should know better! For years I have preached to users about the importance of strong passwords, regular password changes and non-proliferation of the same password, yet I've fallen foul of 2 of my own rules. My password is strong - 13 characters, random alpha-numeric, upper and lower case and including [...]]]></description>
				<content:encoded><![CDATA[<h4><img class="colorbox-702"  style="margin: 0px 0px 10px 20px; display: inline; float: right;" src="https://lastpass.com/media/pressroom/LastPassButton150x150.png" alt="" align="right" />I can't plead ignorance: I should know better!</h4>
<p>For years I have preached to users about the importance of strong passwords, regular password changes and non-proliferation of the same password, yet I've fallen foul of 2 of my own rules. My password is strong - 13 characters, random alpha-numeric, upper and lower case and including special characters - but has been re-used in a few places, and hasn’t been changed in a (long) while.</p>
<p>I do use different passwords for specific things: my online banking, for example, has a unique password. But in other cases the same password has been used in multiple places – e.g. social networking sites, <a href="http://www.apple.com/itunes/download/" target="_blank">iTunes</a> account, the DNS management for this domain, my email account. Even as I write this list it’s a bit alarming! It’s laziness, and to some extent an inability to remember a password for the dozens of accounts I have.<span id="more-702"></span></p>
<h4>One Password to Rule them All</h4>
<p>I’ve been opposed to using password keepers such as LastPass, KeePass, RoboForm, et al because they have just one password to unlock them, and then the proverbial horse has bolted. I’ve now come to the conclusion that this is more secure than password re-use – at least if there’s one password to rule them all, I can make it a good one.</p>
<p>I’ve tried a “tiered” password system – one password for social networks, one for email accounts, one for financial accounts, and this does improve on the password re-use situation, but it still means if one is compromised they all fall.</p>
<h4>Installing LastPass</h4>
<p>Installing LastPass is a simple affair:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb.png" border="0" alt="image" width="244" height="184" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image1.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb1.png" border="0" alt="image" width="244" height="184" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image2.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb2.png" border="0" alt="image" width="244" height="184" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image3.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb3.png" border="0" alt="image" width="244" height="184" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image4.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb4.png" border="0" alt="image" width="244" height="184" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image5.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb5.png" border="0" alt="image" width="244" height="184" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image6.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb6.png" border="0" alt="image" width="244" height="184" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image7.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb7.png" border="0" alt="image" width="244" height="184" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image8.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb8.png" border="0" alt="image" width="244" height="184" /></a></p>
<h4><span>Securing your passwords</span></h4>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image9.png"><img class="colorbox-702"  style="background-image: none; margin: 0px 0px 10px 20px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb9.png" border="0" alt="image" width="244" height="137" align="right" /></a></p>
<p>The simple fact of the matter is that just installing LastPass will not secure your passwords – you can still use the same old ones, just auto-filled by LastPass.</p>
<p>There’s a handy tool on the <a href="http://www.lastpass.com" target="_blank">LastPass</a> website called the <a href="https://lastpass.com/?securitychallenge=1&amp;lpnorefresh=1" target="_blank">LastPass Security Challenge</a> that can help see how secure your passwords are – the image on the right is how secure my passwords were to start. Yes, 10.9% – shocking.</p>
<p>To secure your passwords, you need to create a strong password for each and every account you have. Yes, I know that’s a pain in the… proverbial. If an attacker compromises your Twitter password, you don’t want them accessing your Amazon account and ordering £1000 of death-metal do you? It’s not as paranoid as you might think.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image10.png"><img class="colorbox-702"  style="background-image: none; margin: 0px 20px 10px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb10.png" border="0" alt="image" width="244" height="132" align="left" /></a>With LastPass installed when you browse to a website it will recognise a login and ask if you want to save it. If it has a login stored for a website you can set the option to auto-login.</p>
<p>It will also recognise when you’re changing your password and update the stored password for each site.</p>
<p>With a bit of fiddling, and a password generator, I have now updated all my saved website passwords to strong, unique passwords. It will take a bit of discipline to maintain them, but I think that LastPass will help!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image11.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb11.png" border="0" alt="image" width="244" height="140" /></a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/02/image12.png"><img class="colorbox-702"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/02/image_thumb12.png" border="0" alt="image" width="244" height="121" /></a></p>
<h4>Password strength</h4>
<p>I have randomly generated the passwords from <a href="https://secure.pctools.com/guides/password">https://secure.pctools.com/guides/password</a>. The settings I used to generate the passwords were as follows:</p>
<ul>
<li>12 characters in total</li>
<li>Uppercase letters [A-Z]</li>
<li>Lowercase letters [a-z]</li>
<li>Numbers [0-9]</li>
<li>Special characters [!*_£$%^&amp;]</li>
<li>No similar characters [e.g capital i and lowercase l, zero and capital o]</li>
</ul>
<h4>Shamed websites</h4>
<p>The following websites wouldn’t let me use a secure password:</p>
<p>eBuyer.com, London Stock Exchange – no special characters allowed</p>
<p>HP.com – no special characters allowed AND maximum 8 characters</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/02/my-password-confession-a-k-a-sorting-out-password-security-with-lastpass/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Remote Installation of SCOM 2007 R2 Agent on Threat Management Gateway Servers</title>
		<link>http://www.definit.co.uk/2011/01/remote-installation-of-scom-2007-r2-agent-on-threat-management-gateway-servers/</link>
		<comments>http://www.definit.co.uk/2011/01/remote-installation-of-scom-2007-r2-agent-on-threat-management-gateway-servers/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 16:23:51 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Forefront]]></category>
		<category><![CDATA[Forefront Threat Management Gateway]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[agent]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[netbios]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[push]]></category>
		<category><![CDATA[rpc]]></category>
		<category><![CDATA[TMG]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2011/01/06/remote-installation-of-scom-2007-r2-agent-on-threat-management-gateway-servers/</guid>
		<description><![CDATA[Getting a SCOM 2007 R2 SCOM agent on TMG is a useful way of monitoring TMG, especially with the SCOM TMG Management Pack – it’s not exactly “out-of-the-box” functionality though, with many sources I’ve read simply stating that it can’t be done. There are some half-working solutions I’ve seen, but nothing that worked for me. [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo.png"><img class="colorbox-667"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2011/01/MSFT-System-Center-logo_thumb.png" border="0" alt="MSFT-System-Center-logo" width="160" height="137" align="right" /></a>Getting a SCOM 2007 R2 SCOM agent on TMG is a useful way of monitoring TMG, especially with the SCOM TMG Management Pack – it’s not exactly “out-of-the-box” functionality though, with many sources I’ve read simply stating that it can’t be done. There are some half-working solutions I’ve seen, but nothing that worked for me.</p>
<p>The process involves simply opening the correct ports and protocols between the TMG servers and the SCOM management servers, which after a few attempts watching the live logs, I found.</p>
<p><span id="more-667"></span></p>
<h5>Creating the SCOM 2007 R2 Agent Push Install Rule</h5>
<p>From the Threat Management Gateway Server, Launch the New Access Rule Wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb.png" border="0" alt="image" width="244" height="188" /></a></p>
<p>Obviously we need to allow protocols</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image1.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb1.png" border="0" alt="image" width="244" height="188" /></a></p>
<p>This is where it gets specific – add the following “standard” protocols from the Add Protocols dialogue (the port, protocol and direction are here for reference only, you can’t edit them):</p>
<table border="1" cellspacing="0" cellpadding="2" width="500">
<tbody>
<tr>
<td width="190" valign="top">NetBios Datagram</td>
<td width="55" valign="top"><em>UDP</em></td>
<td width="102" valign="top"><em>138</em></td>
<td width="153" valign="top"><em>Send</em></td>
</tr>
<tr>
<td width="187" valign="top">NetBios Name Service</td>
<td width="55" valign="top"><em>UDP</em></td>
<td width="102" valign="top"><em>137</em></td>
<td width="153" valign="top"><em>Send Recieve</em></td>
</tr>
<tr>
<td width="187" valign="top">NetBios Session</td>
<td width="55" valign="top"><em>TCP</em></td>
<td width="102" valign="top"><em>139</em></td>
<td width="153" valign="top"><em>Outbound</em></td>
</tr>
<tr>
<td width="187" valign="top">Ping</td>
<td width="55" valign="top"><em>ICMP</em></td>
<td width="102" valign="top"><em>0/8</em></td>
<td width="153" valign="top"><em>Send Recieve</em></td>
</tr>
<tr>
<td width="187" valign="top">RPC (all interfaces)</td>
<td width="55" valign="top"><em>TCP</em></td>
<td width="102" valign="top"><em>135</em></td>
<td width="153" valign="top"><em>Outbound</em></td>
</tr>
</tbody>
</table>
<p>Now add in some custom rules – these can be named what you like. The “NLB (DCOM Dynamic)” rule already existed for the NLB TMG cluster – it allows WMI querying for the SCOM agent install.</p>
<table border="1" cellspacing="0" cellpadding="2" width="500">
<tbody>
<tr>
<td width="190" valign="top">RPC (Server 2008 High Ports)</td>
<td width="53" valign="top">TCP</td>
<td width="102" valign="top">40000-65535</td>
<td width="152" valign="top">Outbound</td>
</tr>
<tr>
<td width="190" valign="top">NLB (DCOM Dynamic)</td>
<td width="53" valign="top">TCP</td>
<td width="102" valign="top">10002</td>
<td width="152" valign="top">Outbound</td>
</tr>
<tr>
<td width="190" valign="top">SMB over IP</td>
<td width="53" valign="top">TCP</td>
<td width="102" valign="top">445</td>
<td width="152" valign="top">Outbound</td>
</tr>
</tbody>
</table>
<p>The protocol rules should look something like this:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image2.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb2.png" border="0" alt="image" width="211" height="244" /></a></p>
<p>In the Access Rule Sources page of the wizard, add a Network Entity and create a new Computer Set that contains all your SCOM management servers for this site – in my case I called the group “SCOM 2007 R2 Servers”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image3.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb3.png" border="0" alt="image" width="244" height="232" /></a></p>
<p>For the Access Rule Destinations, add “Local Host” from the “Networks” group (this will allow to all servers in the TMG array):</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image4.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb4.png" border="0" alt="image" width="244" height="188" /></a></p>
<p>Keep the default user set “All Users”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image5.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb5.png" border="0" alt="image" width="244" height="188" /></a></p>
<p>Create and apply the rule.</p>
<h5>Creating a SCOM 2007 R2 Agent Communications Rule</h5>
<p>To allow the Agent to communicate back to the management server, start another Access Rule wizard from the TMG console to allow “System Center Operation Manager Agent” and “System Manager Operation Manager Agent Installation” from “Local Host” to your “SCOM 2007 R2 Servers” computer set, applicable to “All Users”.</p>
<p>Create and apply the rule, and you should have something like this:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2011/01/image6.png"><img class="colorbox-667"  style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2011/01/image_thumb6.png" border="0" alt="image" width="244" height="59" /></a></p>
<h5>Pushing the SCOM 2007 R2 Agent to Threat Management Gateway Servers</h5>
<p>You should now be able to “Discover” your TMG servers in the normal way from the SCOM console – if you have issues I would highly recommend setting a filter on the IP addresses for your SCOM and TMG servers while you do the discovery and installation of the agent – investigate any blocked connections that you might see.</p>
<p>Don’t forget to <a href="http://blogs.technet.com/b/isablog/archive/2009/06/29/tmg-scom-pack-monitor-tmg-with-system-center-2007-r2.aspx" target="_blank">install the SCOM 2007 R2 Management Pack for TMG</a>. Another useful page is <a href="http://technet.microsoft.com/en-us/library/ff358634.aspx" target="_blank">Troubleshooting Issues When You Use the Discovery Wizard to Install an Agent</a>, as is <a href="http://blogs.technet.com/b/kevinholman/archive/2007/12/12/agent-discovery-and-push-troubleshooting-in-opsmgr-2007.aspx" target="_blank">Agent discovery and push troubleshooting in OpsMgr 2007</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2011/01/remote-installation-of-scom-2007-r2-agent-on-threat-management-gateway-servers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Using System Center Operations Manager 2007 R2 Audit Collection Services for remote, DMZ or workgroup servers</title>
		<link>http://www.definit.co.uk/2010/12/using-system-centre-operations-manager-2007-r2-audit-collection-service-for-remote-dmz-or-workgroup-servers/</link>
		<comments>http://www.definit.co.uk/2010/12/using-system-centre-operations-manager-2007-r2-audit-collection-service-for-remote-dmz-or-workgroup-servers/#comments</comments>
		<pubDate>Mon, 13 Dec 2010 16:46:07 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Audit Collection Services]]></category>
		<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[acs]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[collection]]></category>
		<category><![CDATA[dmz]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[forwarders]]></category>
		<category><![CDATA[non-domain]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[remote]]></category>
		<category><![CDATA[workgroup]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/12/13/using-system-centre-operations-manager-2007-r2-audit-collection-system-for-remote-dmz-or-workgroup-servers/</guid>
		<description><![CDATA[SCOM 2007 R2’s Audit Collection Services (ACS from now on) is very useful for meeting compliance (e.g. Sarbanes Oxley) and security audit requirements – working with financial companies often requires such compliance. It’s pretty simple to install in a domain environment – you run the installer to create a collection server, then activate the forwarder [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/12/MSFT-System-Center-logo.png"><img class="colorbox-643"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border: 0px;" title="MSFT-System-Center-logo" src="http://www.definit.co.uk/wp-content/uploads/2010/12/MSFT-System-Center-logo_thumb.png" border="0" alt="MSFT-System-Center-logo" width="160" height="103" align="right" /></a>SCOM 2007 R2’s Audit Collection Services (ACS from now on) is very useful for meeting compliance (e.g. Sarbanes Oxley) and security audit requirements – working with financial companies often requires such compliance. It’s pretty simple to install in a domain environment – you run the installer to create a collection server, then activate the forwarder on the client servers.</p>
<p>When it comes to servers you really want to audit, those that are by definition more at risk from security breach because they are publicly accessible, it’s not so straightforward. Take for example that web server, or FTP host in your DMZ, certainly not domain joined and probably bombarded by daily brute force password attacks. Select the SCOM agent in the console and enable Audit Collection Services?</p>
<p><span id="more-643"></span></p>
<p>Nope.</p>
<p>But as you have SCOM already installed, you’ve either set up a Gateway server, or used <a href="/2010/06/25/requesting-scom-2007-gateway-or-agent-certificates-for-server-2008-from-a-server-2003-enterprise-certificate-authority/">Certificates to secure communication between the server and your Management Server</a> – so it should be OK, right?</p>
<p>Nope.</p>
<p>To reduce the possibility of interference between Forwarder and Collector, routing through a Gateway is not allowed. Communication must be direct between the two, which means that even your remote domain featuring a Gateway server must allow ALL servers you wish to collect security data from to communicate with ACS directly.</p>
<h4>Configuring the ACS Collector to use Certificates</h4>
<p>I’m going to assume that you’ve already configured <a href="/2010/06/25/requesting-scom-2007-gateway-or-agent-certificates-for-server-2008-from-a-server-2003-enterprise-certificate-authority/">SCOM to communicate using Certificates</a> and that your ACS Collector is on the same server as your Management Server.</p>
<p>- On the ACS Collection Server, open up a command prompt (as administrator, if you’re Server 2008) and navigate to the %systemroot%\system32\security\adtserver</p>
<p>Stop the ADTServer service using “net stop adtserver”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/12/image.png"><img class="colorbox-643"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/12/image_thumb.png" border="0" alt="image" width="244" height="60" align="right" /></a>- Configure the certificate for the ADTServer to use with the command “adtserver –c”. This brings up a list of certificates installed on the server that are suitable for ACS – type the  number of the certificate you want to use.</p>
<p>- Start the ADTServer “net start adtserver”</p>
<h4>Configure Dummy Computer Accounts with X.509 certificate mapping</h4>
<p>- You need a copy of the SCOM certificate from your Forwarder servers on a domain member server with Active Directory Users and Computers access. If you don’t have a copy of the certificate, you can export it from the Forwarder server itself using the Certificates snap-in in MMC, but make sure you save it in DER encoded X.509 format. I use the machine name to name the certificate file so it’s easy to identify.</p>
<p>- Open Active Directory Users and Computers and create an OU to contain the dummy accounts. I created one called “SCOM ACS Forwarders”</p>
<p>- Right click in the new OU and create a new Computer object with the same NETBIOS name as the Forwarder server you wish to collect. Under the View menu, make sure “Advanced” is selected. Right click the new computer object and select “Name Mappings…”. Under the X.509 Certificates tab, click Add and import the SCOM Certificate you exported earlier.</p>
<h4>Configure the ACS Forwarders</h4>
<p>On each server that will be forwarding to the Collector, log onto the server and open a command prompt. For Server 2008, run as administrator.</p>
<p>- navigate to "%systemroot%\system32\”</p>
<p>- Import the certificate for the agent by running “ADTAgent.exe –c” and selecting the correct certificate from the list.<a href="http://www.definit.co.uk/wp-content/uploads/2010/12/image1.png"><img class="colorbox-643"  style="background-image: none; margin: 0px 0px 20px 30px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/12/image_thumb1.png" border="0" alt="image" width="194" height="114" align="right" /></a></p>
<p>- Open your Operations Manager Console, select the Monitoring tab and expand Operations Manager &gt; Agent and select the “Agents by Version” panel.</p>
<p>- Select up to 10 agents at a time, and in the right hand Actions pane you can “Enable Audit Collection”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/12/using-system-centre-operations-manager-2007-r2-audit-collection-service-for-remote-dmz-or-workgroup-servers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Using PowerShell to add IP addresses to IIS7&#8217;s FTP IPv4 Address and Domain Restrictions</title>
		<link>http://www.definit.co.uk/2010/11/using-powershell-to-add-ip-addresses-to-iis7s-ftp-ipv4-address-and-domain-restrictions/</link>
		<comments>http://www.definit.co.uk/2010/11/using-powershell-to-add-ip-addresses-to-iis7s-ftp-ipv4-address-and-domain-restrictions/#comments</comments>
		<pubDate>Wed, 24 Nov 2010 10:55:04 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[iis7]]></category>
		<category><![CDATA[IP address]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/11/24/using-powershell-to-add-ip-addresses-to-iis7s-ftp-ipv4-address-and-domain-restrictions/</guid>
		<description><![CDATA[Today I was configuring a new FTP server based on IIS7 (well, 7.5 technically as it’s a Server 2008 R2 host), and I wanted an easy way to add and remove allowed IP addresses based on either an XML config file or a CSV import. Customers’ IP addresses are added or removed regularly, but I [...]]]></description>
				<content:encoded><![CDATA[<p><img class="colorbox-623"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 20px 20px; display: inline; border-top: 0px; border-right: 0px" title="iis-self-signed-certificate-logo" border="0" alt="iis-self-signed-certificate-logo" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/11/iisselfsignedcertificatelogo.png" width="160" height="80" /> Today I was configuring a new FTP server based on IIS7 (well, 7.5 technically as it’s a Server 2008 R2 host), and I wanted an easy way to add and remove allowed IP addresses based on either an XML config file or a CSV import. Customers’ IP addresses are added or removed regularly, but I didn’t want to have to update their details twice, once on the server and once in the documents.</p>
<p> <span id="more-623"></span>I figured that the PowerShell extensions for managing IIS would do nicely – they are great for managing IIS sites after all and the idea with FTP in IIS7 is that it doesn’t care which protocol you are using, HTTP, HTTPS, FTP or FTP over SSL – all should be configured the same way.
</p>
<p>The security setup had to follow the policy that all IP addresses are denied unless explicitly allowed.</p>
<p>I imported the module and listed the cmdlets:</p>
<blockquote><p>Import-Module –Name WebAdministration</p>
<p>Get-Command –PSSnapin WebAdministration</p>
</blockquote>
<h3>Creating a new FTP site</h3>
<p>This is very, very simple with PowerShell</p>
<blockquote><p>New-WebFtpSite -Name 'FTP Site' -IPAddress '192.168.10.22' -HostHeader 'ftp.mcgeown.co.uk' -PhysicalPath 'd:\FTP\</p>
</blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image26.png"><img class="colorbox-623"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb26.png" width="244" height="24" /></a></p>
<p>A good start then!</p>
<p>By default, the site will allow any IP address to access the server – it’s time to start locking it down.</p>
<h3>Allow Authorised Users</h3>
<blockquote><p>1) <a href="http://technet.microsoft.com/en-us/library/ee807834.aspx" target="_blank">Add-WebConfiguration</a> -Filter <span style="color: #004000">/system.ftpserver</span><span style="color: #008000">/security</span><span style="color: #80ff00">/authorization</span> -PSPath 'IIS:\' -<span style="color: #8000ff">Value @{accessType='Allow';users='*';permissions=3}</span><span style="color: #ff00ff"> -Location 'FTP Site'</span></p>
</blockquote>
<h3>Restricting IP Access</h3>
<p>Unfortunately the IP Address Restrictions part of the configuration isn’t exposed directly by a cmdlet so I thought I’d use one or two of the lower level IIS configuration cmdlets – <a href="http://technet.microsoft.com/en-us/library/ee807834.aspx" target="_blank">Add-WebConfiguration</a>, and <a href="http://technet.microsoft.com/en-us/library/ee807821.aspx" target="_blank">Set-WebConfigurationProperty</a>. And after a lot of fiddling and a lot of help by a colleague, I stumbled upon the correct syntax:</p>
<blockquote><p>2) <a href="http://technet.microsoft.com/en-us/library/ee807821.aspx" target="_blank">Set-WebConfigurationProperty</a> -Filter <span style="color: #004000">/system.ftpserver</span><span style="color: #008000">/security</span><span style="color: #00ff00">/ipsecurity</span> <span style="color: #0000ff">-Name allowUnlisted -Value $false</span><span style="color: #ff00ff"> -Location 'FTP Site'</span> -PSPath 'IIS:\'</p>
<p>3) <a href="http://technet.microsoft.com/en-us/library/ee807834.aspx" target="_blank">Add-WebConfiguration</a> -Filter <span style="color: #004000">/system.ftpserver</span><span style="color: #008000">/security</span><span style="color: #00ff00">/ipsecurity</span> -PSPath 'IIS:\' <span style="color: #ff8000">-Value @{ipAddress=’192.168.1.1’;subnetMask=’255.255.255.255’;allowed=$true}</span><span style="color: #ff00ff"> –Location ‘FTP Site’</span></p>
</blockquote>
<p>The following code is appended to the end of the applicationHost.config file – now hopefully you can see that the crazy colours relate to the section in the same colour on below:</p>
<blockquote><p>&lt;<span style="color: #ff00ff">location path=&quot;FTP Site&quot;</span> &gt;      <br />&lt;<span style="color: #004000">system.ftpServer</span>&gt;      <br />&lt;<span style="color: #008000">security</span>&gt;      <br />&lt;<span style="color: #00ff00">ipSecurity</span> <span style="color: #0000ff">allowUnlisted=&quot;false&quot;</span>&gt;      <br />&lt;<span style="color: #ff8000">add ipAddress=&quot;192.168.1.1&quot; allowed=&quot;true&quot;</span> /&gt;      <br />&lt;/<span style="color: #00ff00">ipSecurity</span>&gt;      <br />&lt;<span style="color: #80ff00">authorization</span>&gt;      <br />&lt;<span style="color: #8000ff">add accessType=&quot;Allow&quot; users=&quot;*&quot; permissions=&quot;Read, Write&quot;</span> /&gt;      <br />&lt;/<span style="color: #80ff00">authorization</span>&gt;      <br />&lt;/<span style="color: #008000">security</span>&gt;      <br />&lt;/<span style="color: #004000">system.ftpServer</span>&gt;      <br />&lt;/<span style="color: #ff00ff">location</span>&gt;</p>
</blockquote>
<h3>Scripting the whole thing</h3>
<p>I’ve created two files, Add-AllowedIPs.ps1 and AllowedIPs.config. The config file is just an XML structure with the allowed IPs and Site name:</p>
<blockquote><p>&lt;?xml version=&quot;1.0&quot;?&gt;     <br />&lt;Configuration&gt;      <br />&lt;Site name=&quot;FTP Site&quot;&gt;      <br />&lt;Address&gt;      <br />&lt;IP&gt;192.168.8.1&lt;/IP&gt;      <br />&lt;SubnetMask&gt;255.255.255.255&lt;/SubnetMask&gt;      <br />&lt;/Address&gt;      <br />&lt;Address&gt;      <br />&lt;IP&gt;10.10.10.0&lt;/IP&gt;      <br />&lt;SubnetMask&gt;255.255.254.0&lt;/SubnetMask&gt;      <br />&lt;/Address&gt;      <br />&lt;/Site&gt;      <br />&lt;/Configuration&gt;</p>
</blockquote>
<p>The ps1 file is a simple script to read the configuration and apply the settings:</p>
<blockquote><p>$ConfigFile= &quot;AllowedIPs.config&quot;     <br />if(Test-Path $ConfigFile){\[xml\]$Config = Get-Content $ConfigFile}else{throw (&quot;Unable to find configuration file: &quot; + $ConfigFile)}</p>
<p>$Site = $Config.Configuration.Site.Name     <br />Write-Host &quot;Clearing $Site IP Security Lists&quot; -BackgroundColor Yellow -ForegroundColor DarkBlue      <br />Clear-WebConfiguration -Filter /system.ftpserver/security/ipsecurity -PSPath 'IIS:\' -Location &quot;$Site&quot;      <br />Write-Host &quot;Adding Allowed IPs to $Site&quot; -BackgroundColor Yellow -ForegroundColor DarkBlue      <br />$Config.Configuration.Site.Address | foreach {      <br />$IP = $_.IP.Trim()      <br />$SubnetMask = $_.SubnetMask.Trim()      <br />Add-WebConfiguration -Filter /system.ftpserver/security/ipsecurity -PSPath 'IIS:\' -Location &quot;$Site&quot; -Value @{ipAddress=&quot;$IP&quot;;subnetMask=&quot;$SubnetMask&quot;;allowed=$true}      <br />}</p>
</blockquote>
<p>Not quite sure why doing something so simple should have occupied so much of my time, but I hope it saves you some!</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/11/using-powershell-to-add-ip-addresses-to-iis7s-ftp-ipv4-address-and-domain-restrictions/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring Software iSCSI multipathing on ESXi 4.1</title>
		<link>http://www.definit.co.uk/2010/11/configuring-software-iscsi-multipathing-on-esxi-4-1/</link>
		<comments>http://www.definit.co.uk/2010/11/configuring-software-iscsi-multipathing-on-esxi-4-1/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 16:40:28 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[iscsi]]></category>
		<category><![CDATA[multipathing]]></category>
		<category><![CDATA[software iscsi]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/11/12/configuring-software-iscsi-multipathing-on-esxi-4-1/</guid>
		<description><![CDATA[Recently I had cause to configure iSCSI multipathing on a test ESXi server. The production environment servers use iSCSI HBAs to connect to the back end storage, so multipathing them is a straight-forward setup. It’s good practice to separate VMotion, virtual machine and iSCSI traffic, it also helps you manage those logical and physical connections. [...]]]></description>
				<content:encoded><![CDATA[<p><a href="/topics/vmware-2/"><img class="colorbox-604"  style="display: inline; margin-left: 0px; margin-right: 0px; border: 0px;" title="VMware" src="http://www.definit.co.uk/wp-content/uploads/2010/11/VMware3.jpg" border="0" alt="VMware" width="213" height="63" align="right" /></a>Recently I had cause to configure iSCSI multipathing on a test ESXi server. The production environment servers use iSCSI HBAs to connect to the back end storage, so multipathing them is a straight-forward setup.</p>
<p><span id="more-604"></span></p>
<p>It’s good practice to separate VMotion, virtual machine and iSCSI traffic, it also helps you manage those logical and physical connections.</p>
<p>Connect to your ESXi server using the vSphere Client and select the host. Go to the configuration tab and click “Add Networking…”. Select a new VMKernel connection type.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image12.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb12.png" border="0" alt="image" width="244" height="181" /></a></p>
<p>Create a new virtual switch, but at this point don’t assign any network adaptors.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image13.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb13.png" border="0" alt="image" width="244" height="181" /></a></p>
<p>Create a new Port Group. If you are planning to use Jumbo Frames, you can’t use this Port Group – to specify a larger MTU you have to create the Port Group using the command line interface. If you aren’t using Jumbo Frames for whatever reason, you can go with the standard wizard-created Port Group.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image14.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb14.png" border="0" alt="image" width="244" height="181" /></a></p>
<p>Set the IP address for the VMKernel – this address needs to be on the same network as the iSCSI SAN because the iSCSI protocol does not like to be routed.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image15.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb15.png" border="0" alt="image" width="244" height="181" /></a></p>
<p>Click through the summary page and your new vSwitch and VMkernel is created</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image16.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb16.png" border="0" alt="image" width="244" height="66" /></a></p>
<p>If you’re using Jumbo Frames, you need to delete the newly created Port Group, so open the vSwitch properties and Remove it</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image17.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb17.png" border="0" alt="image" width="244" height="180" /></a></p>
<p>You should now have an empty vSwitch</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image18.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb18.png" border="0" alt="image" width="244" height="57" /></a></p>
<p>Open up your command line interface – this is either a vMA instance, or if you have enabled SSH on the ESXi server, then the SSH terminal. Log in as a user with permission to sudo. I am using SSH.</p>
<p>Just like on a physical switch, the vSwitch needs to be told to allow Jumbo Frames by setting the MTU to 9000.</p>
<pre>esxcfg-vswitch --MTU=9000 vSwitch4</pre>
<p>Next we can add the Port Groups. iSCSI multipathing requires one for each pNIC we are planning to utilise. To add the new Port Groups, use the following commands:</p>
<pre>esxcfg-vswitch --add-pg=iSCSI1 vSwitch4
esxcfg-vswitch --add-pg=iSCSI2 vSwitch4</pre>
<p>If you need to specify the VLAN for the iSCSI traffic, use the following commands:</p>
<pre>esxcfg-vswitch --vlan=105 --pg=iSCSI1
esxcfg-vswitch --vlan=105 --pg=iSCSI2</pre>
<p>Now we need to add a VMKernel IP address per pNIC we are using to the Port Group on the iSCSI network. Make sure you use the next number in the vmk sequence, e.g. if you already have vmk0, vmk1 and vmk2 configured, create the next one as vmk3. To see your currently configured VMKernel ports, use esxcfg-vmknic –l.</p>
<pre>esxcfg-vmknic --add vmk3 --ip 10.20.200.100 --netmask 255.255.255.0 ↓
--portgroup iSCSI1 --mtu=9000
esxcfg-vmknic --add vmk4 --ip 10.20.200.101 --netmask 255.255.255.0 ↓
--portgroup iSCSI2 --mtu=9000</pre>
<p>If you switch to the vSphere Client and refresh, you should see the new config</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image19.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb19.png" border="0" alt="image" width="244" height="93" /></a></p>
<p>Now we need to add the physical adaptors to the virtual switch. What we don’t want to do is add two pNICs to the iSCSI kernel, it doesn’t like this one bit! Open the properties for the vSwitch and go to the Network Adaptors tab. Click add, and select the pNICs you are going to use, and, this is important, set one pNIC to Active and the rest to Standby.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image20.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb20.png" border="0" alt="image" width="244" height="81" /></a></p>
<p>Now go to the iSCSI1 Port Group under the Ports tab and Edit the configuration – override the Failover order and set one pNIC to active, and the other to Unused. This gives you a one-to-one mapping from the Port Group to the pNIC. Edit the second iSCSI Port Group and map the second pNIC to active and the first to unused.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image21.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb21.png" border="0" alt="image" width="197" height="244" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image22.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb22.png" border="0" alt="image" width="197" height="244" /></a></p>
<p>Obviously if you’re using more network adaptors you have more port groups and map them one-to-one. Switch back to the SSH session and bind the VMKernels to the Software HBA. You need to check the name of the Software iSCSI HBA from the Storage Adaptors</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image23.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb23.png" border="0" alt="image" width="244" height="69" /></a></p>
<p>Add the vmk ports you created earlier</p>
<pre>esxcli swiscsi nic add -n vmk3 -d vmhba34
esxcli swiscsi nic add -n vmk4 -d vmhba34</pre>
<p>Add your iSCSI targets in the normal way, rescan the software adaptor to pick up all the paths. Modify each LUN to use Round Robin path selection.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image24.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb24.png" border="0" alt="image" width="244" height="179" /></a></p>
<p>You can verify both paths are being used using ESXTOP to in the SSH session and pressing “n” for network.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image25.png"><img class="colorbox-604"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb25.png" border="0" alt="image" width="244" height="143" /></a></p>
<p><strong>References</strong>:</p>
<p>iSCSI SAN Configuration Guide - <a title="http://www.vmware.com/pdf/vsphere4/r40/vsp_40_iscsi_san_cfg.pdf" href="http://www.vmware.com/pdf/vsphere4/r40/vsp_40_iscsi_san_cfg.pdf">http://www.vmware.com/pdf/vsphere4/r40/vsp_40_iscsi_san_cfg.pdf</a></p>
<p>Troubleshooting Software iSCSI on ESXi - <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1008083">http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1008083</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/11/configuring-software-iscsi-multipathing-on-esxi-4-1/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>In-depth: Installing and Configuring Threat Management Gateway 2010 in a Network Load Balanced Array</title>
		<link>http://www.definit.co.uk/2010/11/in-depth-installing-and-configuring-threat-management-gateway-2010-in-a-network-load-balanced-array/</link>
		<comments>http://www.definit.co.uk/2010/11/in-depth-installing-and-configuring-threat-management-gateway-2010-in-a-network-load-balanced-array/#comments</comments>
		<pubDate>Mon, 08 Nov 2010 16:35:52 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Firewall]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Proxy]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[Array]]></category>
		<category><![CDATA[Network Load Balance]]></category>
		<category><![CDATA[NLB]]></category>
		<category><![CDATA[TMG]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/11/08/in-depth-installing-and-configuring-threat-management-gateway-2010-in-a-network-load-balanced-array/</guid>
		<description><![CDATA[In this post I will be installing a TMG Array as a “back firewall” behind a hardware firewall. The Array will consist of two virtual servers, TMG01 and TMG02 which each have 3 NICs. One NIC will be dedicated to the LAN network, accessible internally. One NIC will be dedicated to the DMZ network, accessible [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.microsoft.com/forefront/threat-management-gateway/en/us/" target="_blank"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 10px 10px; display: inline; border-top: 0px; border-right: 0px" title="TMG2010" border="0" alt="TMG2010" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/11/TMG20101.png" width="160" height="105" /></a> In this post I will be installing a TMG Array as a “back firewall” behind a hardware firewall. The Array will consist of two virtual servers, TMG01 and TMG02 which each have 3 NICs. One NIC will be dedicated to the LAN network, accessible internally. One NIC will be dedicated to the DMZ network, accessible to the outside world on a static mapped IP. The third NIC will be a dedicated intra-array communications NIC as per Microsoft’s recommendation.</p>
<p>Both TMG servers will be domain joined – there are several reasons for this, not least of which is that we require integrated authentication for the proxy clients.</p>
<p>The array will be a Network Load Balanced proxy server for all LAN clients to access the internet; it will provide content caching and malware protection. It will also reverse proxy Outlook Web Access, ActiveSync, Outlook Anywhere, SharePoint and some internal static HTTP resources. It will also provide SSL VPN (SSTP) access for remote clients, but that will be the subject of a later post.</p>
<p> <span id="more-564"></span>
<p>The network diagram for this setup looks like this:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image11.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb11.png" width="534" height="790" /></a> </p>
<h2>NIC Configuration</h2>
<p>Prior to installation, it’s important to get the network adaptors configured correctly, the reasons for which are discussed later in more detail, but the basic rule is that there should only be one default gateway and one adaptor configured to provide DNS resolution to the internal network.</p>
<p><strong>TMG01</strong><br />
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="154">&#160;</td>
<td valign="top" width="154">
<p><strong>Internal</strong></p>
</td>
<td valign="top" width="154">
<p><strong>Perimeter/DMZ</strong></p>
</td>
<td valign="top" width="154">
<p><strong>Intra-array</strong></p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>IP Address</p>
</td>
<td valign="top" width="154">
<p>192.168.8.28</p>
</td>
<td valign="top" width="154">
<p>192.168.10.9</p>
</td>
<td valign="top" width="154">
<p>10.20.200.1</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>Subnet Mask</p>
</td>
<td valign="top" width="154">
<p>255.255.255.0</p>
</td>
<td valign="top" width="154">
<p>255.255.255.0</p>
</td>
<td valign="top" width="154">
<p>255.255.255.248</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>Gateway</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>192.168.10.1</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>DNS 1</p>
</td>
<td valign="top" width="154">
<p>192.168.8.22</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>DNS 2</p>
</td>
<td valign="top" width="154">
<p>192.168.8.5</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
</tbody>
</table>
<p><strong>TMG02</strong><br />
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="154">&#160;</td>
<td valign="top" width="154">
<p><strong>Internal</strong></p>
</td>
<td valign="top" width="154">
<p><strong>Perimeter/DMZ</strong></p>
</td>
<td valign="top" width="154">
<p><strong>Intra-array</strong></p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>IP Address</p>
</td>
<td valign="top" width="154">
<p>192.168.8.29</p>
</td>
<td valign="top" width="154">
<p>192.168.10.10</p>
</td>
<td valign="top" width="154">
<p>10.20.200.2</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>Subnet Mask</p>
</td>
<td valign="top" width="154">
<p>255.255.255.0</p>
</td>
<td valign="top" width="154">
<p>255.255.255.0</p>
</td>
<td valign="top" width="154">
<p>255.255.255.248</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>Gateway</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>192.168.10.1</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>DNS 1</p>
</td>
<td valign="top" width="154">
<p>192.168.8.22</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
<tr>
<td valign="top" width="154">
<p>DNS 2</p>
</td>
<td valign="top" width="154">
<p>192.168.8.5</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
<td valign="top" width="154">
<p>[none]</p>
</td>
</tr>
</tbody>
</table>
<h2>Installing TMG01 and TMG02</h2>
<p><em>Run the following procedure on BOTH servers.</em></p>
<p>Configure all 3 NICs with their assigned IP addresses.</p>
<p>Run the TMG 2010 installer, ensure you’ve run Windows Update and you’re fully patched.</p>
<p>Run the Preparation Tool, which basically installs pre-requisites and checks for required Roles and Features. Correct anything that’s not installed.</p>
<p>Launch the Forefront Configuration Wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image004.jpg"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image004_thumb.jpg" width="244" height="124" /></a></p>
<p>Accept the license agreement</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image005.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image005" border="0" alt="clip_image005" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image005_thumb.png" width="244" height="185" /></a></p>
<p>Enter the product license details</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image1.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb1.png" width="244" height="185" /></a>&#160;</p>
<p>Select the option to install</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image007.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image007" border="0" alt="clip_image007" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image007_thumb.png" width="244" height="184" /></a></p>
<p>Install path (this is not where the proxy cache is stored, configure that later!)</p>
<p>&#160;<a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image008.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image008_thumb.png" width="244" height="186" /></a></p>
<p>Configure the Internal network IP address ranges. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image009.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image009" border="0" alt="clip_image009" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image009_thumb.png" width="244" height="225" /></a></p>
<p>Accept the services warning </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image010.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image010" border="0" alt="clip_image010" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image010_thumb.png" width="244" height="184" /></a></p>
<p>Since there are domain controllers in other network ranges for this domain, TMG will create a system policy for AD connections to all the IP addresses of Domain Controllers. It will also create a management access rule for the workstation IP that is connected </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image011.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image011" border="0" alt="clip_image011" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image011_thumb.png" width="244" height="185" /></a></p>
<p>Click Install to begin the installation – this takes a while! </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image012.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image012" border="0" alt="clip_image012" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image012_thumb.png" width="244" height="121" /></a></p>
<p>After about 40 minutes, you reach the completion screen.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image013.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image013" border="0" alt="clip_image013" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image013_thumb.png" width="244" height="185" /></a></p>
<h2>Configure Internal DNS records </h2>
<p>While that’s installing, you can set up the required DNS records.</p>
<p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="308">
<p>TMG01*</p>
</td>
<td valign="top" width="308">
<p>192.168.8.28</p>
</td>
</tr>
<tr>
<td valign="top" width="308">
<p>TMG02*</p>
</td>
<td valign="top" width="308">
<p>192.168.8.29</p>
</td>
</tr>
<tr>
<td valign="top" width="308">
<p>proxy (or whatever you want to call the proxy NLB!)</p>
</td>
<td valign="top" width="308">
<p>192.168.8.30</p>
</td>
</tr>
<tr>
<td valign="top" width="308">
<p>TMG01-IA</p>
</td>
<td valign="top" width="308">
<p>10.20.200.1</p>
</td>
</tr>
<tr>
<td valign="top" width="308">
<p>TMG02-IA</p>
</td>
<td valign="top" width="308">
<p>10.20.200.2</p>
</td>
</tr>
</tbody>
</table>
<p>*created automatically as they’re domain joined with AD integrated DNS</p>
<p>The additional records here are for the NLB virtual IP address (proxy.domain.com) and for the Intra-array communications network. The intra-array DNS records are required because of the Kerberos dependency to access the Array Configuration Storage Server (CSS); it requires a SPN (Service Principle Name) to be configured, which in turn requires DNS resolution.</p>
<h2>Update TMG to latest SP level (SP1 at time of writing)</h2>
<p>Both TMG servers should be updated to the latest SP level.</p>
<p>The service pack installer must be run from an elevated command prompt, otherwise it will fail.</p>
<p>Run the SP installation</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image014.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image014" border="0" alt="clip_image014" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image014_thumb.png" width="244" height="186" /></a></p>
<p>Accept the license agreement</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image015.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image015" border="0" alt="clip_image015" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image015_thumb.png" width="244" height="186" /></a></p>
<p>Select the server, and the credentials </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image2.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb2.png" width="244" height="185" /></a> </p>
<p>Run the installation </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image017.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image017" border="0" alt="clip_image017" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image017_thumb.png" width="244" height="186" /></a></p>
<p>If you receive any errors or warnings, the chances are you’ve not run the installation from an elevated command prompt. You need to re-run the SP to install correctly. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image018.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image018" border="0" alt="clip_image018" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image018_thumb.png" width="244" height="117" /></a></p>
<p>Restart the server (it now seems to take <em>a lot</em> longer to reboot the servers – be patient!)</p>
<h2>Run the TMG configuration Wizard</h2>
<p>When you run the Forefront Threat Management Console for the first time it will run the Getting Started Wizard </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image019.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image019" border="0" alt="clip_image019" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image019_thumb.png" width="244" height="219" /></a></p>
<p>Click, Configure network settings – start the network setup wizard </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image020.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image020" border="0" alt="clip_image020" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image020_thumb.png" width="244" height="212" /></a></p>
<p>Select the correct network template – for this setup it’s Back Firewall </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image021.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image021" border="0" alt="clip_image021" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image021_thumb.png" width="244" height="211" /></a></p>
<p>Select the network adaptor for the LAN network – this is where some network routing information is required. TMG <em>should not have multiple default gateways</em>, just one “gateway of last resort”. In this case it should be the address of the Front firewall on the DMZ, because that’s where we want to route anything that is not on our internal network. This means that we need to add a route for all INTERNAL networks that we want to route via the gateway for the internal network. This depends on the topology of the network TMG is installed in. DNS is configured on the interface closest to your internal DNS that is capable of resolving external namespaces. Routing is configured in the next section.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image022.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image022" border="0" alt="clip_image022" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image022_thumb.png" width="244" height="213" /></a></p>
<p>Select the network adaptor for the perimeter network, and set the type of IP addresses to use (in this setup Private as there is the Front firewall between the External network and the DMZ: there will be Network Address Translation between the two and we need to avoid “double-NATing” ). </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image023.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image023" border="0" alt="clip_image023" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image023_thumb.png" width="244" height="211" /></a></p>
<p>Finish the wizard and run the “configure system settings” wizard As the machine is already named and part of the Domain, there’s no need to change any of the current settings – click through to finish</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image3.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb3.png" width="244" height="212" /></a> </p>
<p>Now run the “define deployment options link and set the Microsoft Update, then Network Inspection and Web Protection settings, CEIP settings, and feedback. I kept the defaults here, they can be changed later if required.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image025.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image025" border="0" alt="clip_image025" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image025_thumb.png" width="244" height="215" /></a></p>
<p>The wizard is now complete, aside from the web access wizard which when you click close. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image026.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image026" border="0" alt="clip_image026" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image026_thumb.png" width="244" height="219" /></a></p>
<p>Configure the Web Access Policy Wizard</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image027.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image027" border="0" alt="clip_image027" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image027_thumb.png" width="244" height="193" /></a></p>
<p>Create the default web access URL categories </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image028.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image028" border="0" alt="clip_image028" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image028_thumb.png" width="244" height="193" /></a></p>
<p>Add any non-default URLs you wish to block </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image029.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image029" border="0" alt="clip_image029" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image029_thumb.png" width="244" height="193" /></a></p>
<p>Configure any unrestricted users, if required. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image030.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image030" border="0" alt="clip_image030" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image030_thumb.png" width="244" height="193" /></a></p>
<p>Enable/disable Malware Inspection, depending on your license. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image031.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image031" border="0" alt="clip_image031" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image031_thumb.png" width="244" height="193" /></a></p>
<p>Configure HTTPS inspection – we will allow users to establish HTTPS regardless. You can configure to block invalid HTTPS certificates. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image032.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image032" border="0" alt="clip_image032" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image032_thumb.png" width="244" height="192" /></a></p>
<p>Configure the Web Cache – best practice is to use a non-system drive for caching </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image4.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb4.png" width="244" height="213" /></a> </p>
<p>Review and finish the setup</p>
<p>&#160;<a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image034.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image034" border="0" alt="clip_image034" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image034_thumb.png" width="244" height="193" /></a></p>
<p>Check “Save the changes and restart the services” </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image035.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image035" border="0" alt="clip_image035" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image035_thumb.png" width="244" height="231" /></a></p>
<h2>Routing Configuration</h2>
<p>With the additional subnets in the network, the TMG servers need to know where to route traffic, which interface they are to route the traffic on, and how to treat the network. The routing is easiest to configure at the server level using the ROUTE command.</p>
<p>View the routing table using the “route print” command from an elevated command prompt. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image037.jpg"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image037" border="0" alt="clip_image037" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image037_thumb.jpg" width="244" height="191" /></a></p>
<p>You can see the default route, or gateway of last resort is set to 192.168.10.1 – the DMZ gateway. You can also see the server has a route for the networks it has an IP address on; namely the LAN and Intra-array networks (192.168.8.0/24 and 10.20.200.0/29). These are “On-Link”, meaning anything for those networks will be sent via the NIC with the IP address on the same subnet.</p>
<p>The problem with this configuration as it stands is that the server can only route internal networks that it has an IP address on, or send it to the default gateway on the DMZ. When you try and access an internal network (e.g. 10.20.110.0, which for me is the the client network), the only route it has is the default gateway in the DMZ which does not have access to the internal LAN.</p>
<p>To correct this we add a route for each internal network, specifying the correct gateway and interface.</p>
<blockquote><p><font face="Courier">route add –p [network IP] MASK [subnet mask] [gateway IP] METRIC [metric] IF [Interface]</font></p>
</blockquote>
<p>“Route add” is self-explanatory, “–p” sets the route as persistent across reboots. For the client network above, [network IP] is 10.20.110.0 and the [subnet mask] is 255.255.254.0. The gateway needs to be the <em>gateway for the network that the LAN NIC is on</em> – 192.168.8.1. The metric is the priority if the gateway, lower numbers are a higher priority – I am using 20. To find the [interface] the easiest way to be sure is to check the network adaptors properties and make a note of the MAC address, and then compare it to the Interface List in the route show command. The LAN NIC is interface 11 in this configuration. The final route command looks like this:</p>
<blockquote><p><font face="courier">route add –p 10.20.110.0 mask 255.255.254.0 192.168.8.1 metric 20 if 11</font></p>
</blockquote>
<p>You can now test the route by pinging a host on the new subnet. Add routes for all internal networks you want routed through the LAN interface.</p>
<h2>Configure Service Principle Names for Intra-array communications</h2>
<p>CSS access over the Intra-array network requires Kerberos, which requires SPNs. To create the SPNs, run a command prompt and issue these commands (per server):</p>
<blockquote><p><font face="courier">setspn -a ldap/<i>[Intra-array DNS Name]</i> <i>[NETBIOS Name] </i></font></p>
<p><font face="courier">setspn -a ldap/<i>[Intra-array DNS Name]</i> :2171 <i>[NETBIOS Name]</i></font></p>
</blockquote>
<p>For example:</p>
<blockquote><p><font face="courier">setspn –a ldap/TMG01-IA.DOMAIN.COM TMG01</font></p>
<p><font face="courier">setspn –a ldap/TMG01-IA.DOMAIN.COM:2171 TMG01</font></p>
</blockquote>
<p>To check the SPNs are correctly configured, use “setspn –L <i>[NETBIOS Name]</i>”</p>
<p>This needs to be configured on each array member.</p>
<h2>Preparing and configuring the Standalone Array</h2>
<p>On TMG01 - In the Threat Management Gateway console, under Firewall Policy &gt; Toolbox (on the right hand pane), expand Computer Sets and add TMG01 and TMG02 to the groups “Managed Server Computers” and “Remote Management Computers”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image5.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb5.png" width="220" height="244" /></a> </p>
<p>On TMG02 – open the Threat Management Console, select the server and select “Join Array” from the Tasks tab</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image039.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image039" border="0" alt="clip_image039" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image039_thumb.png" width="244" height="200" /></a></p>
<p>Select the option to join a stand-alone array </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image040.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image040" border="0" alt="clip_image040" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image040_thumb.png" width="244" height="199" /></a></p>
<p>Enter the IP address for TMG01 on the intra-array network as the array manager, since this is a domain environment use the credentials of the logged on user </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image041.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image041" border="0" alt="clip_image041" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image041_thumb.png" width="244" height="200" /></a></p>
<p>Finish the wizard </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image042.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image042" border="0" alt="clip_image042" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image042_thumb.png" width="244" height="200" /></a></p>
<p>The wizard will then copy the configurations from the designated Array Manager, this takes short while and will probably disconnect your session if managing remotely.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image043.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image043" border="0" alt="clip_image043" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image043_thumb.png" width="244" height="68" /></a></p>
<p>Back on TMG01, open the System pane and look at the Servers tab – hit refresh if you can’t see the second server. You should see TMG01 and TMG02, with TMG01 reporting as the Array Manager and TMG02 reporting as the Array Managed. It may take a while for the egg timer to turn to a green tick for the managed server.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image6.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb6.png" width="244" height="62" /></a> </p>
<p>Right click each server in turn and select properties, then select the Communication tab. Under Intra-Array Communication and select the IP address on the intra-array network. </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image7.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb7.png" width="220" height="244" /></a> </p>
<p>From the Roles Configuration page, open the “Configure Array Properties” and change the DNS Name to the intra-array DNS name configured earlier </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image8.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb8.png" width="212" height="244" /></a> </p>
<p>It may take a while, but the array will sort itself out</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image9.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb9.png" width="244" height="59" /></a> </p>
<p>You can also check the synchronisation status under the monitoring tab</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/image10.png"><img class="colorbox-564"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/11/image_thumb10.png" width="244" height="72" /></a> </p>
<h2>Creating a rule Enabling NLB communication on Intra-array Network</h2>
<p>Under the Firewall Policy tab, go to the Toolbox and expand the Protocols pane. Launch the New Protocol Definition Wizard </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image052.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image052" border="0" alt="clip_image052" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image052_thumb.png" width="244" height="188" /></a></p>
<p>Create new protocol as follows (some places recommend port 10000-11000 but the firewall logs show connection attempts up to port 14000)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image053.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image053" border="0" alt="clip_image053" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image053_thumb.png" width="244" height="170" /></a></p>
<p>Click through the rest of the wizard, keeping defaults and apply the configuration change</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image054.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image054" border="0" alt="clip_image054" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image054_thumb.png" width="244" height="188" /></a></p>
<p>Switch to the Tasks tab and click “Create Access Rule” </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image055.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image055" border="0" alt="clip_image055" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image055_thumb.png" width="244" height="188" /></a></p>
<p>The rule is to allow traffic</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image056.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image056" border="0" alt="clip_image056" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image056_thumb.png" width="244" height="188" /></a></p>
<p>On the new customised Protocol </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image057.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image057" border="0" alt="clip_image057" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image057_thumb.png" width="244" height="188" /></a></p>
<p>From Local host and the Intra-Array Communications network</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image058.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image058" border="0" alt="clip_image058" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image058_thumb.png" width="244" height="189" /></a></p>
<p>To the same destinations </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image059.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image059" border="0" alt="clip_image059" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image059_thumb.png" width="244" height="188" /></a></p>
<p>Apply the new rule to all users, finish the wizard and apply to the server – wait for the array to converge again before moving on</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image060.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image060" border="0" alt="clip_image060" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image060_thumb.png" width="244" height="188" /></a></p>
<h2>Enabling Network Load Balancing</h2>
<p>From the networking tab, click the “Enable Network Load Balancing Integration” </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image061.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image061" border="0" alt="clip_image061" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image061_thumb.png" width="244" height="206" /></a></p>
<p>Enable load balancing for the internal and perimeter networks </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image062.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image062" border="0" alt="clip_image062" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image062_thumb.png" width="244" height="207" /></a></p>
<p>For each network configure the Virtual IP address and Cluster mode by clicking “Configure NLB Settings…”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image063.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image063" border="0" alt="clip_image063" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image063_thumb.png" width="225" height="244" /></a></p>
<p>The Primary VIP for the internal network is the IP we registered earlier for proxy.mdlimited.com (192.168.8.30). The external VIP is the next IP address in the DMZ. If the Cluster Operation Mode is set to Unicast mode the vSwitch on the server must be configured as per the VMware recommendations for NLB configuration – it must accept forged MAC addresses and must not send updates to the physical switch</p>
<p><strong>Sources</strong>: <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1556" target="_blank">Microsoft NLB not working properly in Unicast Mode</a>, <a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&amp;cmd=displayKC&amp;externalId=1006778" target="_blank">Sample Configuration - Network Load Balancing (NLB) UNICAST Mode Configuration</a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image064.png"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image064" border="0" alt="clip_image064" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image064_thumb.png" width="244" height="207" /></a></p>
<p>It takes a few minutes for the configurations to converge and for the NLB to come online, check the Configuration tab under Monitoring, and look at the Services tab to see that the NLB service is running in both servers </p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image066.jpg"><img class="colorbox-564"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image066" border="0" alt="clip_image066" src="http://www.definit.co.uk/wp-content/uploads/2010/11/clip_image066_thumb.jpg" width="244" height="152" /></a></p>
<p>At this point the forward proxy NLB should be operational so you can change your browser to point to proxy.domain.com and test it.</p>
<p>To finish up the external NLB setup, you simply map the public IP address on your front firewall to the DMZ NLB IP address. You can then use any of the publishing wizards to publish OWA, HTTP or other internal services. If you need additional IP addresses, remember to use the NLB properties in the TMG console to add a new VIP rather than the NLB MMC.</p>
<p>Since this post has well exceeded 2000 words, I’m going to leave it there – I hope this has been informative, please leave feedback!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/11/in-depth-installing-and-configuring-threat-management-gateway-2010-in-a-network-load-balanced-array/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Managing ESXi 4.1 with vMA 4.1 on VMware Workstation</title>
		<link>http://www.definit.co.uk/2010/10/managing-esxi-4-1-with-vma-4-1-on-vmware-workstation/</link>
		<comments>http://www.definit.co.uk/2010/10/managing-esxi-4-1-with-vma-4-1-on-vmware-workstation/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 21:12:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[SSH]]></category>
		<category><![CDATA[vMA]]></category>
		<category><![CDATA[AD-integration]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[vma]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/10/21/managing-esxi-4-1-with-vma-4-1-on-vmware-workstation/</guid>
		<description><![CDATA[vMA is available as a Virtual Appliance (OVF) from VMware. To install it on VMware Workstation 7, open Workstation and select Import or Export to import a new OVF, the URL for the latest OVF for vMA is on the vMA download page As per this article on virtualkenneth.com, you need to edit the VMX [...]]]></description>
				<content:encoded><![CDATA[<p>vMA is available as a Virtual Appliance (OVF) from VMware. To install it on VMware Workstation 7, open Workstation and select Import or Export to import a new OVF, the URL for the latest OVF for vMA is on the <a href="http://www.vmware.com/support/developer/vima/" target="_blank">vMA download page</a></p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image.png"><img class="colorbox-444"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb.png" border="0" alt="image" width="240" height="244" /></a><br />
<span id="more-444"></span><br />
As <a href="http://virtualkenneth.com/2010/07/28/running-vma-4-1-on-vmware-workstation/" target="_blank">per this article on virtualkenneth.com</a>, you need to edit the VMX file to change the SCSI card and OS type, otherwise you’ll have a kernel panic on boot.</p>
<p>Once you’ve done that boot the vMA in workstation and check the console, you will be prompted to provide a secure password for the vi-admin user. Once you’ve done that, the network config wizard will start. You can use DHCP to configure the network, then provide a hostname, or you can specify your network settings manually.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image1.png"><img class="colorbox-444"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb1.png" border="0" alt="image" width="244" height="123" /></a><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image2.png"><img class="colorbox-444"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb2.png" border="0" alt="image" width="244" height="43" /></a></p>
<p>The wizard will then reset the network interfaces and bring up the new settings.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image3.png"><img class="colorbox-444"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb3.png" border="0" alt="image" width="244" height="107" /></a></p>
<p>To re-run the network config wizard, log onto the console and use the following commands:</p>
<blockquote><p>cd /opt/vmware/vma/bin</p>
<p>sudo ./wmware-vma-netconf.pl</p></blockquote>
<p>After this, I was able to access my vMA by SSH – PuTTY is my client of choice.</p>
<h2>Joining the vMA to the domain for AD authentication</h2>
<p>If you want to use AD authentication with your ESXi hosts, you can join them to the domain – it’s the same with the vMA. To join the vMA use the following command:</p>
<blockquote><p>sudo domainjoin-cli join &lt;domain-name&gt; &lt;domain-admin-user&gt;</p></blockquote>
<p>It will then prompt you for the root password (for the sudo) before it prompts for your AD admin password! I had errors with it saying ports weren’t open. The most likely cause for that is time so make sure that your server is running in UTC mode (this matches your ESXi and is compatible with your Domain Controller). These steps are taken from <a href="http://www.simonlong.co.uk/blog/2010/05/28/using-vma-as-your-esxi-syslog-server/" target="_blank">Simon Long at The Slog</a>:</p>
<blockquote><p>sudo rm /etc/localtime</p>
<p>sudo ln -s /usr/share/zoneinfo/UTC /etc/localtime</p></blockquote>
<p>If you use NTP to sync your environments time, it might be worth adding in your NTP servers to the vMA.</p>
<blockquote><p>sudo nano /etc/ntp.conf</p></blockquote>
<p>Add in your ntp servers under the heading: # Use public servers from the pool.ntp.org project.</p>
<p>Configure ntpd to start on reboot:</p>
<blockquote><p>sudo /sbin/chkconfig ntpd on</p></blockquote>
<p>Restart ntpd:</p>
<blockquote><p>udo /sbin/service ntpd restart</p></blockquote>
<p>Make sure your NTP servers are reachable:</p>
<blockquote><p>sudo ntpq -p</p></blockquote>
<p>The final domain join looks like this (sorry for redaction, one day I will have my own test environment!):</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image4.png"><img class="colorbox-444"  style="display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb4.png" border="0" alt="image" width="244" height="121" /></a></p>
<p>Some <a href="http://www.virtuallyghetto.com/2010/07/vma-41-active-directory-intergration.html" target="_blank">ease-of-use tips over at VirtuallyGhetto.com</a> allow you to set a default domain for login, and groups who can sudo.</p>
<p>You will need to edit /etc/likewise/lsassd.conf and uncomment "assume-default-domain = yes" and then save your changes:</p>
<blockquote><p>sudo vi /etc/likewise/lsassd.conf</p></blockquote>
<p>You will need to reload the configurations for the changes to take effect by running the following utility:</p>
<blockquote><p>sudo /opt/likewise/bin/lw-refresh-configuration</p></blockquote>
<p>Now, you can login by just specifying the username without having to provide the full AD domain name.</p>
<p>Just being able to log in is not much help – the power is being part of the sudoers group. Edit /etc/sudoers using vi-admin account, make sure you use 'sudo':</p>
<blockquote><p>sudo vi /etc/sudoers</p></blockquote>
<p>Add the following towards the bottom of the file:</p>
<blockquote><p>%DOMAIN\\VMware\ Admins ALL=(ALL) ALL</p></blockquote>
<p><strong>Note:</strong> We're escaping both the initial back slash and the space – the group is “DOMAIN\VMware Admins”</p>
<p>I’m now able to log in as a domain user, and SUDO:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image5.png"><img class="colorbox-444"  style="display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb5.png" border="0" alt="image" width="244" height="171" /></a></p>
<h3>Adding an ESXi Server to the vMA</h3>
<p>To add an ESXi server to vMA is dead simple, especially if your ESXi server is using AD integration too.</p>
<blockquote><p>sudo vifp addserver &lt;server FQDN&gt; --authpolicy adauth --username DOMAIN\\user</p></blockquote>
<p>You can verify the managed servers using “sudo vifp listservers –l”</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image6.png"><img class="colorbox-444"  style="display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb6.png" border="0" alt="image" width="244" height="43" /></a></p>
<p>Test the connection, and list the NICs</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/10/image7.png"><img class="colorbox-444"  style="display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/10/image_thumb7.png" border="0" alt="image" width="244" height="68" /></a></p>
<p>Success!</p>
<h3>Conclusion</h3>
<p>The vMA Config guide is great for getting to know and configure the vMA – as is the vma-help command. I’ve linked to articles that helped me along the way, but it’s worth going through the rest of <a href="http://www.simonlong.co.uk/blog/2010/05/28/using-vma-as-your-esxi-syslog-server/" target="_blank">Simon Long’s article and configuring the vMA as a syslog server for your ESXi hosts</a> – they lose their logs on reboot!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/10/managing-esxi-4-1-with-vma-4-1-on-vmware-workstation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Wordle word cloud of McGeown.co.uk</title>
		<link>http://www.definit.co.uk/2010/09/wordle-word-cloud-of-mcgeown-co-uk/</link>
		<comments>http://www.definit.co.uk/2010/09/wordle-word-cloud-of-mcgeown-co-uk/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 09:06:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[word cloud]]></category>
		<category><![CDATA[wordle]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/09/24/wordle-word-cloud-of-mcgeown-co-uk/</guid>
		<description><![CDATA[Wordle.net is a great little site that’s been around for ages – but it gives quite a unique insight into the content of your blog – just shove the RSS feed in and out comes a nice word cloud. I found it interesting to compare this to the Tag cloud generated from how I tagged [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.wordle.net/" target="_blank">Wordle.net</a> is a great little site that’s been around for ages – but it gives quite a unique insight into the content of your blog – just shove the RSS feed in and out comes a nice word cloud. I found it interesting to compare this to the Tag cloud generated from how I tagged my posts – for example Exchange is the predominant word in the <a href="http://www.wordle.net/" target="_blank">Wordle.net</a>&#160; cloud – but not in the tag cloud. Update and upgrade were some obvious ones, I expected install or installing to feature more heavily. There’s also a random Kevin in there!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image48.png"><img class="colorbox-337"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb48.png" width="594" height="380" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/09/wordle-word-cloud-of-mcgeown-co-uk/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Updated to WordPress 3.0.1</title>
		<link>http://www.definit.co.uk/2010/09/updated-wordpress-3-0-1/</link>
		<comments>http://www.definit.co.uk/2010/09/updated-wordpress-3-0-1/#comments</comments>
		<pubDate>Fri, 17 Sep 2010 16:26:37 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://localhost:8080/?p=3</guid>
		<description><![CDATA[Hardly seems newsworthy any more, with the Automatic Upgrade option on WordPress 2.7+, but I've just upgraded to WordPress 3.0.1]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/wordpress1.jpg"><img class="colorbox-3"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 30px; display: inline; border-top: 0px; border-right: 0px" title="wordpress" border="0" alt="wordpress" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/wordpress_thumb1.jpg" width="120" height="160" /></a>Hardly seems newsworthy any more, with the Automatic Upgrade option on WordPress 2.7+, but I've just upgraded to WordPress 3.0.1</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/09/updated-wordpress-3-0-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Creating/Enabling Exchange 2010 Personal Archives</title>
		<link>http://www.definit.co.uk/2010/09/creatingenabling-exchange-2010-personal-archives/</link>
		<comments>http://www.definit.co.uk/2010/09/creatingenabling-exchange-2010-personal-archives/#comments</comments>
		<pubDate>Mon, 13 Sep 2010 13:32:19 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Exchange 2010 SP1]]></category>
		<category><![CDATA[Personal Archives]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/09/13/creatingenabling-exchange-2010-personal-archives/</guid>
		<description><![CDATA[With the release of Exchange 2010 SP1, administrators can now use separate Mailbox Databases to store the Personal Archives of users – this is particularly useful if you have some larger, slower (and probably by virtue, older) storage that’s not really up to the I/O of your Exchange Server (that old SAN/NAS sitting in the [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/Exchange2010Logo7485162.png"><img class="colorbox-177"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 20px 50px; display: inline; border-top: 0px; border-right: 0px" title="Exchange-2010-Logo-748516" border="0" alt="Exchange-2010-Logo-748516" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/Exchange2010Logo748516_thumb2.png" width="160" height="103" /></a> With the release of Exchange 2010 SP1, administrators can now use separate Mailbox Databases to store the Personal Archives of users – this is particularly useful if you have some larger, slower (and probably by virtue, older) storage that’s not really up to the I/O of your Exchange Server (that old SAN/NAS sitting in the corner of the server room?). It’s also useful if you just don’t have the capacity on your main storage.</p>
<p> <span id="more-177"></span>
<p>To create a new Mailbox Database for the Personal Archives to be stored in:</p>
<blockquote><p align="left">New-MailboxDatabase –Name “Archive Mailbox Store” –EdbFilePath “D:\Path\Archive.edb”</p>
</blockquote>
<p>To enable a specific user’s archive [and specify the database]:</p>
<blockquote><p>Enable-Mailbox “User.Name” –Archive [–ArchiveDatabase “<em>Archive Mailbox Store</em>”]</p>
</blockquote>
<p>To enable ALL existing user’s archives:</p>
<blockquote><p>Get-Mailbox | Enable-Mailbox –Archive [–ArchiveDatabase “<em>Archive Mailbox Store</em>”]</p>
</blockquote>
<p>To move the user’s Archive to the Archive Mailbox Store:</p>
<blockquote><p>New-MoveRequest “<em>User.Name</em>” –ArchiveOnly –ArchiveTargetDatabase “<em>Archive Mailbox Store</em>”</p>
</blockquote>
<p>PowerShell is the way forward, so it’s best to learn the command for the EMC (Exchange Management Shell). If you simply HAVE to use the GUI, here it is:</p>
<p>Enable Personal Archive:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image19.png"><img class="colorbox-177"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb19.png" width="378" height="124" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image20.png"><img class="colorbox-177"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb20.png" width="145" height="124" /></a></p>
<p>Move Personal Archive to Archive Database</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image21.png"><img class="colorbox-177"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb21.png" width="96" height="124" /></a> <a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image22.png"><img class="colorbox-177"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb22.png" width="142" height="124" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/09/creatingenabling-exchange-2010-personal-archives/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing Exchange 2010 SP1</title>
		<link>http://www.definit.co.uk/2010/09/installing-exchange-2010-sp1/</link>
		<comments>http://www.definit.co.uk/2010/09/installing-exchange-2010-sp1/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 11:23:30 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Exchange 2010 SP1]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/09/09/installing-exchange-2010-sp1/</guid>
		<description><![CDATA[Exchange SP1 has now been released, so I thought I’d document the upgrade process for my small Exchange 2010 organisation, consisting of one CAS/Transport/Mailbox server, and an Edge Transport server. References The starting point is always working out if you *need* to upgrade – what’s the business argument. For that you need to look at [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image271.png"><img class="colorbox-144"  style="margin: 0px 0px 20px 30px; display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image27_thumb.png" border="0" alt="image" width="160" height="103" align="right" /></a> Exchange SP1 has now been released, so I thought I’d document the upgrade process for my small Exchange 2010 organisation, consisting of one CAS/Transport/Mailbox server, and an Edge Transport server.</p>
<h3><strong>References</strong></h3>
<p>The starting point is always working out if you *need* to upgrade – what’s the business argument. For that you need to look at what’s <a href="http://technet.microsoft.com/en-us/library/ff459257.aspx" target="_blank">new in Exchange 2010 SP1</a>, the <a href="http://technet.microsoft.com/en-us/library/ff728620.aspx" target="_blank">release notes</a> and <a href="http://technet.microsoft.com/en-us/library/bb691354.aspx" target="_blank">prerequisites</a>. Finally, the installation <a href="http://technet.microsoft.com/en-us/library/bb629560.aspx" target="_blank">instructions for upgrading from Exchange 2010 RTM to SP1</a>.</p>
<p>It’s important to note, as mentioned in the upgrade doc:</p>
<blockquote><p><strong>Note</strong>: After you upgrade to Exchange 2010 SP1, you can't uninstall the service pack to revert to Exchange 2010 RTM. If you uninstall Exchange 2010 SP1, you will remove Exchange from the server.</p></blockquote>
<p><span id="more-144"></span></p>
<h3>High level plan</h3>
<p>Back up Active Directory and Mailbox Stores</p>
<p>Install the Exchange 2010 SP1 prerequisites</p>
<p>Upgrade the Edge Transport server</p>
<p>Upgrade the Hub/CAS/Mailbox server</p>
<h3>Installing the prerequisites</h3>
<p>All the advice I’ve seen so far is that the installer does a bad job at detecting and installing the prerequisites for SP1, with complaints about it leaving the server in an inconsistent state, and incorrect links, so I will install the prerequisites manually. There is an easy matrix to work out what hotfixes are required on the Exchange team blog -  <a title="http://msexchangeteam.com/archive/2010/09/01/456094.aspx" href="http://msexchangeteam.com/archive/2010/09/01/456094.aspx">http://msexchangeteam.com/archive/2010/09/01/456094.aspx</a>.</p>
<p>Both my servers are running Windows Server 2008 R2, so the hotfixes requires are</p>
<p><a title="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979744" href="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979744">http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979744</a></p>
<p><a title="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=983440" href="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=983440">http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=983440</a></p>
<p><a title="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979099" href="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979099">http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=979099</a></p>
<p><a title="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=982867" href="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=982867">http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=982867</a></p>
<p>Some of these may well have been installed on the server already, but I downloaded them all to the same location as the SP1 file too so that the resources were available should I need them. Then I just went through the list installing, first on the Edge, then the Hub/CAS/Mailbox. Each hotfix does request a restart, but you can install them all and restart once.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image2.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb2.png" border="0" alt="image" width="244" height="171" /></a></p>
<p>Now is also a good point to install the MSMQ Server component on your CAS server, and also the Microsoft Office 2010 Filter Pack – you’ll see why when you get to my experiences installing the update to my Hub/CAS/Mailbox server.</p>
<h3><strong>Upgrading the Exchange 2010 Edge Transport Server</strong></h3>
<p>There is a little bit of confusion in the docs around the order in which to install the roles – the clearest explanation in the Exchange blog says:</p>
<blockquote><p>The Edge Transport server role can be upgraded at any time; however, we recommend upgrading Edge Transport either before all other server roles have been upgraded or after all other server roles have been upgraded</p></blockquote>
<p>You can do it either way you like, I am installing the Edge first simply because I can see the process before upgrading the Hub/CAS/Mailbox server.</p>
<p>Running as a local administrator, I fired up the installer, which prompts and extracts the installer to a specified location</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image3.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb3.png" border="0" alt="image" width="244" height="92" /></a></p>
<p>Run the Setup.exe – annoyingly, you have to select the language options first (why can’t it update the languages INSTALLED on the server – it’s an unnecessary step!)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image4.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb4.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Introduction</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image6.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb6.png" border="0" alt="image" width="244" height="214" /></a></p>
<p>License agreement</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image7.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb7.png" border="0" alt="image" width="244" height="214" /></a></p>
<p>If you got all the prerequisites right before, you should have a green light across the board (if not, I suggest you manually install them as discussed earlier).</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image8.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb8.png" border="0" alt="image" width="244" height="214" /></a></p>
<p>And if all goes well, you’ll get the confirmation</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image9.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb9.png" border="0" alt="image" width="244" height="214" /></a></p>
<p>I didn’t need to restart after the installation, I tested mail flow in and out of the server just to make sure everything was OK – it was.</p>
<h3>Upgrading the Hub/CAS/Mailbox server</h3>
<p>Having used the Edge server as a bit of a test installation, running through the installer for Hub/CAS/Mailbox was just that, running through.</p>
<p>The prerequisites did fail on this hotfix (<a title="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=977020" href="http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=977020">http://go.microsoft.com/fwlink/?linkid=3052&amp;kbid=977020</a>) and the <a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5cd4dcd7-d3e6-4970-875e-aba93459fbee&amp;displaylang=en" target="_blank">Microsoft Office 2010 Filter Packs</a>, both of which annoyingly did require a restart.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image10.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb10.png" border="0" alt="image" width="244" height="88" /></a></p>
<p>Once all prerequisites were fulfilled, the upgrade runs…and ran happily for 51 minutes, until I recieved this:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image11.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb11.png" border="0" alt="image" width="244" height="138" /></a></p>
<p>The error text is not particularly helpful.</p>
<blockquote><p>$error.Clear();</p>
<p>Start-SetupProcess -Name "iisreset" -Args "/noforce /timeout:120</p></blockquote>
<p>Searching through the System Event log, I found this error, pointing to the need for Message Queuing to be installed. This is a pretty fundamental miss by the installer team, not to check for a required service.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image12.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb12.png" border="0" alt="image" width="244" height="171" /></a></p>
<p>Once the Microsoft Message Queuing Server component is installed (and another restart later), I re-ran the upgrade, which thankfully restarts almost where it stopped off. Finally, another 38 minutes later – success!</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image13.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb13.png" border="0" alt="image" width="244" height="213" /></a></p>
<h3>Bonus section – upgrading Management tools</h3>
<p>I thought after all that my upgrade saga was over – not quite! While upgrading the management tools on my local Windows 7 box, I hit another mysterious error:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image14.png"><img class="colorbox-144"  style="display: inline; border-width: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb14.png" border="0" alt="image" width="244" height="213" /></a></p>
<p>A Google search based on this error was not helpful at all, the one or two relevant posts were to do with the execution policy for PowerShell. Since I develop PowerShell scripts on this machine the policy is already set to “unrestricted” (Set-ExecutionPolicy unrestricted -  Get-ExecutionPolicy to check). I checked that I had the prerequisites and tried again – only to fail with the same error.</p>
<p>Digging through the setup log, I found references to “tmlisten”</p>
<blockquote><p>[09/10/2010 09:31:54.0020] [2] [ERROR] Unexpected Error</p>
<p>[09/10/2010 09:31:54.0020] [2] [ERROR] Service 'tmlisten' failed to stop due to error:'Cannot stop tmlisten service on computer '.'.'.</p></blockquote>
<p>Tmlisten is the Trend Micro service, which requires a password to stop it – once the service was manually stopped, it installed ok. Can’t blame that one on the installer team!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/09/installing-exchange-2010-sp1/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing System Center Operations Manager 2007 R2 CU2</title>
		<link>http://www.definit.co.uk/2010/09/installing-system-center-operations-manager-2007-r2-cu2/</link>
		<comments>http://www.definit.co.uk/2010/09/installing-system-center-operations-manager-2007-r2-cu2/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 15:28:04 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[CU2]]></category>
		<category><![CDATA[Cumulative Update 2]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[R2]]></category>
		<category><![CDATA[Server 2008]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/09/08/installing-system-center-operations-manager-2007-r2-cu2/</guid>
		<description><![CDATA[This should be a simple update of some hotfixes, but there were a few tripping points along the way that I had to stumble past. As reference I used the CU2 update page and I also a Kevin Holman technet article. So, I’m going to assume that a) you’re installing the update for a reason, [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/MSFTSystemCenterlogo1.png"><img class="colorbox-137"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 20px 30px; display: inline; border-top: 0px; border-right: 0px" title="MSFT-System-Center-logo" border="0" alt="MSFT-System-Center-logo" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/MSFTSystemCenterlogo_thumb1.png" width="160" height="137" /></a> This should be a simple update of some hotfixes, but there were a few tripping points along the way that I had to stumble past. As reference I used the <a href=" http://support.microsoft.com/kb/979257" target="_blank">CU2 update page</a> and I also a <a href="http://blogs.technet.com/b/kevinholman/archive/2010/04/30/opsmgr-2007-r2-cu2-rollup-hotfix-ships-and-my-experience-installing-it.aspx" target="_blank">Kevin Holman technet article</a>.</p>
<p>So, I’m going to assume that a) you’re installing the update for a reason, like one of the bugs it fixes and b) you have taken a backup of your OpsManager databases.</p>
<p> <span id="more-137"></span>
<p>I am installing on my x64 Windows Server 2008 with RMS and ACS installed, and a dedicated SQL server box. I have several gateway servers, and quite a few manually installed Agents. The high-level upgrade process looks something like this: </p>
<p>1) Install on Root Management Server (and Audit Collection Services, same server)</p>
<p>2) Update SQL procedures</p>
<p>3) Import the updated Management Pack</p>
<p>4) Update Gateway servers (I have no secondary Management Servers)</p>
<p>5) Update Discovered Agents</p>
<p>6) Update Consoles</p>
<p>7) Update Manual Agents</p>
<p>I’m not going to duplicate the Kevin Holman article, which does a nice job of stepping you through the update – I will however, add my experiences from each step.</p>
<p>1) When you install this on Server 2008 R2, you *MUST* run the installer as a privileged and elevated user. The simplest way to do this is to run a PowerShell prompt as administrator, then kick of the MSI. Simple! Run the Server update first, then the ACS.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image.png"><img class="colorbox-137"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb.png" width="244" height="35" /></a></p>
<p>Step 2) and 3) completed perfectly well.</p>
<p>Step 4) Again required running the patch installer from an elevated PowerShell prompt, then running the Gateway update. As mentioned in the Kevin Holman article, the patch was not added to the Agent folder, so I manually copied that.</p>
<p>Step 5) Updating the Discovered Agents is just a case of going to the Pending Management view under Administration in the Console and approving the Agents</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/image1.png"><img class="colorbox-137"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/09/image_thumb1.png" width="244" height="78" /></a></p>
<p>Step 6) was a simple case of running the installer on the Console machines, 7) we rolled out the patch via SCCM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/09/installing-system-center-operations-manager-2007-r2-cu2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Testing throughput between two Windows Servers with NT Testing TCP Tool</title>
		<link>http://www.definit.co.uk/2010/08/testing-throughput-between-two-windows-servers-with-nt-testing-tcp-tool/</link>
		<comments>http://www.definit.co.uk/2010/08/testing-throughput-between-two-windows-servers-with-nt-testing-tcp-tool/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 10:22:36 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[network throughput]]></category>
		<category><![CDATA[NT Testing TCP Tool]]></category>
		<category><![CDATA[ntttcpr]]></category>
		<category><![CDATA[ntttcps]]></category>
		<category><![CDATA[testing network speeds]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/08/13/testing-throughput-between-two-windows-servers-with-nt-testing-tcp-tool/</guid>
		<description><![CDATA[The NT Testing TCP Tool is a handy little tool for testing the throughput between two servers – and it’s free! It’s available to download here: http://www.microsoft.com/whdc/device/network/TCP_tool.mspx First, you need to install the MSI on both ends – for the sake of this, say SERVER1 and SERVER2. Once you’ve installed it on the server, navigate [...]]]></description>
				<content:encoded><![CDATA[<p>The NT Testing TCP Tool is a handy little tool for testing the throughput between two servers – and it’s free! It’s available to download here: <a title="http://www.microsoft.com/whdc/device/network/TCP_tool.mspx" href="http://www.microsoft.com/whdc/device/network/TCP_tool.mspx">http://www.microsoft.com/whdc/device/network/TCP_tool.mspx</a></p>
<p>First, you need to install the MSI on both ends – for the sake of this, say SERVER1 and SERVER2. Once you’ve installed it on the server, navigate to \Program Files\Microsoft Corporation\NT Testing TCP Tool\, you should see a few copies of the tool for different architectures. Locate the correct .exe for you architecture and rename it to ntttcps.exe. Copy this and rename it to ntttcpr.exe – these form the sender and receiver parts of the tool.<br />
<span id="more-132"></span><br />
SERVER1 is going to be my sender, and SERVER2 the receiver. On SERVER2, run a command prompt and navigate to the NT Testing TCP Tool folder. A typical listener is kicked of with this command:</p>
<blockquote><p><span style="background-color: #ffffff;">ntttcpr –m 1,0,10.1.1.2 –a 6 –fr</span></p></blockquote>
<p>Broken down, this command does the following:</p>
<p><strong>-m </strong>[<em>Sets a mapping</em>]<strong> 1 </strong>[<em>with 1 thread</em>]<strong>, 0 </strong>[<em>to CPU0</em>]<strong>, 10.1.1.2</strong> [<em>listening on IP 10.1.1.2</em>]<strong> –a 6 </strong>[<em>expect asynchronous data, use 6 overlapped buffers</em>]<strong> –fr </strong>[<em>always use full receive buffers]</em></p>
<p>The implicit options are 64KB buffer size, 20,000 buffers on port 5001. This is a 1GB test transfer, so it could take a while over a slow connection. If you want to set the buffer, use –l [size]. If you want to set the number of buffers, use –n [number]. To set the port to use, use –p [port].</p>
<p>Now that the listener is waiting for a connection we can kick off the test from the sender – SERVER1.</p>
<blockquote><p><span style="background-color: #ffffff;">ntttcps –m 1,0,10.1.1.2 –a 2</span></p></blockquote>
<p>Similar to the previous command on SERVER2, this does the following:</p>
<p><strong>-m </strong>[<em>sets a mapping</em>] <strong>1</strong> [<em>with 1 thread</em>]<strong>, 0</strong> [<em>to CPU0</em>]<strong>, 10.1.1.2</strong> [<em>sending to IP 10.1.1.2</em>]<strong> –a 2</strong> [<em>send asynchronous data, use 2 overlapped buffers</em>]</p>
<p>The implicit options are the same as before. A useful option is to use the –f [filename.txt] to send the output to a text file.</p>
<p>Here’s the results of a test I conducted earlier:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image10.png"><img class="colorbox-132"  style="display: inline; border: 0px;" title="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb10.png" border="0" alt="image" width="244" height="145" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/08/testing-throughput-between-two-windows-servers-with-nt-testing-tcp-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Installing Exchange 2010 Edge Server with Forefront Protection for Exchange (FPE) and Threat Management Gateway (TMG) – Part 1</title>
		<link>http://www.definit.co.uk/2010/08/installing-exchange-2010-edge-server-with-forefront-protection-for-exchange-fpe-and-threat-management-gateway-tmg-part-1/</link>
		<comments>http://www.definit.co.uk/2010/08/installing-exchange-2010-edge-server-with-forefront-protection-for-exchange-fpe-and-threat-management-gateway-tmg-part-1/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 13:59:24 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Forefront]]></category>
		<category><![CDATA[Forefront Protection for Exchange]]></category>
		<category><![CDATA[Forefront Threat Management Gateway]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Edge Transport]]></category>
		<category><![CDATA[FPE]]></category>
		<category><![CDATA[Hub Transport]]></category>
		<category><![CDATA[Threat Management Gateway]]></category>
		<category><![CDATA[TMG]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/08/10/installing-exchange-2010-edge-server-with-forefront-protection-for-exchange-fpe-and-threat-management-gateway-tmg-part-1/</guid>
		<description><![CDATA[I am mid-migration, in a co-existence setup with Exchange 2010, 2007 and 2003. So far the roles installed for Exchange 2010 are CAS, Hub and Mailbox on a single server. Into this mix I need to introduce an Edge Server, with message hygiene in the form of Forefront Protection for Exchange (FPE) and Threat Management [...]]]></description>
				<content:encoded><![CDATA[<p><img class="colorbox-128"  style="border-right-width: 0px; margin: 0px 0px 20px 30px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="TMG2010" border="0" alt="TMG2010" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/TMG20101.png" width="160" height="105" /> I am mid-migration, in a co-existence setup with Exchange 2010, 2007 and 2003. So far the roles installed for Exchange 2010 are CAS, Hub and Mailbox on a single server. Into this mix I need to introduce an Edge Server, with message hygiene in the form of Forefront Protection for Exchange (FPE) and Threat Management Gateway (TMG) as a reverse proxy to publish OWA, ActiveSync et-al.</p>
<p>Since Edge, FPE and TMG can now all exist on a single 64-bit server, I will start with a clean installation of Windows Server 2008 R2, up to date with all the latest hot fixes. The server itself is nothing too spectacular, for testing purposes it has 2 virtual CPUs and 2GB RAM. It does need 2 NICs, one on the internal LAN and one on the DMZ. Since the DMZ is behind a hardware firewall, an external IP address has been mapped to the servers DMZ NIC. The server is named EDGE01.</p>
<p> <span id="more-128"></span>
<p>To begin with, I need to install the Active Directory Lightweight Directory Services role, which includes the .NET 3.5 framework. So to start, you can fire up the Add Roles Wizard and install AD LDS, but the simpler way is to use the PowerShell ServerManager commands. </p>
<p>I’m installing the Exchange 2010 prerequisites as per this Technet article: <a title="http://technet.microsoft.com/en-us/library/bb691354.aspx" href="http://technet.microsoft.com/en-us/library/bb691354.aspx">http://technet.microsoft.com/en-us/library/bb691354.aspx</a>.</p>
<p>From an elevated PowerShell prompt, import the server admin module:</p>
<blockquote><pre>Import-Module ServerManager</pre>
<p>
    </p>
<pre>Add-WindowsFeature NET-Framework,RSAT-ADDS,ADLDS –Restart</pre>
</blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image1.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb1.png" width="244" height="62" /></a></p>
<p>The components will install, and the server will restart (leave of the –Restart to restart later).</p>
<p>Now we can move on to the Exchange 2010 Edge role installation. First of all, check that you can resolve the existing Exchange 2010 and your Global Catalog servers, either by ping or NSLOOKUP. Since this server is in the DMZ and LAN, and not a domain joined, I have added the DNS suffix to the Internal LAN NIC. If DNS is not applicable (i.e. only in DMZ), create an entry in the server’s HOSTS file. You also need to create an A record in the internal DNS for the Edge server so that the internal Exchange installation can get to the Edge server.</p>
<p>Run the Exchange 2010 setup wizard, click through the Introduction, read and agree to the License Agreement, check your Error Reporting settings and come to the Installation Type. Select Custom Exchange Server Installation.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image2.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb2.png" width="244" height="213" /></a></p>
<p>Select the Edge Transport Role (Management Tools will select automatically)</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image3.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb3.png" width="244" height="214" /></a></p>
<p>Set your CEIP settings to your preference and then the Readiness Checks will begin. Once completed, check that the prerequisites are installed and configured – if not go back and install/configure them and retry the checks until they are all passed.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image4.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb4.png" width="244" height="214" /></a></p>
<p>Review the setup completion window, ensure there are no errors:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image5.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb5.png" width="244" height="214" /></a></p>
<p>This will then open up the Exchange Management Console (EMC). Select the Edge Transport server and have a look through the settings. Now is also a good time to enter your license key, if you’re not using a trial version. You can do this again via the EMC, or the Exchange Management Shell (EMS)</p>
<blockquote>
<pre>Set-ExchangeServer -Identity 'EDGE01' -ProductKey 'XXXX-XXXX-XXXX-XXXX-XXXX’</pre>
</blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image6.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb6.png" width="244" height="171" /></a></p>
<p>If your existing Exchange has been updated (i.e. mine is on Update Rollup 4) then you need to match the update version on the Edge server.</p>
<p>To configure the Edge Server for EdgeSync, use the following command to create an EdgeSync configuration file on your new Edge server:</p>
<blockquote>
<pre>New-EdgeSubscription –FileName c:\EDGE01-Config.xml</pre>
</blockquote>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image7.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb7.png" width="244" height="52" /></a></p>
<p>You get the above message, which essentially warns you that a) EdgeSync will overwrite your existing configurations, b) you must now manage the server from your Internal Exchange organisation, c) the Edge and Hub Transport servers must be able to resolve each other’s FQDN, d) you have 1440 minutes (24 hours) to complete the subscription or it will eat your mum and/or dog*. (<em>*may not be true</em>)</p>
<p>If you view the created subscription file, you can see that there’s some pretty obvious configuration data such as the server name and FQDN, a certificate, a user name and password to create, the AD LDS (or ADAM in old money) port and some product version and ID info.</p>
<p>Copy this subscription file over to your Hub Transport server and fire up a new EMS window.</p>
<blockquote>
<pre>New-EdgeSubscription -FileData ([byte[]]$(Get-Content -Path &quot;C:\EDGE01-Config.xml&quot; -Encoding Byte -ReadCount 0)) -Site &quot;Default-First-Site&quot;</pre>
<p>
    </p>
<pre>Start-EdgeSynchronization</pre>
</blockquote>
<p>Essentially this command reads the XML config file and allows you to add the site option – this is required when running on the Hub Transport server. (See <a title="http://technet.microsoft.com/en-us/library/bb123800.aspx" href="http://technet.microsoft.com/en-us/library/bb123800.aspx">http://technet.microsoft.com/en-us/library/bb123800.aspx</a>). Start-EdgeSynchronization does exactly what it says on the tin. If all is successful you should see output like in the screenshot below:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image8.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb8.png" width="244" height="123" /></a></p>
<p>At this point I would suggest testing your mail flow, I sent a few emails to my gmail account and by looking at the headers realised that I needed to add in the SmartHost for my send connector. This is done on the Hub Transport server, under send connectors you should have two EdgeSync Send connectors:</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image9.png"><img class="colorbox-128"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb9.png" width="244" height="47" /></a></p>
<p>As I have multiple sites and versions, there was some playing with the send connector costs in order to get the mail flowing correctly – but that’s specific to my setup, so I won’t go into it.</p>
<p>As this is now getting to be a long old post, I’m going to split it into two parts – I will link the next one here. In this post I've shown you how to set up the Edge Transport server and get it talking to your Hub Transport – next I’ll show you the FPE install, configuration and also TMG install and configuration. Until then…enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/08/installing-exchange-2010-edge-server-with-forefront-protection-for-exchange-fpe-and-threat-management-gateway-tmg-part-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Unable to access Outlook Web Access (OWA) after installing Update Rollup 1, 2, 3 or 4 – flogon.js errors</title>
		<link>http://www.definit.co.uk/2010/08/unable-to-access-outlook-web-access-owa-after-installing-update-rollup-1-2-3-or-4-flogon-js-errors/</link>
		<comments>http://www.definit.co.uk/2010/08/unable-to-access-outlook-web-access-owa-after-installing-update-rollup-1-2-3-or-4-flogon-js-errors/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 11:02:55 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[flogon.js]]></category>
		<category><![CDATA[Outlook Web Access]]></category>
		<category><![CDATA[Rollup]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/08/10/unable-to-access-outlook-web-access-owa-after-installing-update-rollup-1-2-3-or-4-flogon-js-errors/</guid>
		<description><![CDATA[If you’re having trouble accessing OWA after updating Exchange 2010 with any of the Rollup packages, try this: - Uninstall the update package from the Programs and Features control panel - Download the package file directly from Microsoft, don’t use Windows Update - Open a command prompt or PowerShell prompt as Administrator - Navigate to [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/08/image.png"><img class="colorbox-109"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/08/image_thumb.png" width="244" height="165" /></a> </p>
<p>If you’re having trouble accessing OWA after updating Exchange 2010 with any of the Rollup packages, try this:</p>
<p>- Uninstall the update package from the Programs and Features control panel </p>
<p>- Download the package file directly from Microsoft, don’t use Windows Update </p>
<p>- Open a command prompt or PowerShell prompt as Administrator </p>
<p>- Navigate to the location of the package (.msp) and run from the elevated command prompt. </p>
<p>Apparently when Windows update installs the package it doesn’t run it with the elevated privileges to write to the folder in the Exchange program files – why, I have no idea!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/08/unable-to-access-outlook-web-access-owa-after-installing-update-rollup-1-2-3-or-4-flogon-js-errors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Passed Microsoft Exams 70-662 and 70-663 – Now officially MCITP: Enterprise Messaging Administrator</title>
		<link>http://www.definit.co.uk/2010/07/passed-microsoft-exams-70-662-and-70-663-now-officially-mcitp-enterprise-messaging-administrator/</link>
		<comments>http://www.definit.co.uk/2010/07/passed-microsoft-exams-70-662-and-70-663-now-officially-mcitp-enterprise-messaging-administrator/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 09:49:04 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exams]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[MCITP: Enterprise Messaging Administrator]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/2010/07/29/passed-microsoft-exams-70-662-and-70-663-now-officially-mcitp-enterprise-messaging-administrator/</guid>
		<description><![CDATA[On Monday I took the two Exchange 2010 exams, “70-662 TS: Microsoft Exchange Server 2010, Configuring” and “70-663 PRO: Deploying Messaging Solutions with Microsoft Exchange Server 2010” and I am pleased to say that I passed both of them, scoring an 812 on the 70-662 and 960 on the 70-663. I am especially pleased with [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/MCITPrgb_1084_1085_thumb.jpg"><img class="colorbox-106"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 30px; display: inline; border-top: 0px; border-right: 0px" title="MCITP(rgb)_1084_1085_thumb" border="0" alt="MCITP(rgb)_1084_1085_thumb" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/MCITPrgb_1084_1085_thumb_thumb.jpg" width="120" height="80" /></a> On Monday I took the two Exchange 2010 exams, “70-662 TS: Microsoft Exchange Server 2010, Configuring” and “70-663 PRO: Deploying Messaging Solutions with Microsoft Exchange Server 2010” and I am pleased to say that I passed both of them, scoring an 812 on the 70-662 and 960 on the 70-663. I am especially pleased with the score on the PRO exam!</p>
<p>Overall, there’s quite a lot of overlap between the two exams, with the more heavily theory and design based PRO exam being a “high-level” of the more hands-on management and cmdlet based TS exam.</p>
<p>Study materials I used were Technet, SAMS Microsoft Exchange Server 2010 Unleashed and a test installation. I used practice exams from MeasureUp and also spent time answering peoples 2010 based questions on <a href="http://www.experts-exchange.com/" target="_blank">Experts Exchange</a> and Technet Forums.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/07/passed-microsoft-exams-70-662-and-70-663-now-officially-mcitp-enterprise-messaging-administrator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Why I&#8217;ve changed my blogging software from BlogEngine.Net to WordPress</title>
		<link>http://www.definit.co.uk/2010/07/why-ive-changed-my-bogging-software-from-blogengine-net-to-wordpress/</link>
		<comments>http://www.definit.co.uk/2010/07/why-ive-changed-my-bogging-software-from-blogengine-net-to-wordpress/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 10:08:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blogengine]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=103</guid>
		<description><![CDATA[Up until now, I’ve been using BlogEngine.Net as my blogging platform, and up until now I’ve been relatively happy with using it. One of the major drivers for me as a “Microsoft” person was to use something that is based on Microsoft technology – BlogEngine.Net is based (as the name suggests) on the .Net framework. [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/wordpress1.jpg"><img class="colorbox-103"  style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 0px 30px; display: inline; border-top: 0px; border-right: 0px" title="wordpress" border="0" alt="wordpress" align="right" src="http://www.definit.co.uk/wp-content/uploads/2010/09/wordpress_thumb1.jpg" width="120" height="160" /></a> Up until now, I’ve been using BlogEngine.Net as my blogging platform, and up until now I’ve been relatively happy with using it. One of the major drivers for me as a “Microsoft” person was to use something that is based on Microsoft technology – <a href="http://www.dotnetblogengine.net/" target="_blank">BlogEngine.Net</a> is based (as the name suggests) on the .Net framework. I’m much happier these days writing limited amounts of C#.Net than I am with PHP.</p>
<p>The problem is, I seemed to be spending more time fixing the blog than writing on it. I’ve had all sorts of problems, ranging from incompatibility with my hosting provider, theme compatibility issues, random code issues and more. Email notifications seem to work, then stop, then work again. Simple things like adding reCAPTCHA support to cut down the enormous amount of comment spam have taken days of head scratching. Whether or not these issues are down to my ignorance or the software, the outcome is the same, I don’t want to be fixing my blogging software, I want it to just work!</p>
<p>Then there’s the search engines, and the existing web presence that I have. A major consideration for me when changing the software is the fact that a lot of my traffic comes from links that are embedded in forums and other blogs – and that search engines respond with the existing <a href="http://www.dotnetblogengine.net/" target="_blank">BlogEngine</a> posts rather than the newer ones. I’ve considered this, and I think it’s worth the risk. I will leave the BE running for a while and block search engine traffic to it so that direct links in will still be valid. I’ll see where the traffic takes me – but the advantages of changing now outweigh the risks. I will look to do some sort of URL redirect if it becomes an issue.</p>
<p>So&#160; why move to <a href="http://www.wordpress.org" target="_blank">WordPress</a> then? It’s not based on Microsoft technology and it could potentially set me back to square one with my web presence. Quite simply, it just works. It has a massive ecosystem built up around it of plug-ins, themes and widgets. It’s mature – very mature – software that is actively developed and much more widely used than BlogEngine.Net is.</p>
<p>The import of the BlogML from BlogEngine was pretty pain free -&#160; the categories came in as a GUID rather than the friendly name, but that was a simple matter of updating the MySQL table using a query. I’ve decided to slim down the categories, and as such I’ve moved the existing post categories into tags (handy little plug-in that). The theme I am using is nice enough, maybe when I have some time I’ll customise it a bit further.</p>
<p>But, I’ve made the jump; Windows Live Writer is plugged in to WordPress and I am hoping that it all comes together nicely. Recently I’ve been studying for my MCITP: Enterprise Exchange Administrator exams which I’m taking on Monday (70-662 and 70-663), so hopefully I can push some more Exchange stuff this way.</p>
<p>Until then, thanks for reading!</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/07/why-ive-changed-my-bogging-software-from-blogengine-net-to-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Testing access to your Exchange services with Microsoft Exchange Remote Connectivity Analyzer</title>
		<link>http://www.definit.co.uk/2010/07/testing-access-to-your-exchange-services-with-microsoft-exchange-remote-connectivity-analyzer/</link>
		<comments>http://www.definit.co.uk/2010/07/testing-access-to-your-exchange-services-with-microsoft-exchange-remote-connectivity-analyzer/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 09:27:26 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2003]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Exchange 2000]]></category>
		<category><![CDATA[Remote Connectivity Analyzer]]></category>

		<guid isPermaLink="false">http://www.definit.co.uk/?p=102</guid>
		<description><![CDATA[The Microsoft Exchange Remote Connectivity Analyzer is perhaps the best tool I’ve used in a long time for troubleshooting Exchange external access – it just works! On the forums and websites I read, it doesn’t seem to get the coverage that I’d expect, so I thought I’d give it a mention.]]></description>
				<content:encoded><![CDATA[<p>The <a href="https://www.testexchangeconnectivity.com/Default.aspx" target="_blank">Microsoft Exchange Remote Connectivity Analyzer</a> is perhaps the best tool I’ve used in a long time for troubleshooting Exchange external access – it just works! On the forums and websites I read, it doesn’t seem to get the coverage that I’d expect, so I thought I’d give it a mention.</p>
<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/07/image.png"><img class="colorbox-102"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.definit.co.uk/wp-content/uploads/2010/07/image_thumb.png" width="244" height="163" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/07/testing-access-to-your-exchange-services-with-microsoft-exchange-remote-connectivity-analyzer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Useful commands for troubleshooting Exchange 2010 routing with Exchange 2003/2007</title>
		<link>http://www.definit.co.uk/2010/07/useful-commands-for-troubleshooting-exchange-2010-routing-with-exchange-20032007/</link>
		<comments>http://www.definit.co.uk/2010/07/useful-commands-for-troubleshooting-exchange-2010-routing-with-exchange-20032007/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 17:05:26 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2003]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/07/08/Useful-commands-for-troubleshooting-Exchange-2010-routing-with-Exchange-20032007.aspx</guid>
		<description><![CDATA[I’ve just fixed an issue with Routing for my mixed Exchange 2003/2007/2010 environment. The environment is a single AD domain with 4 sites, Site1, Site2, Site3 and Site4. In Site1, Site2 and Site3 there are 3 Exchange 2003 servers, one per site. In Site4 there is an Exchange 2007 SP2 server (CAS, Mailbox, HT). All [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.definit.co.uk/wp-content/uploads/2010/09/Exchange2010Logo7485161.png"><img class="colorbox-5"  style="margin: 0px 0px 20px 30px; display: inline; border: 0px none;" title="Exchange-2010-Logo-748516" src="http://www.definit.co.uk/wp-content/uploads/2010/09/Exchange2010Logo748516_thumb1.png" border="0" alt="Exchange-2010-Logo-748516" width="161" height="102" align="right" /></a> I’ve just fixed an issue with Routing for my mixed Exchange 2003/2007/2010 environment.</p>
<p>The environment is a single AD domain with 4 sites, Site1, Site2, Site3 and Site4. In Site1, Site2 and Site3 there are 3 Exchange 2003 servers, one per site. In Site4 there is an Exchange 2007 SP2 server (CAS, Mailbox, HT). All the connectors required worked as expected, and inter-site routing works as expected.</p>
<p>I introduced into the mix a 2010 Enterprise server (CAS, Mailbox, HT) to Site1 as a prelude to a full upgrade of the site to Exchange 2010. When a test mailbox from Exchange 2010 attempts to send to a mailbox in Site1 Exchange 2003, it routes via the Site4 Exchange 2007.<br />
<span id="more-5"></span><br />
Find out which site (if any) is a transport hub:</p>
<blockquote><p>Get-ADSite</p></blockquote>
<p>Find out the Site Link costs, and the Exchange specific costs (if set). Exchange costs override AD site costs:</p>
<blockquote><p>Get-ADSiteLink</p></blockquote>
<p>List the Routing Group Connectors:</p>
<blockquote><p>Get-RoutingGroupConnector</p></blockquote>
<p>List the Routing Group Connectors with their costs:</p>
<blockquote><p>Get-RoutingGroupConnector | ft Name,Cost</p></blockquote>
<p>For me the issue was that the Routing Group Connector set up for Exchange 2010 in Site 1 had a cost set to 100, whereas all other RGCs had a cost set to 1. This meant Site1 –&gt; Site4 –&gt; Site1 had a cost of 2. Site1 (2010) –&gt; Site1 (2003) had a cost of 100. It’s easy to see why it won.</p>
<p>Using the following command I was able to set the costs to the same:</p>
<blockquote><p>Set-RoutingGroupConnector -Identity "&lt;Administrative Group&gt;\&lt;Routing Group&gt;\&lt;Connector&gt;" -Cost 1</p></blockquote>
<p>It’s quite difficult to get a grip on why the RGC cost takes precedence over the AD site cost, or the Exchange specific site cost – effectively you have 3 different settings to govern the mail routing. From my problem-solving steps, it would seem that The RGC takes precedence, followed by the Exchange specific cost, followed by the AD site link cost.</p>
<p>Any Exchange Guru out there care to correct or confirm?</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/07/useful-commands-for-troubleshooting-exchange-2010-routing-with-exchange-20032007/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Exchange ActiveSync fails on iPhone after upgrade to iOS4</title>
		<link>http://www.definit.co.uk/2010/07/exchange-activesync-fails-on-iphone-after-upgrade-to-ios4/</link>
		<comments>http://www.definit.co.uk/2010/07/exchange-activesync-fails-on-iphone-after-upgrade-to-ios4/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 15:55:36 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Exchange 2003]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/07/02/Exchange-ActiveSync-fails-on-iPhone-after-upgrade-to-iOS4.aspx</guid>
		<description><![CDATA[I’ve spent a fair bit of time today trying to sort out my iPhone sync to my Exchange Server, failing miserably. It used to work, pre-upgrade to iOS4, but for some reason fails to sync. Symptoms were: iPhone fails to sync, generic timeout error (or is very slow) https://www.testexchangeconnectivity.com/ successfully tests the mailbox access &#160; [...]]]></description>
				<content:encoded><![CDATA[<p>I’ve spent a fair bit of time today trying to sort out my iPhone sync to my Exchange Server, failing miserably. It used to work, pre-upgrade to iOS4, but for some reason fails to sync.</p>
<p>Symptoms were:</p>
<ul>
<li>iPhone fails to sync, generic timeout error (or is very slow)</li>
<li><a title="https://www.testexchangeconnectivity.com/" href="https://www.testexchangeconnectivity.com/">https://www.testexchangeconnectivity.com/</a> successfully tests the mailbox access</li>
</ul>
<p>&#160;</p>
<p>The server was configured as per <a title="http://support.microsoft.com/kb/817379/en-us" href="http://support.microsoft.com/kb/817379/en-us">http://support.microsoft.com/kb/817379/en-us</a> to allow OWA/ActiveSync with SSL on OWA.</p>
<p>The iPhone was configured to accept the SSL certificate on the Exchange Server.</p>
<p>My brother Tom sent me this Apple KB (<a title="http://support.apple.com/kb/TS3398" href="http://support.apple.com/kb/TS3398">http://support.apple.com/kb/TS3398</a>) which he’d found from the other side – Exchange servers he was managing were under very heavy load, which is another symptom of this issue.</p>
<p>I installed the new configuration as per the article, restarted the phone and the issue was fixed!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/07/exchange-activesync-fails-on-iphone-after-upgrade-to-ios4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Requesting SCOM 2007 Gateway or Agent Certificates for Server 2008 from a Server 2003 Enterprise Certificate Authority</title>
		<link>http://www.definit.co.uk/2010/06/requesting-scom-2007-gateway-or-agent-certificates-for-server-2008-from-a-server-2003-enterprise-certificate-authority/</link>
		<comments>http://www.definit.co.uk/2010/06/requesting-scom-2007-gateway-or-agent-certificates-for-server-2008-from-a-server-2003-enterprise-certificate-authority/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 12:27:33 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[opsmgr]]></category>
		<category><![CDATA[Windows Server 2003]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/06/25/Requesting-SCOM-2007-Gateway-or-Agent-Certificates-for-Server-2008-from-a-Server-2003-Enterprise-Certificate-Authority.aspx</guid>
		<description><![CDATA[This is a pretty specific set of instructions for a specific environment: If you are using Microsoft System Center Operations Manager 2007 and you have a Microsoft Certificate Services 2003 Certificate Authority on your domain and you have non-domain Windows Server 2008 servers you wish to monitor or set up as a gateway server. &#160; [...]]]></description>
				<content:encoded><![CDATA[<p>This is a pretty specific set of instructions for a specific environment:</p>
<ul>
<li>If</li>
</ul>
<ul>
<li>you are using Microsoft System Center Operations Manager 2007</li>
</ul>
<li>and</li>
<ul>
<li>you have a Microsoft Certificate Services 2003 Certificate Authority on your domain</li>
</ul>
<li>and</li>
<ul>
<li>you have non-domain Windows Server 2008 servers you wish to monitor or set up as a gateway server.</li>
</ul>
<p>&#160;</p>
<p>Getting a certificate for either a Gateway Server or remotely monitored Server can be a touch vexing. If you’re installing on the same domain as the SCOM management server the security settings take care of themselves, not so for non-domain servers, which require mutual certificate authentication. The Gateway must trust the Domain CA and identify itself as trusted to the Management Server. I have bashed my head against this several times now, so I thought I’d make a precise blog post to cover the steps required!</p>
<p>In this scenario, we will have 2 servers <strong>CA01</strong>, the Windows 2003 Certificate Authority, and <strong>Gateway01</strong>, the SCOM 2007 gateway. The certificate template for Operations Manager has been created on <strong>CA01</strong> as per the documentation and is called “OperationsManagerCert”. On <strong>Gateway01</strong> I have copied the Gateway installer to c:\SCOM\Gateway and the SCOM Tools to c:\SCOM\Tools. <strong>SCOM01</strong> is our SCOM collection server.</p>
<p><strong>CA01</strong>: Navigate to <a href="https://ca01/certsrv">https://ca01/certsrv</a> and download the CA Certificate.</p>
<p><strong>Gateway01</strong>: Copy the CA Certificate to the c:\SCOM folder by whatever means you have. Open mmc.exe and add the Certificates Snap-in for the local computer account. Right click the Trusted Root Certification Authorities store and Import the CA01 CA certificate.</p>
<p><a href="/wp-content/uploads/image_48.png"><img class="colorbox-7"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_48.png" width="244" height="160" /></a> </p>
<p><strong>Gateway01</strong>: Open notepad and create a new certificate request file with the contents below. Name the file Gateway01.inf and save in c:\SCOM</p>
<blockquote><p>[NewRequest] </p>
<p>Subject=&quot;CN=<em>&lt;FQDN of Gateway01&gt;</em>&quot; </p>
<p>Exportable=TRUE </p>
<p>KeyLength=2048 </p>
<p>KeySpec=1 </p>
<p>KeyUsage=0xf0 </p>
<p>MachineKeySet=TRUE </p>
<p>[EnhancedKeyUsageExtension] </p>
<p>OID=1.3.6.1.5.5.7.3.1 </p>
<p>OID=1.3.6.1.5.5.7.3.2 </p>
</blockquote>
<p><strong>Gateway01</strong>: Open a command prompt as administrator and navigate to c:\SCOM, use certreq.exe to generate a certificate request:</p>
<blockquote><p>certreq –new –f Gateway01.inf Gateway01.req</p>
</blockquote>
<p><strong>Gateway01</strong>: Open Gateway01.req in notepad and copy the contents to clipboard.</p>
<p><strong>CA01</strong>: Open <a href="https://ca01/certsrv">https://ca01/certsrv</a> and start a new advanced certificate request, create the certificate request using a base64 encoded CMC. Paste the data from Gateway01.req into the “Saved Request” box. Select your SCOM certificate template and click next. Save the response as a Base 64 encoded certificate.</p>
<p><a href="/wp-content/uploads/image_49.png"><img class="colorbox-7"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_49.png" width="244" height="240" /></a> </p>
<p><strong>Gateway01</strong>: Copy the certificate file over to c:\SCOM on Gateway01 by whatever method you have available. Open a command prompt with admin rights and approve the new certificate with certutil.</p>
<blockquote><p><font style="background-color: #ffffff">certreq –accept Gateway01.cer</font></p>
</blockquote>
<p>Check that the certificate has been imported into the Computer/Personal store using mmc.exe.</p>
<p><strong>SCOM01</strong>: At this point you can either install your SCOM agent, or Gateway Server on Gateway01 <strong>–</strong> if you are installing the Gateway Server like me, you need to first approve the Gateway using the Gateway Approval Tool. Open a command prompt as administrator and navigate to “c:\Program Files\System Center Operations Manager 2007” or wherever your SCOM install is. Copy the Microsoft.EnterpriseManagement.GatewayApproval.Tool.exe from Support Tools into the parent folder (it requires .dlls in that folder).</p>
<blockquote><p><font style="background-color: #ffffff">Microsoft.EnterpriseManagement.GatewayApproval.Tool.exe ¬</font></p>
<p><font style="background-color: #ffffff">/ManagementServerName=<em>SCOM01</em> /GatewayName=<em>Gateway01</em></font></p>
</blockquote>
<p><strong>Gateway01</strong>: Run the Gateway Server installer and enter the details of the Management Server and Management Group name. When that’s finished, you need to tell SCOM which certificate to use with the MOMCertImport.exe tool located in c:\SCOM\Tools</p>
<blockquote><p><font style="background-color: #ffffff">MOMCertImport /SubjectName <em>Gateway01.Domain.Lcl</em></font></p>
</blockquote>
<p>Give it a few minutes and you should be able to see the new gateway under Management Servers in the Administration console for SCOM. Remember to right-click, properties, security and allow the server to act as a proxy if it’s reporting for other servers.</p>
<p>I use the same procedure to install Agents in my DMZ that don’t have access to the certificate services – likewise our production web servers isolated in their hosting environment.</p>
<p>I hope this helps you, I know this is an article that I will be referring back to time and time again!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/06/requesting-scom-2007-gateway-or-agent-certificates-for-server-2008-from-a-server-2003-enterprise-certificate-authority/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Exchange 2010 “New Local Move Request” and “New Remote Move Request” missing when you right-click a user’s MailBox</title>
		<link>http://www.definit.co.uk/2010/06/exchange-2010-%e2%80%9cnew-local-move-request%e2%80%9d-and-%e2%80%9cnew-remote-move-request%e2%80%9d-missing-when-you-right-click-a-user%e2%80%99s-mailbox/</link>
		<comments>http://www.definit.co.uk/2010/06/exchange-2010-%e2%80%9cnew-local-move-request%e2%80%9d-and-%e2%80%9cnew-remote-move-request%e2%80%9d-missing-when-you-right-click-a-user%e2%80%99s-mailbox/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 12:14:27 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exchange]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Exchange 2010]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/06/17/Exchange-2010-e2809cNew-Local-Move-Requeste2809d-and-e2809cNew-Remote-Move-Requeste2809d-missing-when-you-right-click-a-usere28099s-MailBox.aspx</guid>
		<description><![CDATA[I’m currently testing an Exchange 2010 server for the organisation prior to a migration project, specifically testing moving mailboxes backwards and forwards. Something that confused me slightly for a few minutes was this: if there is an existing Move Request (pending, in progress, failed or completed) you will not see the “New Local Move Request” [...]]]></description>
				<content:encoded><![CDATA[<p>I’m currently testing an Exchange 2010 server for the organisation prior to a migration project, specifically testing moving mailboxes backwards and forwards. Something that confused me slightly for a few minutes was this: if there is an existing Move Request (pending, in progress, failed or completed) you will not see the “New Local Move Request” or “New Remote Move Request” -</p>
<p><a href="/wp-content/uploads/image_46.png"><img class="colorbox-8"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_46.png" width="244" height="231" /></a> </p>
<p>Fortunately this is very simple to counter – simply clear the old “Move Request” and the options will be back in the Mailbox options:</p>
<p><a href="/wp-content/uploads/image_47.png"><img class="colorbox-8"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_47.png" width="244" height="92" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/06/exchange-2010-%e2%80%9cnew-local-move-request%e2%80%9d-and-%e2%80%9cnew-remote-move-request%e2%80%9d-missing-when-you-right-click-a-user%e2%80%99s-mailbox/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Commenting re-enabled!</title>
		<link>http://www.definit.co.uk/2010/06/commenting-re-enabled/</link>
		<comments>http://www.definit.co.uk/2010/06/commenting-re-enabled/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 16:14:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blogengine]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/06/03/Commenting-re-enabled!.aspx</guid>
		<description><![CDATA[Shhhh, don't tell the spam-bots, but after a blissful month of having broken the comments system and not having enough time to fix it, I've finally got round to doing it! Comments will now work without errors - and the spam-bots should have a hard time getting past reCaptcha too! At some point I'll update [...]]]></description>
				<content:encoded><![CDATA[<p>Shhhh, don't tell the spam-bots, but after a blissful month of having broken the comments system and not having enough time to fix it, I've finally got round to doing it! Comments will now work without errors - and the spam-bots should have a hard time getting past reCaptcha too!</p>
<p>At some point I'll update to 1.6.1, but for now, I'm glad it's working again!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/06/commenting-re-enabled/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Unable to access admin shares (c$, d$, ADMIN$, IPC$) on Windows Server 2008 in a Workgroup</title>
		<link>http://www.definit.co.uk/2010/06/unable-to-access-admin-shares-c-d-admin-ipc-on-windows-server-2008-in-a-workgroup/</link>
		<comments>http://www.definit.co.uk/2010/06/unable-to-access-admin-shares-c-d-admin-ipc-on-windows-server-2008-in-a-workgroup/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 10:07:39 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Admin Tools]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/06/02/Unable-to-access-admin-shares-(c24-d24-ADMIN24-IPC24)-on-Windows-Server-2008-in-a-Workgroup.aspx</guid>
		<description><![CDATA[If you have a Windows Server 2008 box in a workgroup that you require access to one of the admin shares, it can be a little more complicated than with Server 2003. In my case, we had a SQL server on the back end which was trying to access the web server in the DMZ [...]]]></description>
				<content:encoded><![CDATA[<p>If you have a Windows Server 2008 box in a workgroup that you require access to one of the admin shares, it can be a little more complicated than with Server 2003. In my case, we had a SQL server on the back end which was trying to access the web server in the DMZ using PSExec.exe to remotely run a process. Executing PSExec and passing the correct credentials failed with “Access is Denied”.</p>
<p>Similarly, when I tried to access the c$, ADMIN$ shares on the server, it would deny me access, and would lock out my admin account when I tried. Creating a separate share would allow me access, but that’s no good for PSExec. To further confuse things, when I accessed the <a href="file://\\server\c$">\\server\c$</a> share from the server, it worked.</p>
<p>Checking the share properties using “net share c$” shows that the settings are all correct, Everyone has FULL access (this is default, it uses NTFS permissions to restrict access):</p>
<p><a href="/wp-content/uploads/image_45.png"><img class="colorbox-10"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_45.png" width="244" height="123" /></a></p>
<p>This issue does not affect domain member servers, I was able to browse to the c$ shares of several Windows Server 2008 servers on the domain. </p>
<p>The problem is caused by UAC and the elevated privileges required to access the administrative shares. This <a href="http://support.microsoft.com/kb/951016" target="_blank">Microsoft KB article (951016)</a> describes the issue in Windows Vista </p>
<blockquote><p>To better protect those users who are members of the local Administrators group, we implement UAC restrictions on the network. This mechanism helps prevent against &quot;loopback&quot; attacks. This mechanism also helps prevent local malicious software from running remotely with administrative rights.</p>
</blockquote>
<p>and the steps to resolve it, open a new PowerShell window as administrator:</p>
<blockquote><p>New-ItemProperty HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -name &quot;LocalAccountTokenFilterPolicy&quot; -value &quot;1&quot; -propertyType dword</p>
</blockquote>
<p><em>A word of caution: this is opening up a security hole and it should only be done with careful consideration of the risks. The need to use PSExec to remotely run a process was an important part of the deployment, however the same result could be achieved using PowerShell remoting. Until it’s tested and we’re ready to deploy that, I’ll be using this method.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/06/unable-to-access-admin-shares-c-d-admin-ipc-on-windows-server-2008-in-a-workgroup/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>VMware vSphere – DRS only shows one host in cluster</title>
		<link>http://www.definit.co.uk/2010/05/vmware-vsphere-drs-only-shows-one-host-in-cluster/</link>
		<comments>http://www.definit.co.uk/2010/05/vmware-vsphere-drs-only-shows-one-host-in-cluster/#comments</comments>
		<pubDate>Tue, 25 May 2010 15:54:29 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[DRS/HA]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware DRS/HA]]></category>
		<category><![CDATA[VMware ESX 3.5]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/05/25/VMware-vSphere-DRS-only-shows-one-host-in-cluster.aspx</guid>
		<description><![CDATA[I rebuilt an ESX host in my HA/DRS cluster today, following my build procedure to configure as per VMware best practices and internal guidelines. When the host was fully configured and up-to-date, I added it to the cluster and enabled HA and DRS. Then I went to generate some DRS recommendations to balance the load [...]]]></description>
				<content:encoded><![CDATA[<p>I rebuilt an ESX host in my HA/DRS cluster today, following my build procedure to configure as per VMware best practices and internal guidelines. When the host was fully configured and up-to-date, I added it to the cluster and enabled HA and DRS. Then I went to generate some DRS recommendations to balance the load an ease off my overstretched host, but no recommendations were made.</p>
<p>I couldn’t manually migrate any VMs either – it was odd, because both hosts were added into the cluster, and could ping and vmkping each other from the console.</p>
<p>I also received email alerts -</p>
<blockquote><p><strong>[VMware vCenter - Alarm Host error]</strong> Error detected on [HOST] in [Data Center]: Agent can't send heartbeats.msg size: 1266, sendto() returned: Operation not permitted</p>
</blockquote>
<p>It turns out that there were slight naming differences between the default VMKernels on each host, which stops communication. Since one VMKernel was named “VMKernel” and the other “VMKernel 2” it stops the migrations, and hence DRS. The hosts would add into the cluster OK, DRS actually showed as “imbalanced” on the Cluster summary screen - it was just DRS and vMotion which wouldn’t work.</p>
<p>With the VMKernels renamed to exactly the same thing, DRS kicked off no problem, as did a manual migration.</p>
<p>So the moral of the story is this; name ALL networks in the same cluster identically. It makes sense when you think that the VM <em>needs</em> to see it’s Virtual Machine Network on each host – why should the Service Console and VMKernel be any different?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/05/vmware-vsphere-drs-only-shows-one-host-in-cluster/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Certificate errors when connecting Gateway Server or non-domain Agent to System Center Operations Manager 2007 R2</title>
		<link>http://www.definit.co.uk/2010/05/certificate-errors-when-connecting-gateway-server-or-non-domain-agent-to-system-center-operations-manager-2007-r2/</link>
		<comments>http://www.definit.co.uk/2010/05/certificate-errors-when-connecting-gateway-server-or-non-domain-agent-to-system-center-operations-manager-2007-r2/#comments</comments>
		<pubDate>Fri, 07 May 2010 12:56:47 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Certificate Services]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Operations Manager]]></category>
		<category><![CDATA[System Center]]></category>
		<category><![CDATA[opsmgr]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/05/07/Certificate-errors-when-connecting-Gateway-Server-or-non-domain-Agent-to-System-Center-Operations-Manager-2007-R2.aspx</guid>
		<description><![CDATA[This was a bit of an odd one. I was adding a Gateway Server to a newly rebuilt SCOM 2007 R2 Root Management Server when I kept encountering this error: The certificate specified in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Machine Settings cannot be used for authentication.&#160; The error is The credentials supplied to the package [...]]]></description>
				<content:encoded><![CDATA[<p>This was a bit of an odd one. I was adding a Gateway Server to a newly rebuilt SCOM 2007 R2 Root Management Server when I kept encountering this error:</p>
<blockquote><p>The certificate specified in the registry at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Machine Settings cannot be used for authentication.&#160; The error is The credentials supplied to the package were not recognized(0x8009030D).</p>
</blockquote>
<p>I followed the Microsoft install and setup guides exactly, and it’s not my first time either – but I’d never seen that one before.</p>
<p>It turns out that it’s a quirk with Certificate Services and how you request your certificate. I used the Certificate Services website on my Server 2003 Enterprise Root Certificate Authority to request the correct certificate, based on the OperationsManager template I created. Crucially, there wasn’t the option to import the certificate to the Machine/Personal certificate store – it went into the User/Personal. This meant that when it came to exporting and then re-importing the certificate, the private key was not correct.</p>
<p>Requesting the certificate through the MMC Certificates Snap-in and restarting the Health Service resolves the issue.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/05/certificate-errors-when-connecting-gateway-server-or-non-domain-agent-to-system-center-operations-manager-2007-r2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Migrating the HP Systems Insight Manager 6.x database</title>
		<link>http://www.definit.co.uk/2010/04/migrating-the-hp-systems-insight-manager-6-x-database/</link>
		<comments>http://www.definit.co.uk/2010/04/migrating-the-hp-systems-insight-manager-6-x-database/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 10:57:44 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[HP]]></category>
		<category><![CDATA[Admin Tools]]></category>
		<category><![CDATA[SQL Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/04/15/Migrating-the-HP-Systems-Insight-Manager-6x-database.aspx</guid>
		<description><![CDATA[We run to monitoring systems where I work, the first is HP SIM and the second is Microsoft System Center Operations Manager. Currently, they and their databases all reside on a single rather battered server, “MONITOR1”. I’ve installed a new SQL Server 2008 server “SQL1” on Windows Server 2008 to take some of the load, [...]]]></description>
				<content:encoded><![CDATA[<p>We run to monitoring systems where I work, the first is HP SIM and the second is Microsoft System Center Operations Manager. Currently, they and their databases all reside on a single rather battered server, “MONITOR1”.</p>
<p>I’ve installed a new SQL Server 2008 server “SQL1” on Windows Server 2008 to take some of the load, and take advantage of the 64-bit OS and SQL installation.</p>
<p>Both servers are part of the domain “DOMAIN”</p>
<p>The process goes something like this:</p>
<ol>
<li>Add the user that SIM runs as to the SQL server logins. For me that’s “DOMAIN\Insight.Manager”</li>
<li>Create a new database on SQL1 with exactly the same name as the MONITOR1 database for SIM. Since my 6.x install is an upgraded 5.x install, the database is called “Insight_v50_0_16732390”.</li>
<li>Add the SIM user account to the new database with DBO permissions.</li>
<li>Stop the HP SIM service on MONITOR1</li>
<li>Right click “Insight_v50_0_16732390” on MONITOR1 and Export. Export all the tables to SQL1…and wait a long time for the data to transfer.</li>
<li>While you’re waiting, you can edit the following files (c:\Program Files\HP\Systems Insight Manager\Config\) - database.props and database.admin. Change any references for MONITOR1 to SQL1.</li>
<li>Once it’s completed, stop the SQL server on MONITOR1 and start the HP SIM services again - fire up the SIM homepage to check everything is running OK.</li>
<li>If it all checks out, remove the old database and if it’s no longer needed, uninstall the SQL server too.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/04/migrating-the-hp-systems-insight-manager-6-x-database/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Microsoft Forefront Client Security Setup Wizard fails on “Install Collection Server Component”</title>
		<link>http://www.definit.co.uk/2010/04/microsoft-forefront-client-security-setup-wizard-fails-on-%e2%80%9cinstall-collection-server-component%e2%80%9d/</link>
		<comments>http://www.definit.co.uk/2010/04/microsoft-forefront-client-security-setup-wizard-fails-on-%e2%80%9cinstall-collection-server-component%e2%80%9d/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 10:54:30 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Client Security]]></category>
		<category><![CDATA[Forefront]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Forefront Client Security]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/04/06/Microsoft-Forefront-Client-Security-Setup-Wizard-fails-on-e2809cInstall-Collection-Server-Componente2809d.aspx</guid>
		<description><![CDATA[If you see the following cryptic errors when trying to install FCS, then the chances are you need to install the .Net Framework 1.1 AND SP1. &#160; [06/04/2010 10:47:11] Task (Install Collection Server Component) The following process failed. Process: C:\Windows\system32\msiexec.exe Exit code: 1603 Number of tasks completed: [06/04/2010 10:47:12]]]></description>
				<content:encoded><![CDATA[<p>If you see the following cryptic errors when trying to install FCS, then the chances are you need to install the .Net Framework 1.1 AND SP1.</p>
<p><a href="/wp-content/uploads/image_44.png"><img class="colorbox-14"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_44.png" width="244" height="198" /></a> </p>
<p>&#160;</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:f790ffc7-2144-4d7c-a188-e632b798d9e2" class="wlWriterEditableSmartContent">
<pre class="brush: text;">[06/04/2010 10:47:11] Task (Install Collection Server Component)
The following process failed.
Process: C:\Windows\system32\msiexec.exe
Exit code: 1603
Number of tasks completed: [06/04/2010 10:47:12]</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/04/microsoft-forefront-client-security-setup-wizard-fails-on-%e2%80%9cinstall-collection-server-component%e2%80%9d/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Server 2008 – Reporting Services Error The permissions granted to user DOMAIN\USER are insufficient for performing this operation. (rsAccessDenied)</title>
		<link>http://www.definit.co.uk/2010/04/server-2008-reporting-services-error-the-permissions-granted-to-user-domainuser-are-insufficient-for-performing-this-operation-rsaccessdenied/</link>
		<comments>http://www.definit.co.uk/2010/04/server-2008-reporting-services-error-the-permissions-granted-to-user-domainuser-are-insufficient-for-performing-this-operation-rsaccessdenied/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 08:52:57 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[SQL 2008]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[SQL Reporting Services]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/04/01/Server-2008-Reporting-Services-Error-The-permissions-granted-to-user-DOMAIN5cUSER-are-insufficient-for-performing-this-operation-(rsAccessDenied).aspx</guid>
		<description><![CDATA[If you install Reporting Services on Windows Server 2008 (RTM or R2) and attempt to verify the installation by opening the http://SERVER/ReportServer site, you may well see the following message: Reporting Services Error -------------------------------------------------------------------------------- The permissions granted to user 'MCGEOWN\Sam.McGeown' are insufficient for performing this operation. (rsAccessDenied) Get Online Help -------------------------------------------------------------------------------- SQL Server Reporting Services [...]]]></description>
				<content:encoded><![CDATA[<p>If you install Reporting Services on Windows Server 2008 (RTM or R2) and attempt to verify the installation by opening the <a href="http://SERVER/ReportServer">http://SERVER/ReportServer</a> site, you may well see the following message:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:272b682d-c33b-46dc-b22d-0d1e79145083" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Reporting Services Error 
--------------------------------------------------------------------------------

The permissions granted to user 'MCGEOWN\Sam.McGeown' are insufficient for
performing this operation. (rsAccessDenied) Get Online Help

--------------------------------------------------------------------------------
SQL Server Reporting Services</pre>
</div>
<p>Additionally, you may be able to access the <a href="http://SERVER/Reports">http://SERVER/Reports</a> site, but will have no permissions:</p>
<p><a href="/wp-content/uploads/image_43.png"><img class="colorbox-15"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_43.png" width="244" height="114" /></a> </p>
<p>You may also spend a good while checking DB permissions, IIS configurations, file permissions and so on. And after all that, you may just stumble upon the fact that if you run Internet Explorer as Administrator, it will work as expected.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/04/server-2008-reporting-services-error-the-permissions-granted-to-user-domainuser-are-insufficient-for-performing-this-operation-rsaccessdenied/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Event IDs 1030 and 1058 on Server 2003 Domain Controller</title>
		<link>http://www.definit.co.uk/2010/03/event-ids-1030-and-1058-on-server-2003-domain-controller/</link>
		<comments>http://www.definit.co.uk/2010/03/event-ids-1030-and-1058-on-server-2003-domain-controller/#comments</comments>
		<pubDate>Mon, 29 Mar 2010 10:30:06 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2003]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/29/Event-IDs-1030-and-1058-on-Server-2003-Domain-Controller.aspx</guid>
		<description><![CDATA[I logged onto a production domain controller this morning and checked the event logs to be confronted with this: &#160; Event ID 1030 and 1058 every 5 minutes, looking into the detail for these events I can see its a replication issue for one of the GPOs. Event Type: Error Event Source: Userenv Event Category: [...]]]></description>
				<content:encoded><![CDATA[<p>I logged onto a production domain controller this morning and checked the event logs to be confronted with this:</p>
<p><img class="colorbox-16"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_42.png" width="244" height="62" />&#160;</p>
<p>Event ID 1030 and 1058 every 5 minutes, looking into the detail for these events I can see its a replication issue for one of the GPOs.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b21ce173-843d-4d0f-86d8-8c4bb8ea1122" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Event Type:	Error
Event Source:	Userenv
Event Category:	None
Event ID:	1030
Date:		29/03/2010
Time:		04:01:29
User:		NT AUTHORITY\SYSTEM
Computer:	DC01
Description:
Windows cannot query for the list of Group Policy objects.
Check the event log for possible messages previously logged by the
policy engine that describes the reason for this.


For more information, see Help and Support Center at 

http://go.microsoft.com/fwlink/events.asp.

</pre>
</div>
<p>The slightly more informative 1058 showed</p>
<p><div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:bc9d7db9-ba52-4c85-8a07-d4bd08a9e72c" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Event Type:	Error
Event Source:	Userenv
Event Category:	None
Event ID:	1058
Date:		29/03/2010
Time:		04:06:30
User:		NT AUTHORITY\SYSTEM
Computer:	DC01
Description:
Windows cannot access the file gpt.ini for GPO CN={3A7AC061-A26C-4154
-8CF5-01D5754E5C2C},CN=Policies,CN=System,DC=DOMAIN,DC=LCL.
The file must be present at the location &lt;\\DOMAIN.LCL\SysVol\DOMAIN.LCL
\Policies\{3A7AC061-A26C-4154-8CF5-01D5754E5C2C}\gpt.ini&gt;. (Access is denied. ).
Group Policy processing aborted. 

For more information, see Help and Support Center at 

http://go.microsoft.com/fwlink/events.asp.</pre>
</div>
<p>There was no visible cause for the errors, DFS had just got it’s knickers in a twist somehow and was not resolving the DFS share for the domain correctly.</p>
<p>The resolution was fairly simple, running the “dfsutil /purgeMUPCache” command seems to have resolved it for now. The /PurgeMUPCache command clears the MUP Cache (duh!) which holds info about DFS and other shares on the client system.</p>
<p>Technet says: “Clears the client MUP cache, preventing confusion about the current provider when such names conflict. Except for a temporary performance hit, this command has no other adverse effects. This command does not affect any DFS metadata. If this command is not run, and the namespace is not accessed, the obsolete cache entry eventually expires.”</p>
<p>There are plenty of other causes for these errors, if your server is multi-homed (multiple NICs) then check that your “public” NIC is at the top of the adaptor bindings.</p>
<p>My DC is now running happily, no 1030 or 1058s.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/event-ids-1030-and-1058-on-server-2003-domain-controller/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring Server 2008 R2 Core Series: Installing and Managing IIS</title>
		<link>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-installing-and-managing-iis/</link>
		<comments>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-installing-and-managing-iis/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 16:52:44 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2008]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[PowerShell]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/24/Configuring-Server-2008-R2-Core-Series-Installing-and-Managing-IIS.aspx</guid>
		<description><![CDATA[So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so [...]]]></description>
				<content:encoded><![CDATA[<p>So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so basics!</p>
<p>In this post, I’m covering Installing the IIS web server (and a few useful bits) and managing it from the IIS Management Snap-in.</p>
<h2>Installing the basic IIS installation</h2>
<p>Installing optional components in Server 2008 R2 Core is handled by two commands, OCList and OCSetup. OCList, as the name suggests, lists the optional components and their status, installed or not installed. It’s a long list, so I recommend issuing the command with the “|more” pipe:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:9a50c55b-d8ad-4e00-a7a7-ea99e011291b" class="wlWriterEditableSmartContent">
<pre class="brush: text;">oclist | more</pre>
</div>
<p>The output looks something like this:</p>
<p><a href="/wp-content/uploads/image_39.png"><img class="colorbox-17"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_39.png" width="244" height="218" /></a> </p>
<p>OCSetup will accept any one, or multiple, of the roles listed in OCList as an argument to install. It’s recommended you use the command with “start /w” preceding so that the command prompt will wait for the installation to finish before continuing.</p>
<p>To install the basic IIS web server install, use</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:ed55e2fc-6da9-4338-9b59-3cd16c61583f" class="wlWriterEditableSmartContent">
<pre class="brush: text;">start /w ocsetup IIS-WebServerRole</pre>
</div>
<p>As far as I can see, this installs the roles:</p>
<p>Installed:IIS-WebServerRole<br />
  <br />Installed:IIS-WebServer</p>
<p>Installed:IIS-ApplicationDevelopment</p>
<p>Installed:IIS-CommonHttpFeatures</p>
<p>Installed:IIS-DefaultDocument</p>
<p>Installed:IIS-DirectoryBrowsing</p>
<p>Installed:IIS-HttpErrors</p>
<p>Installed:IIS-StaticContent</p>
<p>Installed:IIS-HealthAndDiagnostics</p>
<p>Installed:IIS-HttpLogging</p>
<p>Installed:IIS-Performance</p>
<p>Installed:IIS-HttpCompressionStatic</p>
<p>Installed:IIS-Security</p>
<p>Installed:IIS-RequestFiltering</p>
<p>Installed:IIS-WebServerManagementTools</p>
<p>In order to get .Net functioning and allow remote management, you’ll also need the following components installed, a registry key added and the Web Management Service Started (in order):</p>
<p><div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:2ec827e0-6198-4b47-af8e-8493ba804a9b" class="wlWriterEditableSmartContent">
<pre class="brush: text;">start /w ocsetup WAS-NetFxEnvironment
start /w ocsetup IIS-ISAPIExtensions
start /w ocsetup IIS-ISAPIFilter
start /w ocsetup IIS-NetFxExtensibility
start /w ocsetup IIS-ASPNET
start /w ocsetup IIS-ManagementService

reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server /v EnableRemoteManagement /t REG_DWORD /d 1

net start wmsvc</pre>
</div>
<p>You should now be able to manage your IIS server via the IIS Management Console on a Windows Server 2008 or Windows 7 PC with Remote Server Administration Tools installed.</p>
<p><a href="/wp-content/uploads/image_40.png"><img class="colorbox-17"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_40.png" width="244" height="185" /></a> </p>
<p>You can also manage IIS through a PowerShell addin, if you run powershell.exe on your Server Core installation, then import the WebAdministration Module:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:5ab56f98-0efd-48ad-8703-93b5635d342a" class="wlWriterEditableSmartContent">
<pre class="brush: text;">
C:\Users\Administrator&gt;powershell
Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

PS C:\Users\Administrator&gt; Import-Module WebAdministration
PS C:\Users\Administrator&gt; Get-Command -PsSnapin WebAdministration

CommandType     Name                            Definition
-----------     ----                            ----------
Cmdlet          Add-WebConfiguration            Add-WebConfiguration [-Filte...
Cmdlet          Add-WebConfigurationLock        Add-WebConfigurationLock [-F...
Cmdlet          Add-WebConfigurationProperty    Add-WebConfigurationProperty...
Cmdlet          Backup-WebConfiguration         Backup-WebConfiguration [-Na...
Alias           Begin-WebCommitDelay            Start-WebCommitDelay
Cmdlet          Clear-WebConfiguration          Clear-WebConfiguration [-Fil...
Cmdlet          Clear-WebRequestTracingSettings Clear-WebRequestTracingSetti...
Cmdlet          ConvertTo-WebApplication        ConvertTo-WebApplication [[-...
Cmdlet          Disable-WebGlobalModule         Disable-WebGlobalModule [-Na...
Cmdlet          Disable-WebRequestTracing       Disable-WebRequestTracing [[...
Cmdlet          Enable-WebGlobalModule          Enable-WebGlobalModule [-Nam...
Cmdlet          Enable-WebRequestTracing        Enable-WebRequestTracing [[-...
Alias           End-WebCommitDelay              Stop-WebCommitDelay
Cmdlet          Get-WebAppDomain                Get-WebAppDomain [-InputObje...
Cmdlet          Get-WebApplication              Get-WebApplication [[-Name] ...
Cmdlet          Get-WebAppPoolState             Get-WebAppPoolState [[-Name]...
Cmdlet          Get-WebBinding                  Get-WebBinding [[-Name] &lt;Str...
Cmdlet          Get-WebConfigFile               Get-WebConfigFile [[-PSPath]...
Cmdlet          Get-WebConfiguration            Get-WebConfiguration [-Filte...
Cmdlet          Get-WebConfigurationBackup      Get-WebConfigurationBackup [...
Cmdlet          Get-WebConfigurationLocation    Get-WebConfigurationLocation...
Cmdlet          Get-WebConfigurationLock        Get-WebConfigurationLock [-F...
Cmdlet          Get-WebConfigurationProperty    Get-WebConfigurationProperty...
Cmdlet          Get-WebFilePath                 Get-WebFilePath [[-PSPath] &lt;...
Cmdlet          Get-WebGlobalModule             Get-WebGlobalModule [[-Name]...
Cmdlet          Get-WebHandler                  Get-WebHandler [[-Name] &lt;Str...
Cmdlet          Get-WebItemState                Get-WebItemState [[-PSPath] ...
Cmdlet          Get-WebManagedModule            Get-WebManagedModule [[-Name...
Cmdlet          Get-WebRequest                  Get-WebRequest [-InputObject...
Cmdlet          Get-Website                     Get-Website [[-Name] &lt;String...
Cmdlet          Get-WebsiteState                Get-WebsiteState [[-Name] &lt;S...
Cmdlet          Get-WebURL                      Get-WebURL [[-PSPath] &lt;Strin...
Cmdlet          Get-WebVirtualDirectory         Get-WebVirtualDirectory [[-N...
Function        IIS:                            set-location IIS:
Cmdlet          New-WebApplication              New-WebApplication [-Name] &lt;...
Cmdlet          New-WebAppPool                  New-WebAppPool [-Name] &lt;Stri...
Cmdlet          New-WebBinding                  New-WebBinding [[-Name] &lt;Str...
Cmdlet          New-WebFtpSite                  New-WebFtpSite [-Name] &lt;Stri...
Cmdlet          New-WebGlobalModule             New-WebGlobalModule [-Name] ...
Cmdlet          New-WebHandler                  New-WebHandler [-Name] &lt;Stri...
Cmdlet          New-WebManagedModule            New-WebManagedModule [-Name]...
Cmdlet          New-Website                     New-Website [-Name] &lt;String&gt;...
Cmdlet          New-WebVirtualDirectory         New-WebVirtualDirectory [-Na...
Cmdlet          Remove-WebApplication           Remove-WebApplication [-Name...
Cmdlet          Remove-WebAppPool               Remove-WebAppPool [-Name] &lt;S...
Cmdlet          Remove-WebBinding               Remove-WebBinding [-Protocol...
Cmdlet          Remove-WebConfigurationBackup   Remove-WebConfigurationBacku...
Cmdlet          Remove-WebConfigurationLocation Remove-WebConfigurationLocat...
Cmdlet          Remove-WebConfigurationLock     Remove-WebConfigurationLock ...
Cmdlet          Remove-WebConfigurationProperty Remove-WebConfigurationPrope...
Cmdlet          Remove-WebGlobalModule          Remove-WebGlobalModule [-Nam...
Cmdlet          Remove-WebHandler               Remove-WebHandler [-Name] &lt;S...
Cmdlet          Remove-WebManagedModule         Remove-WebManagedModule [-Na...
Cmdlet          Remove-Website                  Remove-Website [-Name] &lt;Stri...
Cmdlet          Remove-WebVirtualDirectory      Remove-WebVirtualDirectory [...
Cmdlet          Rename-WebConfigurationLocation Rename-WebConfigurationLocat...
Cmdlet          Restart-WebAppPool              Restart-WebAppPool [[-Name] ...
Cmdlet          Restart-WebItem                 Restart-WebItem [[-PSPath] &lt;...
Cmdlet          Restore-WebConfiguration        Restore-WebConfiguration [-N...
Cmdlet          Select-WebConfiguration         Select-WebConfiguration [-Fi...
Cmdlet          Set-WebBinding                  Set-WebBinding [[-Name] &lt;Str...
Cmdlet          Set-WebConfiguration            Set-WebConfiguration [-Filte...
Cmdlet          Set-WebConfigurationProperty    Set-WebConfigurationProperty...
Cmdlet          Set-WebGlobalModule             Set-WebGlobalModule [-Name] ...
Cmdlet          Set-WebHandler                  Set-WebHandler [-Name] &lt;Stri...
Cmdlet          Set-WebManagedModule            Set-WebManagedModule [-Name]...
Cmdlet          Start-WebAppPool                Start-WebAppPool [[-Name] &lt;S...
Cmdlet          Start-WebCommitDelay            Start-WebCommitDelay [-Verbo...
Cmdlet          Start-WebItem                   Start-WebItem [[-PSPath] &lt;St...
Cmdlet          Start-Website                   Start-Website [[-Name] &lt;Stri...
Cmdlet          Stop-WebAppPool                 Stop-WebAppPool [[-Name] &lt;St...
Cmdlet          Stop-WebCommitDelay             Stop-WebCommitDelay [[-PSPat...
Cmdlet          Stop-WebItem                    Stop-WebItem [[-PSPath] &lt;Str...
Cmdlet          Stop-Website                    Stop-Website [[-Name] &lt;Strin...</pre>
</div>
<h2>Serve up a .NET page, to taste</h2>
<p>Not that you’d doubt me (!) but there’s one last thing to do - prove it worked. Fortunately, there’s an easy way to do that. I borrowed the code from <a href="http://www.codefixer.com/asp-net/tutorials/test-asp-net-installation.asp">www.codefixer.com</a> to create a little “hello world” page. Since the default website is c:\inetpub\wwwroot\ I saved the page there as default.aspx and fired up my browser – et voila!</p>
<p><a href="/wp-content/uploads/image_41.png"><img class="colorbox-17"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_41.png" width="244" height="175" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-installing-and-managing-iis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring Server 2008 R2 Core Series: Management Tasks</title>
		<link>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-management-tasks/</link>
		<comments>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-management-tasks/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 15:41:20 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2008]]></category>
		<category><![CDATA[Admin Tools]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/24/Configuring-Server-2008-R2-Core-Series-Management-Tasks.aspx</guid>
		<description><![CDATA[So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so [...]]]></description>
				<content:encoded><![CDATA[<p>So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so basics!</p>
<p>I’m going to look at some management tasks – the bread and butter of being a Windows admin.</p>
<h2>Activating Server 2008 Core</h2>
<p>Activating Server 2008 Core is done via a pre-packaged script called slmgr.vbs -&#160; “Windows Software Licensing Management Tool”</p>
<p>Firstly, you have to install a Product Key (unless it was done during your install)</p>
<p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:f5b870c4-41ca-41b1-92af-6e26c56489d3" class="wlWriterEditableSmartContent">
<pre class="brush: text;">cscript C:\windows\system32\slmgr.vbs /ipk &lt;Product Key&gt;</pre>
</div>
<p><a href="/wp-content/uploads/image_36.png"><img class="colorbox-18"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_36.png" width="244" height="32" /></a> </p>
<p>After that, it’s just a case of automatic activation, assuming you have internet access</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:5aaef8ff-bbe6-4fa5-a332-1d28692cc052" class="wlWriterEditableSmartContent">
<pre class="brush: text;">cscript C:\windows\system32\slmgr.vbs /ato</pre>
</div>
<p>&#160;</p>
<p>If you’ve not got internet access for the server you can use the /dti option to get the Activation ID, call the Microsoft Licensing and Activation line and tap it in. Then use the /atp option to enter the response and activate.</p>
<p>&#160;</p>
<h2>Windows Updates</h2>
<p>If you read the last post in this series, <a href="http://mcgeown.co.uk/blogengine/post/2010/03/24/Configuring-Server-2008-R2-Core-Series-Network-Settings.aspx" target="_blank">Configuring Server 2008 R2 Core Series: Network Settings</a>, you may have seen the option in sconfig.cmd to set Windows Update settings. That’s the first, interactive, way to configure Windows Updates. It’s worth noting that the easiest way to do this is via your Group Policies, if you’re on a domain.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:9b4f15af-fa93-469c-aa74-a40dfa3aed0f" class="wlWriterEditableSmartContent">
<pre class="brush: text;">===============================================================================
                         Server Configuration
===============================================================================

1) Domain/Workgroup:                    Domain:  MCGEOWN.LOCAL
2) Computer Name:                       ServerCore2008
3) Add Local Administrator
4) Configure Remote Management

5) Windows Update Settings:             Manual
6) Download and Install Updates
7) Remote Desktop:                      Disabled

8) Network Settings
9) Date and Time

10) Log Off User
11) Restart Server
12) Shut Down Server
13) Exit to Command Line

Enter number to select an option: 5

Windows Update currently set to: Manual
Select (A)utomatic or (M)anual updates: A

Enabling Automatic updates...
</pre>
</div>
<p>The second method is the more command-line, scripting method. This sets it to download automatically and install at 3am every day (“/au 1” disables, “/au /v” shows current value):</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:d3b3b8e3-402b-46cd-85f8-d267bcf39643" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Cscript c:\windows\system32\scregedit.wsf /au 4</pre>
</div>
<p>&#160;</p>
<h2>Enabling Remote Management</h2>
</p>
</p>
</p>
<p>Similarly to Windows Updates, remote management can be configured via sconfig.cmd or command line. Here’s how:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:119649da-44a9-40a6-b707-8a8fee21c752" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Enter number to select an option: 4
--------------------------------
  Configure Remote Management
--------------------------------

1) Allow MMC Remote Management
2) Enable Windows PowerShell
3) Allow Server Manager Remote Management
4) Show Windows Firewall settings

5) Return to main menu

Enter selection: 1

Enabling MMC firewall exceptions and Virtual Disk Service...

Enter selection: 2

Enabling Windows PowerShell...
Setting Windows PowerShell execution policy to remotesigned...

[Server requests a reboot here - you can't enable Server Manager until it's done]

Enter selection: 3

Setting Windows PowerShell execution policy to remotesigned...
Enabling Server Manager cmdlets...

Configuring Remote Server Manager settings...</pre>
</div>
<p>&#160;</p>
<p>If you need to do this via the command line, it happens like this…</p>
<p>Enable WinRM:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:546b0340-ceb4-458a-8ed3-8c2c560a09c4" class="wlWriterEditableSmartContent">
<pre class="brush: text;">C:\Users\Administrator&gt; winrm quickconfig
WinRM is not set up to allow remote access to this machine for management.
The following changes must be made:
Create a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine.
Make these changes [y/n]? y
WinRM has been updated for remote management.
Created a WinRM listener on HTTP://* to accept WS-Man requests to any IP on this machine.</pre>
</div>
<p>Fire up PowerShell (powershell.exe) and set the execution policy to RemoteSigned</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:56b927c5-2bf8-4669-97d0-7a11bc943372" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Set-ExecutionPolicy RemoteSigned</pre>
</div>
<p>Then enable the Remote Administration rules on the firewall:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b14da1d6-86ae-40ac-9d91-4350fa8d3f41" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netsh advfirewall firewall set rule group="Remote Administration" new enable=yes</pre>
</div>
<p>To configure management by Remote Desktop, you can run the now-familiar sconfig.cmd and select option 7, or you can issue the following commands:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:1b9d9dab-dc56-410d-9a99-6db8988b72c3" class="wlWriterEditableSmartContent">
<pre class="brush: text;">cscript c:\windows\system32\scregedit.wsf /ar 0

netsh advfirewall firewall set rule group="Remote Desktop" new enable=yes</pre>
</div>
</p>
</p>
<p>Bear in mind that your RDP session will need TLS authentication and will not give you a desktop or GUI, just the command line interface. If you need to disable TLS for older clients (e.g. XP) you have to disable it with the following command:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:8e21a344-4a75-4186-97f0-c28fe7a3c6e6" class="wlWriterEditableSmartContent">
<pre class="brush: text;">cscript C:\Windows\System32\Scregedit.wsf /cs 0</pre>
</div>
<h2>Can you manage?</h2>
<p>With all those steps completed, you should be able to connect to your server with Remote Server Administration Tools on any Server 2008 or Windows 7 computer.</p>
<p>This is my Windows 7 PC connected via “Server Manager”<a href="/wp-content/uploads/image_37.png"><img class="colorbox-18"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_37.png" width="244" height="201" /></a> </p>
<p>To connect via WinRS (Windows Remote Shell) and execute remote commands, use:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:af831422-35dc-429f-9b10-f3e8ae7fcbdb" class="wlWriterEditableSmartContent">
<pre class="brush: text;">winrs -r:&lt;server name&gt; &lt;command&gt;</pre>
</div>
<p>e.g:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:c756fc51-46d5-4c75-a546-e4a84ea0da27" class="wlWriterEditableSmartContent">
<pre class="brush: text;">winrs –r:&lt;Server Name&gt; cmd</pre>
</div>
</p>
<p>Allows me access to the command shell on that server.</p>
<p>Finally, this is what RDP to the same server looks like:</p>
<p><a href="/wp-content/uploads/image_38.png"><img class="colorbox-18"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_38.png" width="244" height="146" /></a> </p>
<p>Hopefully that gives you a few options for managing your Windows Server 2008 Core machine!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-management-tasks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Configuring Server 2008 R2 Core Series: Network Settings</title>
		<link>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-network-settings/</link>
		<comments>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-network-settings/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 14:22:15 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/24/Configuring-Server-2008-R2-Core-Series-Network-Settings.aspx</guid>
		<description><![CDATA[So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so [...]]]></description>
				<content:encoded><![CDATA[<p>So, you’ve installed a new server with Server 2008 R2 Core – what next? Logging on, you’re presented with a shiny command prompt, you can run notepad or regedit…but aside from that, where do you go from there? In the next few series of posts I’ll hopefully point out the basics, and some not so basics!</p>
<h2>Using the Server Configuration Tool</h2>
<p>The server configuration tool (sconfig.cmd) is provided in R2 for some of the basic setup tasks, so you can run that by issuing the “sconfig” command. Out of the box, it looks something like this:</p>
<p><a href="/wp-content/uploads/image_33.png"><img class="colorbox-19"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_33.png" width="244" height="123" /></a> </p>
<p>As you can see, this interactive tool will step you through configuring the network settings (Option 8), Computer Name (Option 2) or Domain/Workgroup (Option 1).</p>
<p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:aa824d5e-5e6f-4854-9267-ae1e95179760" class="wlWriterEditableSmartContent">
<pre class="brush: text;collapse:true;">Enter number to select an option: 8

--------------------------------
    Network settings
--------------------------------

Available Network Adapters

Index#  IP address      Description

  0     192.168.8.117   Intel(R) PRO/1000 MT Network Connection

Select Network Adapter Index# (Blank=Cancel):  0

--------------------------------
    Network Adapter Settings
--------------------------------

NIC Index               0
Description             Intel(R) PRO/1000 MT Network Connection
IP Address              192.168.8.117
Subnet Mask             255.255.255.0
DHCP enabled            True
Default Gateway         192.168.8.1
Preferred DNS Server    192.168.8.5
Alternate DNS Server    192.168.8.22

1) Set Network Adapter IP Address
2) Set DNS Servers
3) Clear DNS Server Settings
4) Return to Main Menu

Select option:  1

Select (D)HCP, (S)tatic IP (Blank=Cancel): S
Set Static IP
Enter static IP address: 192.168.8.220
Enter subnet mask (Blank = Default 255.255.255.0):
Enter default gateway: 192.168.8.1
Setting NIC to static IP...

--------------------------------
    Network Adapter Settings
--------------------------------

NIC Index               0
Description             Intel(R) PRO/1000 MT Network Connection
IP Address              192.168.8.220
Subnet Mask             255.255.255.0
DHCP enabled            False
Default Gateway         192.168.8.1
Preferred DNS Server
Alternate DNS Server

1) Set Network Adapter IP Address
2) Set DNS Servers
3) Clear DNS Server Settings
4) Return to Main Menu

Select option:  2
DNS Servers

Enter new preferred DNS server (Blank=Cancel): 192.168.8.22
Enter alternate DNS server (Blank = none): 192.168.8.5
Alternate DNS server set.

--------------------------------
    Network Adapter Settings
--------------------------------

NIC Index               0
Description             Intel(R) PRO/1000 MT Network Connection
IP Address              192.168.8.220
Subnet Mask             255.255.255.0
DHCP enabled            False
Default Gateway         192.168.8.1
Preferred DNS Server    192.168.8.22
Alternate DNS Server    192.168.8.5

1) Set Network Adapter IP Address
2) Set DNS Servers
3) Clear DNS Server Settings
4) Return to Main Menu


Select option:  4</pre>
</div>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:0ec8269a-d805-43a1-8f12-96f49b6e5957" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Enter number to select an option: 2

Computer Name

Enter new computer name (Blank=Cancel): SERVERCORE2008
Changing Computer name...</pre>
</div>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:57ab43c8-6ad5-4bb5-9813-3da0b294be5a" class="wlWriterEditableSmartContent">
<pre class="brush: text;">Enter number to select an option: 1

Change Domain/Workgroup Membership

Join (D)omain or (W)orkgroup? (Blank=Cancel) D

Join Domain
Name of domain to join:  MCGEOWN.LOCAL
Specify an authorized domain\user:  MCGEOWN\sam.mcgeown

Joining MCGEOWN.LOCAL...

Enter the password of the authorized user:</pre>
</div>
<p>&#160;</p>
<h2>Command Line Configuration with Netsh/Netdom</h2>
<p>There’s also a manual method (e.g. for a scripted installation and config) using Netsh and Netdom commands that most Windows admins will be familiar with.</p>
<p>List the interfaces (network adaptors):</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:14841ffe-281d-433d-9c24-bc22681a8c4b" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netsh interface ipv4 show interfaces</pre>
</div>
<p>Identify the name of the interface you want to assign an IP for and configure:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:84ef511a-df25-4c0f-8098-bdc127c5fdb7" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netsh interface ipv4 set address name="&lt;Interface Name&gt;" source=static address=&lt;IP Address&gt; mask=&lt;Subnet Mask&gt; gateway=&lt;Gateway&gt;</pre>
</div>
<p>&#160;</p>
<p><a href="/wp-content/uploads/image_34.png"><img class="colorbox-19"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_34.png" width="244" height="76" /></a></p>
<p>Configure DNS servers:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b9dc02d9-4636-4942-902f-ae37664386f6" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netsh interface ipv4 add dnsservers "&lt;Interface Name&gt;" &lt;DNS Server IP&gt; index=&lt;number&gt;
</pre>
</div>
<p>&#160;</p>
<p><a href="/wp-content/uploads/image_35.png"><img class="colorbox-19"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_35.png" width="244" height="192" /></a> </p>
<p>If you want to add more than one IP address for your server, try:</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:7e02de92-c2ac-4943-a028-f9a235299eae" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netsh interface ipv4 add address name="&lt;Interface Name&gt;" address=&lt;Additional IP&gt; mask=&lt;Subnet Mask&gt;</pre>
</div>
<p>&#160;</p>
<p>To change your computer’s name, you can use (leave off the /reboot if you don’t want to yet):</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:4f11ddff-d621-4df4-abe0-7a784ff901d7" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netdom renamecomputer /newname:&lt;New Name&gt; /reboot</pre>
</div>
<p>&#160;</p>
<p>To join your computer to a domain, you can use (leave off the /reboot if you don’t want to yet):</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:9df415ed-eb56-4b3d-aa58-ae3cd5007616" class="wlWriterEditableSmartContent">
<pre class="brush: text;">netdom /join /domain:&lt;domain&gt; /UserO:&lt;domain\user to join with&gt; /PasswordO:&lt;Password&gt; /reboot</pre>
</div>
<p>&#160;</p>
<h2>Not so different after all?</h2>
<p>At the end of all that, you can see that configuring basic network settings with sconfig.cmd is pretty straight forward, and configuring basic network settings for scripts, or a more command-line based admin, is also quite do-able.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:a22cf512-fd26-4716-8e14-96a39bba0ba8" class="wlWriterEditableSmartContent">
<pre class="brush: text;">
C:\Users\Administrator&gt;ipconfig /all

Windows IP Configuration

   Host Name . . . . . . . . . . . . : ServerCore2008
   Primary Dns Suffix  . . . . . . . : MCGEOWN.LOCAL
   Node Type . . . . . . . . . . . . : Hybrid
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
   DNS Suffix Search List. . . . . . : MCGEOWN.LOCAL

Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection
   Physical Address. . . . . . . . . : 00-50-56-AB-28-8B
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   Link-local IPv6 Address . . . . . : fe80::3c4d:cdd1:5a4a:fbff%3(Preferred)
   IPv4 Address. . . . . . . . . . . : 192.168.8.220(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   IPv4 Address. . . . . . . . . . . : 192.168.8.221(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   IPv4 Address. . . . . . . . . . . : 192.168.8.222(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   IPv4 Address. . . . . . . . . . . : 192.168.8.223(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.8.1
   DHCPv6 IAID . . . . . . . . . . . : 50352214
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-13-3B-B4-6C-00-50-56-AB-28-8B

   DNS Servers . . . . . . . . . . . : 192.168.8.5
                                       192.168.8.22
   NetBIOS over Tcpip. . . . . . . . : Enabled

C:\Users\Administrator&gt;</pre>
</div>
<p><a href="http://technet.microsoft.com/en-us/library/cc754516(WS.10).aspx" target="_blank">Netsh command reference</a> | <a href="http://technet.microsoft.com/en-us/library/cc772217(WS.10).aspx" target="_blank">Netdom command reference</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/configuring-server-2008-r2-core-series-network-settings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>MCITP: Server Administrator and MCITP: Enterprise Administrator</title>
		<link>http://www.definit.co.uk/2010/03/mcitp-server-administrator-and-mcitp-enterprise-administrator/</link>
		<comments>http://www.definit.co.uk/2010/03/mcitp-server-administrator-and-mcitp-enterprise-administrator/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 10:35:16 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exams]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2008]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Qualifications]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/23/MCITP-Server-Administrator-and-MCITP-Enterprise-Administrator.aspx</guid>
		<description><![CDATA[I’m pleased to say that yesterday I took and passed two Microsoft Certified IT Professional exams, the Server Administrator (70-646) and the Enterprise Administrator (70-647). Hopefully I can take a bit of a break from study and write a few more technical posts here now!]]></description>
				<content:encoded><![CDATA[<p>I’m pleased to say that yesterday I took and passed two Microsoft Certified IT Professional exams, the Server Administrator (70-646) and the Enterprise Administrator (70-647). Hopefully I can take a bit of a break from study and write a few more technical posts here now!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/mcitp-server-administrator-and-mcitp-enterprise-administrator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>70-649: TS: Upgrading Your MCSE on Windows Server 2003 to Windows Server 2008, Technology Specialist</title>
		<link>http://www.definit.co.uk/2010/03/70-649-ts-upgrading-your-mcse-on-windows-server-2003-to-windows-server-2008-technology-specialist/</link>
		<comments>http://www.definit.co.uk/2010/03/70-649-ts-upgrading-your-mcse-on-windows-server-2003-to-windows-server-2008-technology-specialist/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 10:14:04 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Exams]]></category>
		<category><![CDATA[Windows Server 2008]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Qualifications]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/03/08/70-649-TS-Upgrading-Your-MCSE-on-Windows-Server-2003-to-Windows-Server-2008-Technology-Specialist.aspx</guid>
		<description><![CDATA[I’m pleased to announce that I’ve passed the 70-649, which gives me the following MCTS certifications: Windows Server 2008 Active Directory, Configuration Windows Server 2008 Applications Infrastructure, Configuration Windows Server 2008 Network Infrastructure, Configuration Next I’ll be looking at the 70-647 to get the full MCITP: Enterprise Administrator (I already took the 70-620 exam for [...]]]></description>
				<content:encoded><![CDATA[<p>I’m pleased to announce that I’ve passed the 70-649, which gives me the following MCTS certifications:</p>
<p><i>Windows Server 2008 Active Directory, Configuration</i></p>
<p><i>Windows Server 2008 Applications Infrastructure, Configuration</i></p>
<p><i>Windows Server 2008 Network Infrastructure, Configuration</i></p>
<p>Next I’ll be looking at the 70-647 to get the full MCITP: Enterprise Administrator (I already took the 70-620 exam for my MCSE).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/03/70-649-ts-upgrading-your-mcse-on-windows-server-2003-to-windows-server-2008-technology-specialist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Trace cables the easy way with Cisco CDP on Windows</title>
		<link>http://www.definit.co.uk/2010/02/trace-cables-the-easy-way-with-cisco-cdp-on-windows/</link>
		<comments>http://www.definit.co.uk/2010/02/trace-cables-the-easy-way-with-cisco-cdp-on-windows/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 11:58:24 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Vista]]></category>
		<category><![CDATA[Windows Vista SP1]]></category>
		<category><![CDATA[Windows XP]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/02/26/Trace-cables-the-easy-way-with-Cisco-CDP-on-Windows.aspx</guid>
		<description><![CDATA[No matter how good your network diagrams are, sometimes you need to verify the port your server/desktop is in. Cisco Discovery Protocol is a great tool for network admins when you need to quickly map routers and switches, and if you’ve got an ESX server connected you’ll see that it picks up CDP info too [...]]]></description>
				<content:encoded><![CDATA[<p>No matter how good your network diagrams are, sometimes you need to verify the port your server/desktop is in. Cisco Discovery Protocol is a great tool for network admins when you need to quickly map routers and switches, and if you’ve got an ESX server connected you’ll see that it picks up CDP info too – but the vast majority of my managed systems are Windows.</p>
<p>Here’s how to use <a href="http://www.microolap.com/products/network/tcpdump/download/" target="_blank">TCPDUMP by Micro Olap</a> to extend that functionality to your Windows boxes.</p>
<p>Firstly you need to find the interface number of the network adaptor you are trying to find CDP data for.&#160; Use this command:</p>
<p>tcpdump -D</p>
<p>Which gives you a list of the interfaces on the computer:</p>
<p><a href="/wp-content/uploads/clip_image002.jpg"><img class="colorbox-22"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="clip_image002" border="0" alt="clip_image002" src="/wp-content/uploads/clip_image002_thumb.jpg" width="244" height="162" /></a></p>
<p>My actual NIC is the third one in the list, so I can run the command:</p>
<p>tcpdump -i 3 -nn -v -s 1500 -c 1 ether[20:2] == 0x2000</p>
<p>-i <i>n</i> [interface and the number in the list, for me 3]</p>
<p>-nn [don’t resolve DNS, speeds things up]</p>
<p>-v [verbose mode, otherwise we won’t see all the packet details]</p>
<p>-s 1500 [set the maximum packet size to capture, the MTU is 1500 by default so it will capture the entire packet]</p>
<p>-c 1&#160; [Capture one packet only, since we only want the CDP packet and filter using the header]</p>
<p>ether[20:2] == 0x2000 [Check the Ethernet header packet ID for the hex value 0x2000 – CDP protocol]</p>
<p><a href="/wp-content/uploads/image_32.png"><img class="colorbox-22"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_32.png" width="244" height="207" /></a> </p>
<p>Some output is omitted, but you can see that the name of the switch and the port are both in there.</p>
<p>Easier than tracing a cable!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/02/trace-cables-the-easy-way-with-cisco-cdp-on-windows/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>How to enable hot memory add on vSphere and ESX 4.0 after upgrade</title>
		<link>http://www.definit.co.uk/2010/02/how-to-enable-hot-memory-add-on-vsphere-and-esx-4-0-after-upgrade/</link>
		<comments>http://www.definit.co.uk/2010/02/how-to-enable-hot-memory-add-on-vsphere-and-esx-4-0-after-upgrade/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 12:29:44 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware ESX 4.0]]></category>
		<category><![CDATA[VMware vCenter 4.0]]></category>
		<category><![CDATA[VMware vSphere 4.0]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/02/16/How-to-enable-hot-memory-add-on-vSphere-and-ESX-40-after-upgrade.aspx</guid>
		<description><![CDATA[So you’ve upgraded your ESX 3.x servers to 4.0 and you’ve upgraded your vCenter server, now you want to access the shiny new hot-add feature to upgrade some running server’s memory. Except you can’t, the feature is no-where to be seen. Something to bear in mind though, your OS needs to support hot-add, so you’ll [...]]]></description>
				<content:encoded><![CDATA[<p>So you’ve upgraded your ESX 3.x servers to 4.0 and you’ve upgraded your vCenter server, now you want to access the shiny new hot-add feature to upgrade some running server’s memory. Except you can’t, the feature is no-where to be seen. Something to bear in mind though, your OS needs to support hot-add, so you’ll need a Windows Enterprise or Datacenter edition.</p>
<p>Here’s how to enable it:</p>
<p>Upgrade the VM’s tools, if you haven’t already. This requires a re-boot, but don’t reboot, shut the server down down, otherwise you’ll require another reboot to add the feature. The tools can be upgraded from the system tray icon.<a href="/wp-content/uploads/image_27.png"><img class="colorbox-23"  style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="image" border="0" alt="image" align="left" src="/wp-content/uploads/image_thumb_27.png" width="121" height="42" /></a> </p>
<p>&#160;</p>
<p>&#160;</p>
<p>Once the VM is shut down, upgrade the Virtual Hardware (again, assuming you haven’t already!)<a href="/wp-content/uploads/image_28.png"><img class="colorbox-23"  style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="image" border="0" alt="image" align="left" src="/wp-content/uploads/image_thumb_28.png" width="244" height="178" /></a> </p>
</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>Once your virtual machine is fully up to date with VMTools and Hardware, you can edit the Advanced options (again, while the machine is shut down) and enable the feature.<a href="/wp-content/uploads/image_29.png"><img class="colorbox-23"  style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="image" border="0" alt="image" align="left" src="/wp-content/uploads/image_thumb_29.png" width="244" height="216" /></a> </p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>&#160;</p>
<p>Now with the server booted, you can add Memory and CPU without the need for a reboot. In my tests changing the Memory from 1GB to 2GB caused a single dropped ping, and changing from 1 vCPU to 2 vCPUs caused a ping to drop.</p>
<p><a href="/wp-content/uploads/image_30.png"><img class="colorbox-23"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_30.png" width="244" height="216" /></a> <a href="/wp-content/uploads/image_31.png"><img class="colorbox-23"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_31.png" width="244" height="215" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/02/how-to-enable-hot-memory-add-on-vsphere-and-esx-4-0-after-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Upgrading Server 2008 RTM-SP2 to Server 2008 R2</title>
		<link>http://www.definit.co.uk/2010/02/upgrading-server-2008-rtm-sp2-to-server-2008-r2/</link>
		<comments>http://www.definit.co.uk/2010/02/upgrading-server-2008-rtm-sp2-to-server-2008-r2/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 15:06:38 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/02/11/Upgrading-Server-2008-RTM-SP2-to-Server-2008-R2.aspx</guid>
		<description><![CDATA[If you read the Microsoft blurb for R2, the first thing you notice is that Server 2008 R2 is 64-bit only(!). It seems Microsoft are forcibly removing 32-bit server hardware from the data centre. I’ve not seen a decent upgrade guide online so far, so here’s my process. I’m going to be upgrading a Server [...]]]></description>
				<content:encoded><![CDATA[<p>If you read the Microsoft blurb for R2, the first thing you notice is that Server 2008 R2 is 64-bit only(!). It seems Microsoft are forcibly removing 32-bit server hardware from the data centre. I’ve not seen a decent upgrade guide online so far, so here’s my process.</p>
<p>I’m going to be upgrading a Server 2008 R2 x64 SP2 Standard Edition virtual server to R2. To see what editions can and can’t be upgraded, check out this <a href="http://technet.microsoft.com/en-us/library/dd979563(WS.10).aspx" target="_blank">Technet Article</a>, but it’s safe to say that you can’t upgrade across architectures (32-bit to 64-bit) and you can’t downgrade SKUs (Enterprise to Standard).</p>
<p>The first step, as ever, is always to back up your server, if the upgrade goes wrong, you can always restore and try again. You have been warned!</p>
<p>So, without further ado, slip in your R2 DVD and begin…</p>
<p><a href="/wp-content/uploads/image_18.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_18.png" width="244" height="181" /></a> Install</p>
<p><a href="/wp-content/uploads/image_19.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_19.png" width="244" height="184" /></a> Update</p>
<p><a href="/wp-content/uploads/image_20.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_20.png" width="244" height="184" /></a> Select your target SKU</p>
<p><a href="/wp-content/uploads/image_21.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_21.png" width="244" height="184" /></a> Select “upgrade” (obviously <img src='http://www.definit.co.uk/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley colorbox-24' /> </p>
<p><a href="/wp-content/uploads/image_22.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_22.png" width="244" height="184" /></a> Check your upgrade report (which is saved as HTML on your desktop. The first time I ran this it said that I didn’t have enough free space – it required a whopping 15GB, which makes me think that this is no Server 2003 –&gt; R2 upgrade, it’s the full blown OS install. Assuming everything checks out, go ahead.</p>
<p><a href="/wp-content/uploads/image_23.png"><img class="colorbox-24"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_23.png" width="244" height="183" /></a> Sit back and grab a cup of coffee. After a while, you’ll reboot</p>
<p>&#160;<a href="/wp-content/uploads/image_24.png"><img class="colorbox-24"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_24.png" width="244" height="184" /></a> and the upgrade begins in earnest. Once the process is completed, and another reboot has happened, you’ll be upgraded to R2. You’ll need to activate it with your R2 key.</p>
</p>
<p><a href="/wp-content/uploads/image_25.png"><img class="colorbox-24"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_25.png" width="244" height="207" /></a> Once you’re activated, update your server using Microsoft update or your patching method.</p>
<p><a href="/wp-content/uploads/image_26.png"><img class="colorbox-24"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="/wp-content/uploads/image_thumb_26.png" width="244" height="184" /></a> Et voila!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/02/upgrading-server-2008-rtm-sp2-to-server-2008-r2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>CCNA Qualified</title>
		<link>http://www.definit.co.uk/2010/02/ccna-qualified/</link>
		<comments>http://www.definit.co.uk/2010/02/ccna-qualified/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 15:56:23 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Qualifications]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/02/08/CCNA-Qualified.aspx</guid>
		<description><![CDATA[After some pretty heavy investment in terms of time and money, I’ve passed my ICND2 exam and am now qualified as a Cisco Certified Network Associate (anyone else find it odd that you’re not even considered a professional by Cisco at this level?!) I do consider the Cisco qualifications as significantly more valuable than the [...]]]></description>
				<content:encoded><![CDATA[<p><a href="/wp-content/uploads/ccna_med_1.gif"><img class="colorbox-25"  style="margin: 0px 10px 0px 0px; display: inline; border: 0px;" title="ccna_med" src="/wp-content/uploads/ccna_med_thumb.gif" border="0" alt="ccna_med" width="150" height="150" align="left" /></a>After some pretty heavy investment in terms of time and money, I’ve passed my ICND2 exam and am now qualified as a Cisco Certified Network Associate (anyone else find it odd that you’re not even considered a professional by Cisco at this level?!)</p>
<p>I do consider the Cisco qualifications as significantly more valuable than the others that I hold, simply because of the difficulty of the exams. I do find them “honest” in that they’re not trick questions, and you don’t need a technique to pass – just in depth knowledge.</p>
<p>Anyway, I think I’ll take few weeks before I look to my next study/exam.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/02/ccna-qualified/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>BlogEngine.Net 1.6 is released – and I’ve upgraded! Also migrated to IIS 7</title>
		<link>http://www.definit.co.uk/2010/02/blogengine-net-1-6-is-released-%e2%80%93-and-i%e2%80%99ve-upgraded-also-migrated-to-iis-7/</link>
		<comments>http://www.definit.co.uk/2010/02/blogengine-net-1-6-is-released-%e2%80%93-and-i%e2%80%99ve-upgraded-also-migrated-to-iis-7/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 14:45:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[blogengine]]></category>
		<category><![CDATA[IIS]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/02/04/BlogEngineNet-16-is-released-e28093-and-Ie28099ve-upgraded!-Also-migrated-to-IIS-7.aspx</guid>
		<description><![CDATA[I&#8217;ve just upgraded to BE.Net 1.6, and I thought I&#8217;d migrate to GoDaddy&#8217;s IIS 7 servers at the same time. The theory is that this would be a an easy migration and I&#8217;d have the weekend to iron out any bugs. Not so. After testing on my local IIS 7 and working perfectly, I uploaded [...]]]></description>
				<content:encoded><![CDATA[<p>I&rsquo;ve just upgraded to BE.Net 1.6, and I thought I&rsquo;d migrate to GoDaddy&rsquo;s IIS 7 servers at the same time. The theory is that this would be a an easy migration and I&rsquo;d have the weekend to iron out any bugs. Not so.</p>
<p>After testing on my local IIS 7 and working perfectly, I uploaded the updates to my live blog and hit the &ldquo;Migrate to IIS 7&rdquo; button, which promises it will be completed in 24h. I received the &ldquo;update your DNS&rdquo; email, and duly updated my A records to the new server, and the transfer seems to be ok &ndash; aside from the fact that viewing any specific post causes an error &ndash; I&rsquo;m guessing with the permissions of the App_Data folder. The catch being that I can&rsquo;t access my IIS settings until GoDaddy have completed their 24h migration process.</p>
<p>It&rsquo;s now been more than 72 hours since I kicked of the migration and still I cannot access and fix the IIS permissions issue which is dogging my blog. I&rsquo;ve emailed twice and am still waiting for some resolution. Perhaps I won&rsquo;t be renewing this year?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/02/blogengine-net-1-6-is-released-%e2%80%93-and-i%e2%80%99ve-upgraded-also-migrated-to-iis-7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Creating a Windows Server 2008 Microsoft Cluster Service SQL Active/Passive Cluster on a single ESXi 4.0 Server</title>
		<link>http://www.definit.co.uk/2010/01/creating-a-windows-server-2008-microsoft-cluster-service-sql-activepassive-cluster-on-a-single-esxi-4-0-server/</link>
		<comments>http://www.definit.co.uk/2010/01/creating-a-windows-server-2008-microsoft-cluster-service-sql-activepassive-cluster-on-a-single-esxi-4-0-server/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 14:52:01 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Microsoft Cluster Services]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[SQL Server 2008]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2010/01/27/Creating-a-Windows-Server-2008-Microsoft-Cluster-Service-SQL-ActivePassive-Cluster-on-a-single-ESXi-40-Server.aspx</guid>
		<description><![CDATA[Configuring the Virtual Environment and Virtual Machines Note – this configuration will work for ESXi 4 upwards due to the server 2008 MSCS requirement for persistent SCSI-3 reservations. The first step is to create a new vSwitch for the host-only cluster heartbeat network, don’t assign any network adaptors to the switch as it’s going to [...]]]></description>
				<content:encoded><![CDATA[<h2>Configuring the Virtual Environment and Virtual Machines</h2>
<p>Note – this configuration will work for ESXi 4 upwards due to the server 2008 MSCS requirement for persistent SCSI-3 reservations.</p>
<p>The first step is to create a new vSwitch for the host-only cluster heartbeat network, don’t assign any network adaptors to the switch as it’s going to be local only.</p>
<p>Create a new virtual machine with a single hard disk. For the purposes of this test, I’ve assigned 2 vProcessors, 1GB RAM, 30GB drive for the OS, 1 vNIC in the default vSwitch0.</p>
<p>Add a second vNIC and assign it to the cluster network vSwitch created in step 1.</p>
<p>Install Windows Server 2008 R2 Enterprise and all the Windows Updates, for the example I’ve named it <em>SQLCluster01</em>.</p>
<p>Clone the server and rename the new one to <em>SQLCluster02</em>. In ESXi you can’t clone, so shut down the first server, copy the files to a new folder and right click the VMX file to add it to the inventory. When you boot it the first time VMware will ask if it’s been moved or copied – select copied.</p>
<p>Create a disk for use as the Quorom, this needs to be shared and since I’m using ESXi with local storage only it must be “eagerzeroedthick”. To do this I have to use the unsupported mode in ESXi (Alt+F1, type unsupported and then your root password) and use the vmkfstools command to create it (vmkfstools –c &lt;size&gt; –d eagerzeroedthick –a lsilogic /vmfs/volumes/&lt;datastore&gt;/&lt;folder&gt;/&lt;disk&gt;.vmdk)</p>
<p>Add the new disk to <em>SQLCluster01</em> using a new SCSI virtual controller (different from the current controller, e.g. my first HD is on SCSI 0:1, the Quorum is on SCSI 1:0)</p>
<p>Check that the new SCSI controller is set to LSILogic (it is for Server 2008 by default) and set the SCSI Bus Sharing to Virtual.</p>
<p>Add the Quorum disk to the second virtual machine, using the same settings.</p>
<p>Edit the .vmx file for both servers, adding in the following lines (edit for your SCSI controller):</p>
<p><em>scsi1:0.mode = "independent-persistent"<br />
scsi1:0.shared = "TRUE"</em></p>
<p>Create a disk for some shared storage for the cluster too, it will be needed for the DTC application as well as the SQL server – in a production environment you may want to separate logs and data, but for my test, I’m just adding another two 10GB disks. Use the same process as for creating the Quorum disk.</p>
<p><span id="more-27"></span></p>
<h2>Configuring SQLCluster01 and SQLCluster02 for Microsoft Cluster Services</h2>
<p>Once the two VMs are booted, we need to do a number of things:</p>
<p><strong>Activate and format the Quorum disk</strong>. In SQLCluster01, open the disk management snap-in and activate the new Quorum disk, create a new partition and format it to NTFS. I mounted it at Q. In SQLCluster02, open the snap-in and activate the Quorum disk – it should pick up the partition and formatting automatically. I re-assigned the disk letter to Q.</p>
<p><a href="/wp-content/uploads/image.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb.png" border="0" alt="image" width="244" height="182" /></a></p>
<p><strong>Configure the Access Network</strong>. I’ve assigned a static IP within the servers range, 192.168.8.0/24 for both servers. They have full network connectivity.</p>
<p><strong>Configure the Heartbeat Network</strong>. I’ve assigned the IPs 10.0.0.1 and 10.0.0.2 on a /29 subnet to the Cluster Heartbeat Network Adaptors, and renamed it to Cluster Heartbeat just to keep it tidy.</p>
<p><a href="/wp-content/uploads/image_1.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_1.png" border="0" alt="image" width="244" height="209" /></a></p>
<p><strong>Join the domain</strong>. You can no longer use a workgroup for MSCS, so join the VMs to your domain.</p>
<p><strong>Create DNS records for the Cluster, Virtual-SQL and MSDTC</strong>. An A record is required for the cluster itself, the virtual SQL instance and the Distributed Transaction Coordinator. I created vm-cluster, vm-virtualsql and vm-msdtc each with their own IPs.</p>
<p><strong>Install Failover Clustering on both nodes</strong>. Launch the “Add Features” wizard and tick to install the Failover Clustering feature for each server (the server may require a restart).</p>
<p><strong>Configure the Cluster</strong>. Open the Failover Cluster Management console from Administrative Tools and run the “Validate a Configuration” wizard. Add both servers into the wizard and run all the defaults.</p>
<p><a href="/wp-content/uploads/image_2.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_2.png" border="0" alt="image" width="244" height="171" /></a></p>
<p><strong>Create the cluster. </strong>Run the “Create a Cluster…” wizard, select the servers as you did with the validation wizard, enter the cluster name and IP address that you created earlier (vm-cluster for me). Review the summary and create the cluster. The cluster service should automatically select the best disk for the quorum.</p>
<h2>Installing the Distributed Transaction Coordinator on the MSCS</h2>
<p>Open the Failover Cluster Management console and right click Services and Applications and select “Configure a service or application”. Select the DTC and click next.</p>
<p><a href="/wp-content/uploads/image_3.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_3.png" border="0" alt="image" width="244" height="170" /></a></p>
<p>Enter the DNS name you configured earlier for the DTC and the IP address you assigned and click next.</p>
<p><a href="/wp-content/uploads/image_4.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_4.png" border="0" alt="image" width="244" height="169" /></a></p>
<p>Select the shared storage you’ve assigned to the cluster, and click next.</p>
<p><a href="/wp-content/uploads/image_5.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_5.png" border="0" alt="image" width="244" height="169" /></a></p>
<p>Complete the wizard and then verify that the DTC is running by selecting it in the Services and Applications window – the Server Name, MSDTC and Drive should all be online.</p>
<p><a href="/wp-content/uploads/image_6.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_6.png" border="0" alt="image" width="244" height="176" /></a></p>
<h2>Installing SQL Server 2008 on a Windows Server 2008 cluster</h2>
<p>Assuming you updated the server earlier, you should already have the .Net Framework 3.5 SP1 which is a pre-requisite for SQL Server 2008. I’ll move on to the installation at this point, so open the installed and select a “New SQL Server failover cluster installation”.</p>
<p><a href="/wp-content/uploads/image_7.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_7.png" border="0" alt="image" width="244" height="103" /></a></p>
<p>Click through the wizard, enter key and license info and install the Setup Support Files. Check and resolve any issues in the setup support rules.</p>
<p><a href="/wp-content/uploads/image_8.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_8.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Select the features that you require</p>
<p><a href="/wp-content/uploads/image_9.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_9.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Configure the SQL Server Network Name as you created earlier in the DNS records. I’m installing the default instance of SQL.</p>
<p><a href="/wp-content/uploads/image_10.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_10.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Check the disk space requirements are OK and click next. Click next to create a new Cluster Resource Group for SQL.</p>
<p><a href="/wp-content/uploads/image_11.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_11.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Select the available cluster disk and click next.</p>
<p><a href="/wp-content/uploads/image_12.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_12.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Configure the network address you configured earlier for the SQL Cluster</p>
<p><a href="/wp-content/uploads/image_13.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_13.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>In the Cluster Security Policy dialog box, accept the default value of Use service SIDs (Microsoft’s recommended option). Configure your service accounts and collation, DB Engine Authentication and Data Directories. Again, for production you wouldn’t use the same disk for Logs, Data, TempDB etc, but this is just a test setup.</p>
<p><a href="/wp-content/uploads/image_14.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_14.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>After that, click through to your installation and complete.</p>
<p><a href="/wp-content/uploads/image_15.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_15.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>Verify all the resources required for the cluster application are available in the Failover Cluster Management console.</p>
<p><a href="/wp-content/uploads/image_16.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_16.png" border="0" alt="image" width="244" height="147" /></a></p>
<p>Once that’s all set up, it’s time to install the second cluster node. Run the SQL 2008 installer and select the “Add node to a SQL Server failover cluster” option. As before, go through the setup support rules, check the Cluster Node Configuration, configure the Service Accounts, step through the verifications and install the node.</p>
<p><a href="/wp-content/uploads/image_17.png"><img class="colorbox-27"  style="display: inline; border-width: 0px;" title="image" src="/wp-content/uploads/image_thumb_17.png" border="0" alt="image" width="244" height="184" /></a></p>
<p>If it all completed successfully, you now have a working Windows Server 2008 Cluster with an active/passive SQL 2008 database cluster, running on top of a single ESXi 4 Server. I tested connecting with SQL Manager to vm-virtualsql which works as expected. I also tested failing over between hosts with the Cluster console, again it worked as expected.</p>
<p>Thanks for reading and I hope this helps!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2010/01/creating-a-windows-server-2008-microsoft-cluster-service-sql-activepassive-cluster-on-a-single-esxi-4-0-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Syncing email, calendar and tasks over a laptop, desktop and iPhone</title>
		<link>http://www.definit.co.uk/2009/12/syncing-email-calendar-and-tasks-over-a-laptop-desktop-and-iphone/</link>
		<comments>http://www.definit.co.uk/2009/12/syncing-email-calendar-and-tasks-over-a-laptop-desktop-and-iphone/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 16:58:09 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[At home]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Exchange 2003]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[Outlook 2007]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/12/10/Syncing-email-calendar-and-tasks-over-a-laptop-desktop-and-iPhone.aspx</guid>
		<description><![CDATA[In the past, I would often say to my wife, “if it’s not in Outlook, it isn’t going to happen”. Increasingly it’s “if it’s not on my iPhone, it’s not going to happen”. The fact is that I can’t actually remember all the things that I need to do each day, I need reminding! I [...]]]></description>
				<content:encoded><![CDATA[<p>In the past, I would often say to my wife, “if it’s not in Outlook, it isn’t going to happen”. Increasingly it’s “if it’s not on my iPhone, it’s not going to happen”. The fact is that I can’t actually remember all the things that I need to do each day, I need reminding!</p>
<p>I spend perhaps 8 hours a day at my work PC, maybe 2 hours a day on my home laptop and my iPhone is with me pretty much 24/7 – all of which are both data sources, and data endpoints. They all remind me to do things. To add a bit more complication to the mix, some things are personal, some things are work related.</p>
<p>So, to summarise, I want email, calendaring and to-do/tasks on my desktop, laptop and iPhone, and I want to be able to add/edit/delete for any of them.</p>
<p>[more]</p>
<h2>Step 1 – Email</h2>
<p>My personal email is downloaded by <a href="http://mail.google.com/support/bin/answer.py?answer=21289" target="_blank">POP3 to Gmail</a> from my ISP’s (GoDaddy) email server. I use Outlook 2007 on both my Laptop and Desktop to connect via <a href="http://mail.google.com/support/bin/answer.py?hl=en&amp;answer=77689" target="_blank">IMAP to my Gmail account</a>. Both use my ISP’s SMTP server to send email. I also <a href="http://mail.google.com/support/bin/answer.py?hl=en&amp;answer=22370" target="_blank">configured Gmail to send via GoDaddy's SMTP server</a>, this allows me to send from my personal address rather than my Gmail address. Email is accessible from my iPhone via the Exchange server protocol (<a href="http://google.com/support/mobile/bin/topic.py?hl=en&amp;topic=14252" target="_blank">Gmail Sync</a>). Since all of these access email on the Gmail storage, when an email is deleted/moved/replied to on any platform, it stays up to date.</p>
<h2>Step 2 – Calendar</h2>
<p>Once again Google is the central repository for the data, using <a href="http://www.google.com/support/calendar/bin/answer.py?hl=en&amp;answer=89955" target="_blank">Google Calendar Sync</a> to synchronise my calendar on both my Laptop and Desktop Outlook. On my Desktop, Google Calendar Sync updates the corporate Exchange account. Again the iPhone calendar syncs over the <a href="http://google.com/support/mobile/bin/topic.py?hl=en&amp;topic=14252" target="_blank">Gmail Sync/Exchange</a> protocol to Google directly.</p>
<h2>Step 3 – To-do/Tasks</h2>
<p>This one is the most difficult and I’ve not yet resolved it fully. Google do have a Tasks app, but it doesn’t have a sync tool. My corporate Exchange server has tasks, but I have no way of syncing it with my Laptop. At the moment I am using the Exchange tasks which is obviously sync’d with my Desktop Outlook. I’m also using a free app called <a href="http://web.me.com/rerlsoft/Rerlsoft/iMLite.html" target="_blank">IMLite</a> on the iPhone to access the tasks on the Exchange, but it’s read only.</p>
<h2>It’s easier to view a diagram!</h2>
<p><a href="/wp-content/uploads/SMEmailSetup.png"><img class="colorbox-28"  style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="SMEmailSetup" border="0" alt="SMEmailSetup" src="/wp-content/uploads/SMEmailSetup_thumb.png" width="244" height="192" /></a> </p>
<h2>Other things to note</h2>
<ul>
<li>All the connections are over SSL, so they’re secure – that’s really important because it’s personal information and you don’t need just anyone getting it! </li>
<li>I chose Gmail over other online hosts because of the storage (over 7.4GB and growing), because it hosts my calendar and tasks, and is easier to set up to SEND email from my SMTP server. </li>
<li>I know Gmail is ad supported – but if you access via IMAP/Exchange protocols, you’ll never see them. </li>
<li>I’d like to be using Google tasks and sync them with my Outlook, but as yet I’ve not found a way to do this (c’mon Google, release the app!) </li>
<li>My iPhone is sync’d to my Laptop via iTunes, but only for media and contacts. </li>
</ul>
<p>Finally, I’m looking at my options for photo sync (or online storage) but it’s got to be high res, I’m also looking at document sync, but I’m pretty sure Google has that nailed too. I much prefer having it all under one roof.</p>
<p>Any comments, ideas, suggestions, drop a comment below!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/12/syncing-email-calendar-and-tasks-over-a-laptop-desktop-and-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Cisco Qualified!</title>
		<link>http://www.definit.co.uk/2009/12/cisco-qualified/</link>
		<comments>http://www.definit.co.uk/2009/12/cisco-qualified/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 10:46:59 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Exams]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Qualifications]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/12/07/Cisco-Qualified!.aspx</guid>
		<description><![CDATA[As is normally the case when I’m studying, I haven’t had time to post much on here lately. I’ve been studying to pass the ICND1 exam (snappily titled “Interconnecting Cisco Network Devices Part 1”) I’m really pleased to say that neglecting this site paid off, or rather the study did – I passed with a [...]]]></description>
				<content:encoded><![CDATA[<p>As is normally the case when I’m studying, I haven’t had time to post much on here lately. I’ve been studying to pass the ICND1 exam (snappily titled “Interconnecting Cisco Network Devices Part 1”)</p>
<p>I’m really pleased to say that neglecting this site paid off, or rather the study did – I passed with a score of 930! It was a LOT harder than I had expected, I thought I’d walk out after 20m! It does now mean that I am CCENT. I’ll be taking the ICND2 exam early in the new year which will move me up to CCNA.</p>
<p>Also in the exams category, I’m taking a beta exam “PRO: Design &amp; Deploy Messaging Solutions with Microsoft Exchange Server 2010”. Another snappy title and another bundle of fun!</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/12/cisco-qualified/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Migrating VMware Virtual Infrastructure 3 HA Cluster to vSphere 4 – Stage 1: vCenter Upgrade</title>
		<link>http://www.definit.co.uk/2009/11/migrating-vmware-virtual-infrastructure-3-ha-cluster-to-vsphere-4-%e2%80%93-stage-1-vcenter-upgrade/</link>
		<comments>http://www.definit.co.uk/2009/11/migrating-vmware-virtual-infrastructure-3-ha-cluster-to-vsphere-4-%e2%80%93-stage-1-vcenter-upgrade/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 17:50:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware Converter]]></category>
		<category><![CDATA[VMware Update Manager]]></category>
		<category><![CDATA[VMware vCenter 4.0]]></category>
		<category><![CDATA[VMware vSphere 4.0]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/11/11/Migrating-VMware-Virtual-Infrastructure-3-HA-Cluster-to-vSphere-4-e28093-Stage-1-vCenter-Upgrade.aspx</guid>
		<description><![CDATA[I'm currently in the process of migrating a 2-host High Availability cluster of ESX 3.5u4 servers to vSphere 4. This is going to come in 3 distinct stages: Stage 1 is to upgrade VirtualCenter Server 2.5 to vCenter 4, which I am going to cover today. Stage 2 is to upgrade each host, and will [...]]]></description>
				<content:encoded><![CDATA[<p>I'm currently in the process of migrating a 2-host High Availability cluster of ESX 3.5u4 servers to vSphere 4. This is going to come in 3 distinct stages: Stage 1 is to upgrade VirtualCenter Server 2.5 to vCenter 4, which I am going to cover today. Stage 2 is to upgrade each host, and will be covered as I do it. Stage 3 is the upgrade of the Virtual Machines to the latest VMware Tools and then the new VM hardware.</p>
<p>So to start, I'll outline the process:</p>
<ul>
<li><span style="font-family: 'Lucida Sans Unicode';">Download the vSphere vCenter 4 installer from VMware (~1.8GB).</span></li>
<li><span style="font-family: 'Lucida Sans Unicode';">Download your updated licensing for vSphere.</span></li>
<li>Back up your VirtualCenter server.</li>
<li>Run the installation.</li>
</ul>
<ul>
I'm not going to run through the download of the installer or licensing, if you're not sure how to do that, probably best not to do the rest.
</ul>
<div>[more]</div>
<h2>Backing up VirtualCenter Server</h2>
<p>My VirtualCenter server is installed on a Virtual Machine, so this makes things a lot simpler &ndash; I'll just take a snapshot to start. Being a belt-and-braces kind of situation (live HA cluster), I'm also going to do the database and configuration backup too.</p>
<p><strong>Databases</strong> - I'm using SQL Server 2005 express which is supported for vSphere vCenter, so there will be no database upgrades, however the schema will be changed. First off, I've connected to SQL with SQL Management Studio and run a full backup. As I have VMware Update Manager installed too, I'm backing up that database as well.</p>
<p><strong>Configuration file</strong> &ndash; Make a copy of your vpxd.cfg file, which is stored in the C:\Documents and Settings\All Users\Application Data\VMware\VMware VirtualCenter folder.</p>
<p><strong>SSL Certificates</strong> &ndash; In the same folder as the vpxd.cfg file there's a folder called SSL, which you'll want to backup too.</p>
<p>If you're not using integrated authentication for the database access, you need to ensure you have the user name and password for the DB access.</p>
<p>Once all that's gathered together and safely backed up, you can move on to the installation.</p>
<h2>Installing vSphere vCenter</h2>
<p>Open services.msc and stop the VMware VirtualCenter Server service.</p>
<p>Insert your vCenter installation CD, the installer pops up:</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall1.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall1" src="/wp-content/uploads/vCenterInstall1_thumb.png" border="0" alt="vCenterInstall1" width="244" height="191" /></a> Click vCenter Server.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall2.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall2" src="/wp-content/uploads/vCenterInstall2_thumb.png" border="0" alt="vCenterInstall2" width="244" height="185" /></a>Notice it's detected the earlier version of vCenter server and is going to upgrade.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall3.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall3" src="/wp-content/uploads/vCenterInstall3_thumb.png" border="0" alt="vCenterInstall3" width="244" height="185" /></a>&nbsp; Enter license details.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall4.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall4" src="/wp-content/uploads/vCenterInstall4_thumb.png" border="0" alt="vCenterInstall4" width="244" height="185" /></a>Enter DB user details, or leave blank if you're using integrated authentication like me.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall5.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall5" src="/wp-content/uploads/vCenterInstall5_thumb.png" border="0" alt="vCenterInstall5" width="244" height="66" /></a> If you have any plug-ins installed (e.g. VirtualCenter Update Manager, or Converter) it will let you know that they need to be up to date too.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall6.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall6" src="/wp-content/uploads/vCenterInstall6_thumb.png" border="0" alt="vCenterInstall6" width="244" height="185" /></a>Select to upgrade the vCenter Server database, and tick that you've backed up the database and SSL folders.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall7.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall7" src="/wp-content/uploads/vCenterInstall7_thumb.png" border="0" alt="vCenterInstall7" width="244" height="186" /></a>&nbsp; Select the account that you want to use to run the vCenter Server service.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall8.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall8" src="/wp-content/uploads/vCenterInstall8_thumb.png" border="0" alt="vCenterInstall8" width="244" height="185" /></a>Configure some ports, I've left them as defaults.</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall9.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall9" src="/wp-content/uploads/vCenterInstall9_thumb.png" border="0" alt="vCenterInstall9" width="244" height="185" /></a>&nbsp; Finally, install.<a rel="lightbox" href="/wp-content/uploads/vCenterInstall10.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall10" src="/wp-content/uploads/vCenterInstall10_thumb.png" border="0" alt="vCenterInstall10" width="244" height="177" /></a> It will run a DB upgrade, and various other uninstall/upgrades.</p>
<p>At this point I sat and waited&hellip;and waited&hellip;and waited. SQL server was chewing 70-80% processor, it was progressing, just slowly.</p>
<p>Eventually, it finished and the server settled down. I ran through the upgrade of Update Manager and Converter Enterprise, all click and go.</p>
<p>Stage 1 complete!</p>
<p><a rel="lightbox" href="/wp-content/uploads/vCenterInstall11.png"><img class="colorbox-30"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="vCenterInstall11" src="/wp-content/uploads/vCenterInstall11_thumb.png" border="0" alt="vCenterInstall11" width="244" height="185" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/11/migrating-vmware-virtual-infrastructure-3-ha-cluster-to-vsphere-4-%e2%80%93-stage-1-vcenter-upgrade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>MOSS 2007 – Alternate Access Mapping authentication fails</title>
		<link>http://www.definit.co.uk/2009/10/moss-2007-%e2%80%93-alternate-access-mapping-authentication-fails/</link>
		<comments>http://www.definit.co.uk/2009/10/moss-2007-%e2%80%93-alternate-access-mapping-authentication-fails/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 14:58:46 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[IIS]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SharePoint 2003]]></category>
		<category><![CDATA[MOSS]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/10/16/MOSS-2007-e28093-Alternate-Access-Mapping-authentication-fails.aspx</guid>
		<description><![CDATA[If you have an Alternate Access Mapping configured for a MOSS 2007 site with Integrated Authentication you might find that you get prompted for the DOMAIN\UserName and Password. After 3 attempts you get to a HTTP 401 error. This can be resolved by following the steps in MS KB 896861 HTH, Sam]]></description>
				<content:encoded><![CDATA[<p>If you have an Alternate Access Mapping configured for a MOSS 2007 site with Integrated Authentication you might find that you get prompted for the DOMAIN\UserName and Password. After 3 attempts you get to a HTTP 401 error.</p>
<p>This can be resolved by following the steps in <a href="http://support.microsoft.com/kb/896861" target="_blank">MS KB 896861</a></p>
<p>HTH,</p>
<p>Sam</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/10/moss-2007-%e2%80%93-alternate-access-mapping-authentication-fails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>The requested Storage VMotion would move a virtual machine&#8217;s disks without assigning the virtual machine a new home, but such a move is not supported on the source host</title>
		<link>http://www.definit.co.uk/2009/10/the-requested-storage-vmotion-would-move-a-virtual-machines-disks-without-assigning-the-virtual-machine-a-new-home-but-such-a-move-is-not-supported-on-the-source-host/</link>
		<comments>http://www.definit.co.uk/2009/10/the-requested-storage-vmotion-would-move-a-virtual-machines-disks-without-assigning-the-virtual-machine-a-new-home-but-such-a-move-is-not-supported-on-the-source-host/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 14:04:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Storage vMotion]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware ESX 3.5]]></category>
		<category><![CDATA[VMware Storage vMotion]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/10/14/The-requested-Storage-VMotion-would-move-a-virtual-machines-disks-without-assigning-the-virtual-machine-a-new-home-but-such-a-move-is-not-supported-on-the-source-host.aspx</guid>
		<description><![CDATA[I'm migrating some hosts off of an older storage LUN, but when I drag the disk to the new Datastore with the SVMotion plug-in the job fails with the following error: The error occurs because the virtual disk cannot be moved without moving the source files, the .vmx, .vswap etc. Simply drag the entire VM, [...]]]></description>
				<content:encoded><![CDATA[<p> I'm migrating some hosts off of an older storage LUN, but when I drag the disk to the new Datastore with the <a href="http://sourceforge.net/projects/vip-svmotion/" target="_blank">SVMotion plug-in</a> the job fails with the following error:</p>
<p><a href="/wp-content/uploads/Relocate.png" rel="lightbox"><img class="colorbox-33"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="The requested Storage VMotion would move a virtual machine&#39;s disks without assigning the virtual machine a new home, but such a move is not supported on the source host" border="0" alt="The requested Storage VMotion would move a virtual machine&#39;s disks without assigning the virtual machine a new home, but such a move is not supported on the source host" src="/wp-content/uploads/Relocate_thumb.png" width="364" height="26" /></a></p>
<p>The error occurs because the virtual disk cannot be moved without moving the source files, the .vmx, .vswap etc. Simply drag the entire VM, rather than the virtual disk to the new Datastore.</p>
<p>If you're trying to move a 2nd, 3rd or nth disk and you get this error, drag the entire VM as per above over to the new Datastore, once that's completed, go back in to SVMotion and drag the whole VM across again, only this time before you apply, drag the nth disk back to the new Datastore.</p>
<p><a href="/wp-content/uploads/VSMotion.png" rel="lightbox"><img class="colorbox-33"  style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="VSMotion" border="0" alt="VSMotion" src="/wp-content/uploads/VSMotion_thumb.png" width="244" height="211" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/10/the-requested-storage-vmotion-would-move-a-virtual-machines-disks-without-assigning-the-virtual-machine-a-new-home-but-such-a-move-is-not-supported-on-the-source-host/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>ESX 3.5 snapshots of disks on different storage are stored with the VM files</title>
		<link>http://www.definit.co.uk/2009/10/esx-3-5-snapshots-of-disks-on-different-storage-are-stored-with-the-vm-files/</link>
		<comments>http://www.definit.co.uk/2009/10/esx-3-5-snapshots-of-disks-on-different-storage-are-stored-with-the-vm-files/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 16:06:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESX/ESXi 3.5]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware ESX 3.5]]></category>
		<category><![CDATA[VMWare ESXi 3.5]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/10/02/ESX-35-snapshots-of-disks-on-different-storage-are-stored-with-the-VM-files.aspx</guid>
		<description><![CDATA[A.K.A Why not to use snapshots I ran into a slightly confusing problem today - our SQL servers are all created&#160;with 4 disks on 4 separate LUNs (System, Swap, SQL Data and SQL Logs). When viewing the server through Virtual Center I couldn't see all of the LUNs, just the System LUN. It's not a [...]]]></description>
				<content:encoded><![CDATA[<h2>A.K.A Why not to use snapshots</h2>
<p>I ran into a slightly confusing problem today - our SQL servers are all created&nbsp;with 4 disks on 4 separate LUNs (System, Swap, SQL Data and SQL Logs). When viewing the server through Virtual Center I couldn't see all of the LUNs, just the System LUN. It's not a major problem as the VM can see the storage, but a little annoying when you have to remember what LUN the disks are on.</p>
<p>Slightly more distressing was the fact that the System-LUN was running out of space - fast. A&nbsp;LUN that should have had about 150GB free was running dangerously low. On investigation I found various snapshot files were being stored in with the&nbsp;System-LUN, which is where the VM's VMX, vswap etc are situated. These were the snapshot delta files of the <em>additional</em> disks, which were on other storage! This&nbsp;isn't first apparent at first as&nbsp;the disk snapshots have&nbsp;been named sequentially by ESX, so a VM with 4 disks on separate LUNs will in fact create 4 snapshot files on the SYSTEM-LUN named VM01-00001.vmdk, VM01-00002.vmdk, VM01-00003.vmdk and VM01-00004.vmdk. 00001 is for the System disk, 00002 is for the Swap disk etc etc. This means that the IO on that LUN has been multiplied, and the storage space is shrinking <em>very</em> rapidly.</p>
<p>A little more digging and it seems that this is by design - snapshots are not meant to be kept for very long, and I think VMware made a deliberate decision to make it difficult to do so. Any virtual disks created for a VM, lets call it VM01, were named VM01.vmdk. When additional virtual disks were created through vCenter on a&nbsp;different LUN, they were&nbsp;still named VM01.vmdk - there's no conflict because they're in different locations. However, when vCenter takes a snapshot it places them with the original disk, and&nbsp;because it's got the same name as the existing disk it starts to enumerate them.</p>
<p>This is bad for a number of reasons - most prominent of which is that if the snapshot file grows large, vCenter does not handle the commit well. In fact, neither does ESX, but I'll get to that. vCenter will time out on any operation that takes more than 15 minutes, so a commit of a 10GB snapshot will look for all intents and purposes in vCenter like it's failed. On top of that, the enumeration of snapshot delta files can cause confusion as to which disk it actualy belongs to, and if that happens, commiting</p>
<p>We all know snapshots are performance killers, but the functionality they provide is not insignificant, and as with most things a balance has to be struck between the functionality and the performance.</p>
<h2>So the headlines</h2>
<ul>
<li>VMs created with disks on multiple LUNs in vCenter use the SAME DISK NAME (eg; for VM01 the disks were created in /vmfs/volumes/SYSTEM-LUN/VM01.vmdk, /vmfs/volumes/SWAP-LUN/VM01.vmdk etc etc).
<ul>
<li>Mitigate this by creating disks using the vmkfstools and adding them to the VM&nbsp;or renaming the existing&nbsp;disks (see below).</li>
</ul>
</li>
<li>Snapshots cause ALL disk delta files onto the "system" LUN (i.e. where your VMX file is stored.) This is bad because a) it multiplies your I/O on that disk and b) you negate the benefits of storing on multiple LUNs.
<ul>
<li>Mitigate this by deleting your snapshots. There's no other way*, don't try manually moving them or you will have problems.</li>
</ul>
</li>
<li>Commiting large snapshots takes time - LOTS of time - and&nbsp;can have&nbsp;a big performance hit on your server.
<ul>
<li>Mitigate this by shutting down your VM first and commiting the disk&nbsp;using&nbsp;the vmware-cmd&nbsp;out of business hours. You can also merge the old disk and snapshots&nbsp;into a "new" disk, then shut down the VM and boot with the "new disk".</li>
</ul>
</li>
<li>vCenter has a hard coded 15m timeout.
<ul>
<li>If you are doing a operation that will take longer than that, do it via the console!</li>
</ul>
</li>
</ul>
<p>* when I say there's no other way, I mean, there's no other practical way. There are methods to move the snapshot files to another LUN but they bring some serious problems with them.</p>
<h3>Create a vmdk (virtual disk) using vmkfstools</h3>
<ul>
<li>Log in to your server console.</li>
<li>Type <span style="font-family: courier new,courier;">su -</span> (to log in as root,&nbsp;enter root password, note the "-" to load the root user environment variables)</li>
<li>Navigate to the storage that you wish to use. E.g. <span style="font-family: courier new,courier;">cd /vmfs/volumes/System-LUN/</span></li>
<li>Create a new folder for the virtual disk: <span style="font-family: courier new,courier;">mkdir VM01</span></li>
<li>Navigate to the folder: <span style="font-family: courier new,courier;">cd VM01</span></li>
<li>Create the disk: <span style="font-family: courier new,courier;">vmkfstools -c &lt;size&gt; &lt;filename&gt; -a &lt;buslogic|lsilogic&gt;</span></li>
<li>For help&nbsp;just type <span style="font-family: courier new,courier;">vmkfstools</span></li>
</ul>
<h3>Rename&nbsp;vmdk files using vmkfstools</h3>
<ul>
<li>Shut down the VM in vCenter.</li>
<li>Edit the&nbsp;VM settings and remove the disk you wish to change. Do not delete the file!</li>
<li>Log in to your server console.</li>
<li>type <span style="font-family: courier new,courier;">su - </span>(to log in as root -&nbsp;enter root password, note the "-" to load the root user environment variables)</li>
<li>use the command: <span style="font-family: courier new,courier;">vmkfstools -E /vmfs/volumes/&lt;LUN&gt;/&lt;Server Name&gt;/&lt;Disk Name&gt;.vmdk /vmfs/volumes/&lt;LUN&gt;/&lt;Server Name&gt;/&lt;New Disk Name&gt;.vmdk</span></li>
<li>
<p>Go back to&nbsp;the vCenter and re-add the disk, using the new name.</p>
</li>
</ul>
<h2>Commit your snapshots using vmware-cmd</h2>
<ul>
<li>Log in to your server console.</li>
<li>Type su - (to log in as root,&nbsp;enter root password, note the "-" to load the root user environment variables).</li>
<li>Use the <span style="font-family: courier new,courier;">vmware-cmd -l</span> command to list your VMs. Note the path to the VM you want to deal with.</li>
<li>Remove all snapshots for a VM: <span style="font-family: courier new,courier;">vmware-cmd /path/to/vm/VM01.vmx removesnapshots</span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/10/esx-3-5-snapshots-of-disks-on-different-storage-are-stored-with-the-vm-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Teaming NICs with ESX 3.5 and Cisco Switches in an aggregate.</title>
		<link>http://www.definit.co.uk/2009/09/teaming-nics-with-esx-3-5-and-cisco-switches-in-an-aggregate/</link>
		<comments>http://www.definit.co.uk/2009/09/teaming-nics-with-esx-3-5-and-cisco-switches-in-an-aggregate/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 11:24:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[ESX and ESXi]]></category>
		<category><![CDATA[ESX/ESXi 3.5]]></category>
		<category><![CDATA[ESX/ESXi 4]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[VMware ESX 3.5]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/09/30/Teaming-NICs-with-ESX-35-and-Cisco-Switches-in-an-aggregate.aspx</guid>
		<description><![CDATA[Here's the setup. We have a core switch of 2 Cisco 3750s, connected together for fault tolerance as a single logical switch; we also have several ESX 3.5 hosts with 4 Gigabit Ethernet NICs installed each. The Virtual Machines will&#160;all be on VLAN 8 (reserved for internal servers) and the&#160;VMKernel will be on VLAN 107 [...]]]></description>
				<content:encoded><![CDATA[<p>Here's the setup. We have a core switch of 2 Cisco 3750s, connected together for fault tolerance as a single logical switch; we also have several ESX 3.5 hosts with 4 Gigabit Ethernet NICs installed each. The Virtual Machines will&nbsp;all be on VLAN 8 (reserved for internal servers) and the&nbsp;VMKernel will be on VLAN 107 (reserved for VMKernel traffic like VMotion).&nbsp;&nbsp;I want to create a load balanced, fault tolerant aggregate of these four NICs over the Core Switch.</p>
<h2>Configure ESX server's vSwitch</h2>
<p>Configuring the vSwitch is actually pretty simple, but there are a couple of gotchas, so don't skip this bit! First thing to note is that if you are making changes to the vSwitch and the Service Console is on that vSwitch you can quite easily lock yourself out. Make sure you configure this correctly, first time! In this setup, I am adding all 4 NICs to vSwitch0, which will be the only vSwitch. I'll then use Port Groups to assign VLANs and Active/Passive configurations to the VMKernel/Service Console.</p>
<p>First things first then - assign the four NICs to the vSwitch. This is done in the Configuration Tab in VMware Infrastructure Client, then the Networking page. Edit the properties of your vSwitch, then select the Network Adaptor tab. Add all the NICs you wish to team in there (they may already be in there, depending on your setup). You should end up with something that looks like this (note that I've not assigned any VLAN yet):</p>
<p>&nbsp;<img class="colorbox-35"  src="/BlogEngine/image.axd?picture=2009%2f9%2fESXvSwitch.png" alt="" width="459" height="333" /></p>
<p>Now you need to configure the NIC teaming, so edit the vSwitch Properties and under the Ports tab select the vSwitch. Click edit, and then go to the NIC teaming tab. Configure the teaming options like this:</p>
<p><img class="colorbox-35"  src="/BlogEngine/image.axd?picture=2009%2f9%2fvSwitchTeam.png" alt="" width="296" height="374" /></p>
<p>That's the easy part over and done with! Time to move onto the Cisco!</p>
<h2>Configuring the Cisco Core Switch</h2>
<p>Firstly, we need to log on to the switch and enter enable mode; I'm going to assume you know how to do this - if not, you really shouldn't be attempting this setup!</p>
<p>Determine the switches trunk load balancing setup by using the command "show etherchannel load-balance". It should look something like this:</p>
<p><img class="colorbox-35"  src="/BlogEngine/image.axd?picture=2009%2f9%2fShEthLoad.png" alt="" /></p>
<p>If the protocol is NOT src-dst-ip, then you won't be able to establish a trunk connection with the ESX server. If your protocol is not src-dst-ip, change it with the command "port-channel load-balance src-dst-ip". This now matches the "Route based on IP hash" setting you configured in ESX. Although ESX has a setting for MAC based hashing, as does the Cisco, I was unable to get it to work.</p>
<p>Moving on. You need to create a Port-Channel interface&nbsp;for the trunk (this is a virtual interface that binds the 4 GigabitEthernet interfaces together). As i've got other Port-channels in use for connections to other switches, I'm setting up port-channel 40. Move to config mode (conf t) and then enter the setup:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">interface Port-channel40<br />&nbsp;description VMTEST01 Aggregate<br />&nbsp;switchport trunk encapsulation dot1q<br />&nbsp;switchport trunk native vlan 8<br />&nbsp;switchport mode trunk<br />&nbsp;switchport nonegotiate<br />&nbsp;spanning-tree portfast trunk<br />end</span></p>
<p>Description simply adds a description, "switchport trunk encapsulation dot1q" sets the encapsulation of the trunk to 802.1Q. "switchport trunk native vlan 8" means that any traffic without a VLAN tag will be automatically assigned to VLAN 8. "switchport mode trunk" obviously designates that we want a trunk, rather than access. "switchport nonegotiate" means that it will not attempt to negotiate the&nbsp;protocol, and&nbsp;be a static trunk, rather than LCAP or PGaP. "spanning-tree portfast trunk" causes a Layer&nbsp;2 LAN interface configured as an access port to enter the forwarding state immediately, bypassing the listening and learning states (i.e. if the link goes down and then comes back up, it will do so quickly).</p>
<p>With the Port-channel configured, you now need to edit your GigabitEthernet ports and assign them to the Port-channel. For each port in the trunk, enter the following config (this example is port 8 on the master switch in&nbsp;my stack, hence 1/0/8):</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">interface GigabitEthernet1/0/8<br />&nbsp;description VMTEST01 VMNIC1<br />&nbsp;switchport trunk encapsulation dot1q<br />&nbsp;switchport trunk native vlan 8<br />&nbsp;switchport mode trunk<br />&nbsp;switchport nonegotiate<br />&nbsp;channel-group 40 mode on<br />&nbsp;spanning-tree portfast trunk<br />end</span></p>
<p>The difference between that and the Port-channel setup? "channel-group 40 mode on" is simply assigning the port-channel in static mode.</p>
<p>Once all four NICs are assigned you might have to wait a few minutes for every layer of the connection to settle down before the trunk comes up. To check the status of the etherchannel you can use the command "show etherchannel 40 summary", replacing the 40 for whichever number you assigned to your port-channel.</p>
<p>I hope this helps navigate the minefield that I found to be setting up the NIC teaming!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/09/teaming-nics-with-esx-3-5-and-cisco-switches-in-an-aggregate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>DCDIAG /TEST:DNS fails with errors regarding root hint servers</title>
		<link>http://www.definit.co.uk/2009/09/dcdiag-testdns-fails-with-errors-regarding-root-hint-servers/</link>
		<comments>http://www.definit.co.uk/2009/09/dcdiag-testdns-fails-with-errors-regarding-root-hint-servers/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 16:19:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Windows Server]]></category>
		<category><![CDATA[Windows Server 2003]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/09/21/DCDIAG-TESTDNS-fails-with-errors-regarding-root-hint-servers.aspx</guid>
		<description><![CDATA[I recently resolved an ongoing DNS issue where the Active Directory Integrated DNS was loaded in both the Domain and the DomainDNSZones partition of AD - this is a separate issue and should be resolved differently. My problem when I tried to verify that the fixed DNS setup had propogated around my domain controllers, DC01 [...]]]></description>
				<content:encoded><![CDATA[<p>
I recently resolved an ongoing DNS issue where the Active Directory Integrated DNS was loaded in both the Domain and the DomainDNSZones partition of AD - this is a separate issue and should be resolved differently. My problem when I tried to verify that the fixed DNS setup had propogated around my domain controllers, DC01 and DC02. DC01 kept failing &quot;DCDIAG /TEST:DNS&quot; with errors regarding the root hint servers. Googling about it was clear that a lot of people were suffering the same issue, but no article I read had correctly identified the solution.
</p>
<p>
The error looked something like this:
</p>
<blockquote>
<p>
	P:\&gt;dcdiag /test:dns
	</p>
<p>
	Domain Controller Diagnosis
	</p>
<p>
	Performing initial setup:<br />
	&nbsp;&nbsp; Done gathering initial info.
	</p>
<p>
	Doing initial required tests
	</p>
<p>
	&nbsp;&nbsp; Testing server: SITE\DC01<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Starting test: Connectivity<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......................... DC01 passed test Connectivity
	</p>
<p>
	Doing primary tests
	</p>
<p>
	&nbsp;&nbsp; Testing server: SITE\DC01
	</p>
<p>
	DNS Tests are running and not hung. Please wait a few minutes...
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : ForestDnsZones
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : DomainDnsZones
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : Schema
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : Configuration
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : DOMAIN
	</p>
<p>
	&nbsp;&nbsp; Running enterprise tests on : DOMAIN.com<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Starting test: DNS<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Test results for domain controllers:
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DC: DC01.DOMAIN.COM<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Domain: DOMAIN.com
	</p>
<p>
	<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TEST: Forwarders/Root hints (Forw)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: a.root-se<br />
	rvers.net. (198.41.0.4)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: b.root-se<br />
	rvers.net. (192.228.79.201)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: c.root-se<br />
	rvers.net. (192.33.4.12)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: d.root-se<br />
	rvers.net. (128.8.10.90)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: e.root-se<br />
	rvers.net. (192.203.230.10)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: f.root-se<br />
	rvers.net. (192.5.5.241)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: g.root-se<br />
	rvers.net. (192.112.36.4)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: h.root-se<br />
	rvers.net. (128.63.2.53)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: i.root-se<br />
	rvers.net. (192.36.148.17)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: j.root-se<br />
	rvers.net. (192.58.128.30)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Error: Root hints list has invalid root hint server: k.root-se<br />
	rvers.net. (193.0.14.129)
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TEST: Dynamic update (Dyn)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Warning: Dynamic update is enabled on the zone but not secure<br />
	DOMAIN.com.
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary of test results for DNS servers used by the above domain contro<br />
	llers:
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 128.63.2.53 (h.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 128.63.2.53
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 128.8.10.90 (d.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 128.8.10.90
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.112.36.4 (g.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.112.36.4
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.203.230.10 (e.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.203.230.10
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.228.79.201 (b.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.228.79.201
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.33.4.12 (c.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.33.4.12
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.36.148.17 (i.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.36.148.17
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.5.5.241 (f.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.5.5.241
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 192.58.128.30 (j.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 192.58.128.30
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 193.0.14.129 (k.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 193.0.14.129
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DNS server: 198.41.0.4 (a.root-servers.net.)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 test failure on this DNS server<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is not a valid DNS server. PTR record query for the 1.0.0.12<br />
	7.in-addr.arpa. failed on the DNS server 198.41.0.4
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary of DNS test results:
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Auth Basc Forw Del&nbsp; Dyn&nbsp; RReg Ext<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ________________________________________________________________<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Domain: DOMAIN.com<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DC01&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PASS PASS FAIL PASS WARN PASS n/a
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......................... DOMAIN.com failed test DNS
	</p>
</blockquote>
<p>
<br />
It looks pretty horrific - DNS is failing at a basic level! It turns out that the actual issue is an old version of DCDIAG.EXE. After several hours and a lot of head scratching I checked the versions of the DCDIAG.EXE (normally c:\Program Files\Support Tools\dcdiag.exe) and &quot;Lo! And Behold!&quot; the version was different. I downloaded the <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=96a35011-fd83-419d-939b-9a772ea2df90&amp;displaylang=en" target="_blank" title="Windows Server 2003 Support Tools R2 ">Windows Server 2003 Support Tools R2</a>, uninstalled the old version (v5.2.3790.1800) and installed the new one (v5.2.3790.3959).
</p>
<p>
Et voila! The working test...
</p>
<blockquote>
<p>
	<br />
	P:\&gt;dcdiag /test:dns
	</p>
<p>
	Domain Controller Diagnosis
	</p>
<p>
	Performing initial setup:<br />
	&nbsp;&nbsp; Done gathering initial info.
	</p>
<p>
	Doing initial required tests
	</p>
<p>
	&nbsp;&nbsp; Testing server: SITE\DC01<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Starting test: Connectivity<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......................... DC01 passed test Connectivity
	</p>
<p>
	Doing primary tests
	</p>
<p>
	&nbsp;&nbsp; Testing server: SITE\DC01
	</p>
<p>
	DNS Tests are running and not hung. Please wait a few minutes...
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : ForestDnsZones
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : DomainDnsZones
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : Schema
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : Configuration
	</p>
<p>
	&nbsp;&nbsp; Running partition tests on : DOMAIN
	</p>
<p>
	&nbsp;&nbsp; Running enterprise tests on : DOMAIN.com<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Starting test: DNS<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Test results for domain controllers:
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DC: DC01.DOMAIN.COM<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Domain: DOMAIN.com
	</p>
<p>
	<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TEST: Dynamic update (Dyn)<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Warning: Dynamic update is enabled on the zone but not secure<br />
	DOMAIN.com.
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Summary of DNS test results:
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Auth Basc Forw Del&nbsp; Dyn&nbsp; RReg Ext<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ________________________________________________________________<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Domain: DOMAIN.com<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DC01&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PASS PASS PASS PASS WARN PASS n/a
	</p>
<p>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......................... DOMAIN.com passed test DNS
	</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/09/dcdiag-testdns-fails-with-errors-regarding-root-hint-servers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
		<item>
		<title>Multi-homed Domain controller logs Event ID 1030 and 1058</title>
		<link>http://www.definit.co.uk/2009/09/multi-homed-domain-controller-logs-event-id-1030-and-1058/</link>
		<comments>http://www.definit.co.uk/2009/09/multi-homed-domain-controller-logs-event-id-1030-and-1058/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 12:46:00 +0000</pubDate>
		<dc:creator>Sam McGeown</dc:creator>
				<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Windows Server 2000]]></category>
		<category><![CDATA[Windows Server 2003]]></category>
		<category><![CDATA[Windows Server 2008]]></category>

		<guid isPermaLink="false">/blogengine/post/2009/09/10/Multi-homed-Domain-controller-logs-Event-ID-1030-and-1058.aspx</guid>
		<description><![CDATA[I recently had an issue where a hosting environment was registering a lot of Netlogon Event 1030/1058 issues, being unable to find the Group Policy objects or download them. In this example, the server DC is the domain controller for DOMAIN.LCL. Event Type:&#160;Error Event Source:&#160;Userenv Event Category:&#160;None Event ID:&#160;1030 Date:&#160;&#160;10/09/2009 Time:&#160;&#160;06:24:29 User:&#160;&#160;NT AUTHORITY\SYSTEM Computer:&#160;DC Description: [...]]]></description>
				<content:encoded><![CDATA[<p>
I recently had an issue where a hosting environment was registering a lot of Netlogon Event 1030/1058 issues, being unable to find the Group Policy objects or download them. In this example, the server DC is the domain controller for DOMAIN.LCL.
</p>
<blockquote>
<p>
	<em>Event Type:&nbsp;Error<br />
	Event Source:&nbsp;Userenv<br />
	Event Category:&nbsp;None<br />
	Event ID:&nbsp;1030<br />
	Date:&nbsp;&nbsp;10/09/2009<br />
	Time:&nbsp;&nbsp;06:24:29<br />
	User:&nbsp;&nbsp;NT AUTHORITY\SYSTEM<br />
	Computer:&nbsp;DC<br />
	Description:<br />
	Windows cannot query for the list of Group Policy objects. Check the event log for possible messages previously logged by the policy engine that describes the reason for this. For more information, see Help and Support Center at </em><a href="http://go.microsoft.com/fwlink/events.asp"><em>http://go.microsoft.com/fwlink/events.asp</em></a><em>.</em>
	</p>
</blockquote>
<blockquote>
<p>
	<em>Event Type:&nbsp;Error<br />
	Event Source:&nbsp;Userenv<br />
	Event Category:&nbsp;None<br />
	Event ID:&nbsp;1058<br />
	Date:&nbsp;&nbsp;10/09/2009<br />
	Time:&nbsp;&nbsp;06:24:29<br />
	User:&nbsp;&nbsp;NT AUTHORITY\SYSTEM<br />
	Computer:&nbsp;DC<br />
	Description:<br />
	Windows cannot access the file gpt.ini for GPO CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=Policies,CN=System,DC=DOMAIN,DC=LCL. The file must be present at the location &lt;</em><a href="file://domain.lcl/sysvol/DOMAIN.LCL/Policies/%7B31B2F340-016D-11D2-945F-00C04FB984F9%7D/gpt.ini"><em>\\DOMAIN.LCL\sysvol\DOMAIN.LCL\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}\gpt.ini</em></a><em>&gt;. (Windows cannot find the network path. Verify that the network path is correct and the destination computer is not busy or turned off. If Windows still cannot find the network path, contact your network administrator. ). Group Policy processing aborted. For more information, see Help and Support Center at </em><a href="http://go.microsoft.com/fwlink/events.asp"><em>http://go.microsoft.com/fwlink/events.asp</em></a><em>.</em>
	</p>
</blockquote>
<p>
On the affected machines, when navigating to <a href="file://domain.lcl/">\\DOMAIN.LCL</a> there were no shares available, however navigating to <a href="file://dc/">\\DC</a> shows the NETLOGON and SYSVOL shares. Pinging DOMAIN.LCL and then the DC showed that the IP addresses were not the same as expected, DOMAIN.LCL was resolving to the backup network, whereas DC was resolving to the servers LAN IP.
</p>
<p>
I checked the DNS records for the server, which were correct. Investigating the adaptor binding settings under Control Panel &gt; Network Connections &gt; Advanced &gt; Advanced Settings showed that the backup network&#39;s adaptor was first in the list. I moved the adaptor for the LAN to the top of the list and OK&#39;d my way out. I restarted the NETLOGON service and the issue was solved.
</p>
<p>
Windows servers have never been particularly good at being multi-homed, especially domain controllers. My advice comes from some bitter experience...
</p>
<ul>
<li>
<div>
	If you have multiple network adaptors for extra bandwidth/redundancy/resiliance, then I would strongly recommend using Teamed adaptors, most of the major manufacturers&#39; drivers and management software support it. This will eliminate any issues with multi-homing because as far as the server is concerned, it has one adaptor.
	</div>
</li>
<li>
<div>
	If you have multiple network adaptors for different network segments and you&#39;re using RRAS to route between them, I would strongly suggest not using a Domain Controller at all for this purpose. Better yet, buy a hardware router.
	</div>
</li>
<li>
<div>
	If you have multiple network adaptors for different purpose networks (e.g. a LAN, a backup network and an iSCSI network) then make sure you do the following:
	</div>
<ul>
<li>
<div>
		Disable &quot;File and Printer Sharing for Microsoft Networks&quot; and &quot;Client for Microsoft Networks&quot; on all but the LAN adaptor.
		</div>
</li>
<li>
<div>
		Ensure that your LAN adaptor is the FIRST adaptor in the bindings in the advanced network settings.
		</div>
</li>
</ul>
</li>
</ul>
<p>
&nbsp;Hope that helps!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.definit.co.uk/2009/09/multi-homed-domain-controller-logs-event-id-1030-and-1058/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license>
	</item>
	</channel>
</rss>
