Category Archives: VMWare

VMWare Enhanced Authentication Plugin Fix

Plugin Installation

Web browser SSO to vCenter used to be provided via a browser API called NPAPI, but this API has now been deprecated by all browsers. As such VMWare was required to adopt an alternative approach to providing an SSO capability. This is now provided by installing the VMWare Enhanced Authentication Plugin. If this plugin is not installed the vCenter logon page prompts to download and install it:

The plugin package (currently VMware-EnhancedAuthenticationPlugin-6.5.0.exe) actually comprises two components:

  • Client Integration Plugin
  • Enhanced Authentication Plugin

The installation process installs a Windows service called “VMware Cip Message Proxy Service” and adds the following entries to the local hosts file:

127.0.0.1 vmware-plugin
::1 vmware-plugin

Once installed, the “VMware Cip Message Proxy Service” service presents a WebSocket interface on the local system. This interface brokers the authentication to the vCenter server using the user’s browser Windows session credentials. This is instigated by background calls to the WebSocket service from the vCenter logon page. The following endpoints are called from that page:

  • wss://vmware-plugin:8094 (alias for localhost address)
  • vmware-plugin://csd

If all is working then the “Use Windows session authentication” checkbox will be enabled:

Unfortunately in my case all was not well and this option was disabled:

Problem and Resolution

Now there can be a multitude of reasons for this (certificate issues being the most common), but this is what I observed and how I fixed the issue.

The first thing I noticed was that, when I attempted to load the logon page, the “VMware Cip Message Proxy Service” service would stop. Further to that, an error was logged in the Application event log stating that there was a fault with the “vmware-cip-msg-proxy.exe” application. A corresponding event was logged in the System event log – “The VMware Cip Message Proxy Service service terminated unexpectedly”.

Further googling, procmon tracing and log file analysis suggested that the
“VMware Cip Message Proxy Service” appeared to being denied access to the “%localappdata%\VMware\CIP” folder in my profile path (I believe it is trying to create a session lock or log file, but don’t know for sure).

Now the default plugin installation configures the “VMware Cip Message Proxy Service” service to run as the Local Service account:

However this account does not have permission to write to my (or any other) profile folder path. So I reconfigured the service to run as Local System instead:

Having restarted the service and refreshed the logon page, the “Use Windows session authentication” checkbox was finally enabled and I was able to log in with my current Windows session.

I don’t know why this change is necessary, how it’s supposed to be configured, or whether there is a better workaround, but it’s a solution that I’m happy to work with and thought it might be useful to share my findings.

Network Configuration Running Hyper-V on vSphere

There are plenty of articles out there describing how to run Hyper-V on vSphere, e.g.  https://www.pluralsight.com/blog/tutorials/run-hyper-v-vsphere-5-1

However after following these instructions I found I still had an issue with my configuration. My Hyper-V guest VMs would pick up an IP address from DHCP but I couldn’t communicate with them subsequently. There are a number of potential causes of this, including a mis-configuration of the Hyper-V vSwitch. However, in my case the cause was in the layer above – on my ESXi host. Continue reading

Veeam Backup and Replication, vSphere Replication and Site Recovery Manager Features Comparison

Introduction

I was asked by a client recently to evaluate the DR replication and recovery features of Veeam Backup and Replication 9.0 (VBR) in comparison to the incumbent vSphere Replication 6.1 (VR) / Site Recovery Manager 6.1 (SRM) solution. I thought that the results would be worth sharing, Continue reading

GhettoVCB Restores and Windows Server 2012


Fatal error: Uncaught Error: Call to a member function id() on array in /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php:36 Stack trace: #0 /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php(538): CrayonFormatter::format_code('', Array, Object(CrayonHighlighter)) #1 [internal function]: CrayonFormatter::delim_to_internal(Array) #2 /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php(516): preg_replace_callback('#()#msi', 'CrayonFormatter...', 'diskpart\r\nlist ...') #3 /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_highlighter.class.php(166): CrayonFormatter::format_mixed_code('diskpart\r\nlist ...', Object(CrayonLang), Object(CrayonHighlighter)) #4 /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_highlighter.class.php(186): CrayonHighlighter->process() #5 /homepage in /homepages/24/d38633883/htdocs/www/wp/wp-content/plugins/crayon-syntax-highlighter/crayon_formatter.class.php on line 36