<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Kevin Holman's OpsMgr Blog : firewall</title><link>http://blogs.technet.com/kevinholman/archive/tags/firewall/default.aspx</link><description>Tags: firewall</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Some Server 2008 Windows Firewall rules needed to install OpsMgr R2</title><link>http://blogs.technet.com/kevinholman/archive/2009/06/02/some-server-2008-windows-firewall-rules-needed-to-install-opsmgr-r2.aspx</link><pubDate>Tue, 02 Jun 2009 02:03:03 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3249113</guid><dc:creator>kevinhol</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/kevinholman/comments/3249113.aspx</comments><wfw:commentRss>http://blogs.technet.com/kevinholman/commentrss.aspx?PostID=3249113</wfw:commentRss><wfw:comment>http://blogs.technet.com/kevinholman/rsscomments.aspx?PostID=3249113</wfw:comment><description>&lt;p&gt;I recently rebuilt a POC environment all on Server 2008, and SQL 2008.&lt;/p&gt;  &lt;p&gt;Out of the box – the R2 install is a bit rocky – because of the Windows Firewall enabled on Server 2008 by default.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;These required custom firewall rules are documented on the supported configuration guide…. located at &lt;a title="http://technet.microsoft.com/en-us/library/bb309428.aspx" href="http://technet.microsoft.com/en-us/library/bb309428.aspx"&gt;http://technet.microsoft.com/en-us/library/bb309428.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I just want to provide a little &lt;strong&gt;&lt;em&gt;context&lt;/em&gt;&lt;/strong&gt; around them.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;My three servers are OMRMS, OMDB, and OMDW.&lt;/p&gt;  &lt;p&gt;OMRMS – Root Management Server&lt;/p&gt;  &lt;p&gt;OMDB – OperationsManager database role with SQL 2008 Database Services.&lt;/p&gt;  &lt;p&gt;OMDW – OperationsManagerDW database role, Reporting Role, with SQL 2008 Database Services and Reporting Services&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;First off – during the install of the RMS, it will fail to locate the SC database.&amp;#160; This is because it tries to contact the SQL database server on OMDB over port 1433, and this is blocked by the Windows Firewall on OMDB.&amp;#160; To resolve – I need to allow the SQL server program access through the firewall:&lt;/p&gt;  &lt;p&gt;I create a new rule – called “Custom - SQL DB Engine Program” and choose rule type of program – and give it the path to SQLServer.exe – in my case:&amp;#160; E:\Program Files\Microsoft SQL Server\MSSQL10.I01\MSSQL\Binn\sqlservr.exe&amp;#160; &lt;/p&gt;  &lt;p&gt;In addition – I am using a named instance of SQL.&amp;#160; When we use a named instance of SQL, the DB Engine instance will not use port 1433 by default.&amp;#160; It will pick a random port and assign it to the DB engine instance.&amp;#160; When clients connect to this instance – they do not know this random port…. therefore – they can leverage the SQL broker service – which will communicate the random port to the SQL client for communication.&amp;#160; &lt;/p&gt;  &lt;p&gt;Therefore – I need another rule on the firewall of the SQL server:&amp;#160; this time a port based rule – allowing 1434 UDP.&lt;/p&gt;  &lt;p&gt;Here is a screenshot of my two access rules:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_thumb.png" width="570" height="41" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now – the RMS install is able to locate the SC database – and we continue.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Next up – I perform the reporting install on OMDW.&amp;#160; I install the DW and the Reporting server roles here.&amp;#160; The install goes fine.&amp;#160; However – the RMS starts logging the following events:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Log Name:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Operations Manager       &lt;br /&gt;Source:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Health Service Modules        &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 6/1/2009 5:08:19 PM        &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 31551        &lt;br /&gt;Task Category: Data Warehouse        &lt;br /&gt;Level:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Error        &lt;br /&gt;Keywords:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Classic        &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A        &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OMRMS.opsmgr.net        &lt;br /&gt;Description:        &lt;br /&gt;Failed to store data in the Data Warehouse. The operation will be retried.        &lt;br /&gt;Exception 'SqlException': A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;One or more workflows were affected by this.&amp;#160; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Workflow name: Microsoft.SystemCenter.DataWarehouse.CollectEventData        &lt;br /&gt;Instance name: OMRMS.opsmgr.net         &lt;br /&gt;Instance ID: {E61C0DD2-AB2A-4CFA-D252-37B84BCF9A83}         &lt;br /&gt;Management group: PROD1&lt;/strong&gt;      &lt;br /&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is because the RMS cannot contact SQL on the data warehouse SQL server.&amp;#160; Therefore – I need to add the same two firewall rules on OMDW that I enabled on OMDB…. to allow remote SQL connections.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now – I have installed the RMS, and I have installed reporting into the management group.&amp;#160; However – when I click on “Reporting” in the SCOM console – I get the following error:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_4.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_thumb_1.png" width="554" height="350" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;Date: 6/1/2009 5:16:31 PM     &lt;br /&gt;Application: System Center Operations Manager 2007 R2      &lt;br /&gt;Application Version: 6.1.7221.0      &lt;br /&gt;Severity: Error      &lt;br /&gt;Message: Loading reporting hierarchy failed. &lt;/p&gt;    &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;font color="#0000ff" size="3"&gt;System.Net.WebException: Unable to connect to the remote server ---&amp;gt; System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.10.10.7:80&lt;/font&gt;        &lt;br /&gt;&lt;/font&gt;&amp;#160;&amp;#160; at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket&amp;amp; socket, IPAddress&amp;amp; address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception&amp;amp; exception)      &lt;br /&gt;&amp;#160;&amp;#160; --- End of inner exception stack trace ---      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.HttpWebRequest.GetRequestStream()      &lt;br /&gt;&amp;#160;&amp;#160; at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.ReportingService.ReportingService2005.ListChildren(String Item, Boolean Recursive)      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.ManagementGroupReportFolder.GetSubfolders(Boolean includeHidden)      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.ManagementGroupReportFolder.GetSubfolders()      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingSubtree(TreeNode node, ManagementGroupReportFolder folder)      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingTree(ManagementGroupReportFolder folder)      &lt;br /&gt;&amp;#160;&amp;#160; at Microsoft.EnterpriseManagement.Mom.Internal.UI.Reporting.WunderBar.ReportingPage.LoadReportingTreeJob(Object sender, ConsoleJobEventArgs args)      &lt;br /&gt;System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.10.10.7:80      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP)      &lt;br /&gt;&amp;#160;&amp;#160; at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket&amp;amp; socket, IPAddress&amp;amp; address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception&amp;amp; exception)&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;See the bolded blue part above.&amp;#160; The console is not able to establish a connection to the HTTP reporting server address.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Additionally – you will see the following in the RMS event log:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Log Name:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Operations Manager       &lt;br /&gt;Source:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Health Service Modules        &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 6/1/2009 5:40:22 PM        &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 31569        &lt;br /&gt;Task Category: Data Warehouse        &lt;br /&gt;Level:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Error        &lt;br /&gt;Keywords:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Classic        &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A        &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OMRMS.opsmgr.net        &lt;br /&gt;Description:        &lt;br /&gt;Report deployment process failed to request management pack list from SQL RS Server. The operation will be retried.        &lt;br /&gt;Exception 'WebException': Unable to connect to the remote server &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;One or more workflows were affected by this.&amp;#160; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Workflow name: Microsoft.SystemCenter.DataWarehouse.Deployment.Report        &lt;br /&gt;Instance name: OMRMS.opsmgr.net         &lt;br /&gt;Instance ID: {E61C0DD2-AB2A-4CFA-D252-37B84BCF9A83}         &lt;br /&gt;Management group: PROD1&lt;/strong&gt;      &lt;br /&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is all due to the fact that the Windows Firewall is blocking port 80 (HTTP) by default.&amp;#160; We need to open another access rule – for TCP port 80 for this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_6.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_thumb_2.png" width="450" height="24" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now – I go ahead and open it for TCP 80, and TCP 443, since I might lock this down using SSL in the future.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Once the HTTP rule is enabled on the Reporting server role – the RMS almost immediately throws the following events:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;Log Name:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Operations Manager       &lt;br /&gt;Source:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Health Service Modules        &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 6/1/2009 5:51:42 PM        &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 31570        &lt;br /&gt;Task Category: Data Warehouse        &lt;br /&gt;Level:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Information        &lt;br /&gt;Keywords:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Classic        &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A        &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OMRMS.opsmgr.net        &lt;br /&gt;Description:        &lt;br /&gt;&lt;font color="#0000ff"&gt;Report deployment process successfully requested management pack list from SQL RS Server&lt;/font&gt; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;One or more workflows were affected by this.&amp;#160; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Workflow name: Microsoft.SystemCenter.DataWarehouse.Deployment.Report        &lt;br /&gt;Instance name: OMRMS.opsmgr.net         &lt;br /&gt;Instance ID: {E61C0DD2-AB2A-4CFA-D252-37B84BCF9A83}         &lt;br /&gt;Management group: PROD1        &lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Log Name:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Operations Manager       &lt;br /&gt;Source:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Health Service Modules        &lt;br /&gt;Date:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 6/1/2009 5:52:27 PM        &lt;br /&gt;Event ID:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 31568        &lt;br /&gt;Task Category: Data Warehouse        &lt;br /&gt;Level:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Information        &lt;br /&gt;Keywords:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Classic        &lt;br /&gt;User:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; N/A        &lt;br /&gt;Computer:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; OMRMS.opsmgr.net        &lt;br /&gt;Description:        &lt;br /&gt;&lt;font color="#0000ff"&gt;Reporting components successfully deployed&lt;/font&gt; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;One or more workflows were affected by this.&amp;#160; &lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Workflow name: Microsoft.SystemCenter.DataWarehouse.Deployment.Report        &lt;br /&gt;Instance name: OMRMS.opsmgr.net         &lt;br /&gt;Instance ID: {E61C0DD2-AB2A-4CFA-D252-37B84BCF9A83}         &lt;br /&gt;Management group: PROD1&lt;/strong&gt;      &lt;br /&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;A quick check of the Reporting tab of the console now yields:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_8.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/kevinholman/WindowsLiveWriter/SomeServer2008WindowsFirewallrulesneeded_FD5C/image_thumb_3.png" width="548" height="420" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;And I wait an hour or so – and go back to the RMS – and make sure the RMS OperationsManager event log is clean – before doing anything else to the management group.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3249113" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/kevinholman/archive/tags/firewall/default.aspx">firewall</category></item></channel></rss>