Ok, you read the title of this post, and you’re thinking “hey, this guy must be goin’ cuckoo for coco puffs.” No, this is FOR REAL. Here’s the deal: with the help of some people I met this week (Micheal Bell and the rest of the students from my VI3 Fast Track class in Irvine), I figured out how to run the vSphere Client on my Mac OS X. This is something that I’ve wanted to get up and running for a long time, ever since I converted from the Church of Gates and bowed down to the one true computer deity – the all enlightened Steve Jobs. That’s right folks…I’ve just plucked a bright shiny Apple from the Tree of Virtual Knowledge.
Let’s face it. All of us that use Macs would really love to have a native vSphere Client from VMware, but this is something that I don’t think they are going to focus on very much, at least in the near future. Up until now, If you wanted to run the vSphere Client on Mac OS X, you could go about implementing that via VMware Fusion by running a VM in Unity mode. If you didn’t know about Unity view, it removes or hides the VM from the screen and simply displays the applications that are running in the VM. That’s great and all – and I personally love VMware Fusion and think it’s a freaking awesome product – but I always thought it would be so much better to just have a client on Mac OS X that didn’t require me to load a VM just to get access to it.
Well, as the Beatles said, “I get by with a little help from my friends.” The other day, we finally figured out a way to get access to the vSphere Client on Mac OS X. Because this solution has only been done in a select few environments, it work for some but not others… so don’t hate! So far this has worked for me at my office and while connected remotely to my environments via VPN.
The way I got it to work was by using a few open source components and by installing a few extra bits of software on my Mac. I have to say that I didn’t really invent the wheel here. All I did was use X11, MacPorts, rdesktop, and Seamlessrdp to create a remote terminal session to a Windows Server 2003 R2 VM running in a remote VMware Fusion VM and also another one hosted on an ESX Server in my lab. Here is a step by step walkthrough detailing what I did and how I got everything flowing:
- Install X11 on your Mac’s, you can find that on your Mac OS X DVD or it can even be downloaded from the web.
- Go to the MacPorts site and download the version of the tools that matches your Mac. MacPorts also known as DarwinPorts is a free/open source package management system that simplifies the installation of software on the Mac OS X and Darwin operating systems.
- After installing the MacPorts packages, open a terminal and run the ports update command to update the application to the latest and greatest version: sudo /opt/local/bin/port -v selfupdate
- Install the rdesktop client with MacPorts by typing the following command in the Terminal: sudo /opt/local/bin/port install rdesktop
- After the application is installed, confirm that you have the latest version of rdesktop by typing: /opt/local/bin/rdesktop scroll to the top of the Terminal windows and see that you have rdesktop version 1.6.0.
- On the Windows Server 2003 VM, configure a user account that has permissions to access the vSphere environment. This could be a local system or Active Directory based account.
- Configure the Windows Server 2003 R2 to allow remote desktop connections, and make sure to add the users that will be allow to connect to that system via RDP.
- Install the vSphere Client on the Wndows Server 2003 R2 server
- Modify the Windows Path Environment Variable and add the path of the directory where the vSphere Client executable file is located, the default path is always: C:\Program Files\VMware\Infrastructure\Virtual Infrastructure Client\Launcher make sure to put a semi-colon ; at the end of the path currently listed in the variable value field.
Environment Variables

- Download the seamlessrdp application and extract it to the root of the system drive called seamlessrdp
- Test the connection to the Windows Server 2003 by opening a session from the Mac by typing the following command in the Terminal window: /opt/local/bin/rdesktop <ip or FQDN> A remote desktop windows should appear if everything is working correctly and you can connect to the system on the network.
- Once the connection to the system works, test the seamlessrdp connection to the vSphere Client from the Mac by typing the following command on the Terminal window: /opt/local/bin/rdesktop -A -s “c:\seamlessrdp\seamlessrdpshell.exe VpxClient” -u username -p password -a 16 FQDN or IP
syntax breakdown:
- -A = Start application in seamless mode
- -s = Specifies the path to the location of the Seamless files
- -u = Username
- -p = Password
- -a = Color bits (8, 16, or 32)
After the connection is made to the client, the capability to connect CD-ROM, Floppies is not available because it’s an obvious remote connection.
You can now launch the application from the terminal everytime or you can setup an icon for it so you can keep it in the dock.
Setting up Icon To Launch vSphere Client application:
- Use a text editor and open a new document
- Make sure is set to a plain text format
- type the command used to connect to the Windows Server 2003
- Save the file as vSphereClient and use the .command extension. Go to the location where the file is saved and use the Get Info and select to hide the extension on that file. This way you dont have to see that .command on the file and it looks like a regular icon in the dock.
- Make the file executable by opening the Terminal application and entering the following command: sudo chmod 777 /path/to/vSphereClient.command file
- You can now change the icon of the file to something you like or something that identifies with VMware.
This worked great with Windows Server 2003 R2 as the target server that I used to host the vSphere client, but when I tried the same steps listed on a Windows Server 2008 they didn’t work. I was able to open a remote desktop session to the VM but the session was a bif window and it didnt opent he application at all. So If any one with skills on UNIX, Linux, OS X can get this to work with Windows Server 2008 please let me know. Get ready to bite your chompers into that apple!
vSphere Client on Mac OS X Demo



June 6th, 2009 at 9:55 pm
Wow that is some super hackery!
Yuck.
June 6th, 2009 at 11:14 pm
Very nice!!! i just do all the step on my Debian box and now i dont have to RPD into the machine with the vpxClient!!!
June 7th, 2009 at 3:03 pm
Why not just use Vmware Fusion’s unity mode to display the VIC UI on macOSX – you don’t need to install seamless rdp with Rdesktop for it and it performs a lot better. Is there any benefit to your approach than better geek cred?
June 7th, 2009 at 4:13 pm
Chetan, there are people that don’t want to have to load a Windows VM in Fusion to have access to the vSphere Client. This could be because of preference or they dont have Fusion, or just dont want to run Windows period. Believe it or not there are people that I have come across with that are like that. This will work for Linux and Mac. I agree with what you say about loading it in Fusion and everything, but this is just another way to get what we want, without having to load Windows.
June 7th, 2009 at 8:11 pm
Dood! Nice. I haven’t had a chance to work with it yet – too busy building YOUR NEXT CHALLENGE. I have the PXE solution 90% – will send you once completed.
June 7th, 2009 at 10:22 pm
Hey Michael, I have a PXE solution for Virtual Infrastructure 3.5 and vSphere working 100%. I call it vPXE and I’m in the process of turning it into a VMware Appliance. When you get yours completed I would love to see it and try it, to see what you do different.
June 8th, 2009 at 9:47 pm
I had time to get the vsphere client working on my mac tonight – all good. I will follow-up on the PXE stuff soon. Thanks!
June 9th, 2009 at 6:01 pm
I’m wondering what this means in VMware language…
http://communities.vmware.com/message/1273437#1273437
June 10th, 2009 at 1:56 pm
I think that is now something that its being consider by VMware, but dont hold your breath on this yet. I personally started talks about the native mac os x client and Mike DiPetrillo had something in the works but I’m not sure if he got a chance to finish it. Hopefully something will come up in the near future.
June 13th, 2009 at 3:13 am
[...] I’m talking about the marriage between the vSphere Client and Mac OS X. [...]
June 30th, 2009 at 6:35 pm
[...] possible what I was starting to think would not come to pass. Mac users rejoice – you can now run vSphere from your Mac. No, not using Fusion. It’s [...]
June 30th, 2009 at 7:55 pm
This maybe counter to the whole vibe here, but this has been done via Citrix ICA for years. I have published what we now call vCenter since the 1.2 days.
July 1st, 2009 at 8:30 am
Hey Michael, you’re right but like you said that solution requires Citrix, and what I’ve done here is all with free open source tools that everyone can use without the dependency of Citrix which can be a pretty expensive solution to acquire. : )
July 10th, 2009 at 4:17 pm
[...] vSphere Client on Mac OS X – while this is not a native vSphere client on Mac OS X, it is an alternate way (maybe even faster) of running the vSphere client than having a Windows VM in Fusion (via Punching Clouds…still love that name!) [...]
July 10th, 2009 at 8:01 pm
Anyone get this running on XP? I get the rdp window fine, but it doesn’t launch the app. If I run the command from the wxp window, it does work however, so I think I am configured ok, but probably missing one step.
July 11th, 2009 at 1:34 pm
Well, I always live in hope, then die when I get into the nitty gritty details. The hope is for a native Mac client.
Your first paragraph says: “I figured out how to run the vSphere Client on my Mac OS X”. No you didn’t. The vSphere client is running on a Win box, right? You’re just using another method to remotely control it, and we’ve seen several ways of doing that over the years.
How is your more complicated method any better than just running the free Microsoft remote desktop utility (for Mac)? Ok, you get a few points for using open source, but in the end the client is running on Windows. Still need to have a windows box running for this to work.
(drop me an email if I’m missing something here …. I was just searching for something else and ran across this, probably won’t remember to come back and check comments)
July 25th, 2009 at 7:53 pm
[...] to integrate the client seamless to your OS X desktop. Here is the write-up and procedures right here. Also a picture is worth a thousand words, so here is a quick snap of my MacBook [...]
August 4th, 2009 at 5:04 am
Ehm.. why do you need Windows 2003 Server to run software under OS X?
August 7th, 2009 at 7:40 am
WIndows Server 2003 is where the vSphere client is actually installed. The way I did this is by having a remote connection to that system but it only shows the application that you launch. There is no real vSphere client for Mac OS X yet, but this is a way that I got to get around from doing something else like loading a VM in Fusion just to use the vSphere Client.
August 12th, 2009 at 10:26 am
Meh. The title of this post promised a lot – vSphere Client on OS X – but didn’t deliver. Sure, you’ve come up with a more seamless-looking way of accessing a remote app via RDP, but ultimately that’s what everyone’s been doing all along – and frankly your technique requires a helluva lot more work than just launching a normal Remote Desktop client. Yeah, it’s nice to have a pretty icon and connect right to a given app – but jeez, it’s a lot of work for what’s basically cosmetic. I’ll continue praying for a native client.
August 30th, 2009 at 9:30 am
You may also want to point out that the installation of Xcode is required as well. I’m also hoping I can get this running with an XP virtual on the vsi machine.
September 19th, 2009 at 1:52 pm
..or you could just enable RDC on the VM windows instance and use RSC for MAC to connect…. works like a charm!
October 3rd, 2009 at 1:37 pm
Can you help me here, i’am new to mac. i did follow all the steps to get it working but when i run the install rdesktop command it returns with an error;
The ports tree has been updated. To upgrade your installed ports, you should run
port upgrade outdated
tijmen-lustigs-macbook-pro-17:~ beheerder$ sudo /opt/local/bin/port install rdesktop
—> Computing dependencies for rdesktopError: Unable to execute port: can’t read “build.cmd”: Failed to locate ‘make’ in path: ‘/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin’ or at its MacPorts configuration time location, did you move it?
tijmen-lustigs-macbook-pro-17:~ beheerder$
please advise
October 7th, 2009 at 10:22 am
While Citrix may be expensive, you could also install 2x ( http://www.2x.com ) onto the vCenter server and I believe there is a 2x client for Mac. With this, you could tunnel your RDP session over SSL. Nonetheless, I like it.
October 12th, 2009 at 8:13 am
Tijmen Lustig: Install Xcode (Xcode 3.1.4 for Leopard or Xcode 3.2.1 for Snow Leopard) to solve the problem!
November 10th, 2009 at 8:49 am
There’s really no good answer in this thread to why you shouldn’t just download the free MacOS X remote desktop client fromMicrosoft site to jump many steps ahead of what’s laboriously detailed here.
December 10th, 2009 at 10:31 am
“Awesome,” I thought, “running vSphere Client natively on OS X. THAT is noteworthy.” Then I read what you did. Feh. Been doing this forever, it seems, with CentOS (rdesktop/tsclient) and OS X (RDC.) There’s no benefit to your kluge, as others have previously remarked.
Actually, I’m not that fond of vSphere Client for most of my work (ymmv) – too heavy. What is really cool though is it’s way lighter little brother, vmware-vmrc.exe, but this also runs in a Windoze environment.
December 23rd, 2009 at 10:26 am
Just a quick note: you probably don’t want to use “chmod 777″ on the shell script as it creates a file that is readable (good) and writable (bad) by anyone on your system.
A nasty person could now replace the contents of the shell script with “rm -rf /” and you’d be a bit surprised the next time you tried to connect to vSphere.
Something like “chmod 755″ is probably more reasonable.
May 19th, 2010 at 1:56 pm
[...] Kudos to Michael for providing us with a valuable document detailing an X11 hackery to get vSphere client running on Mac: http://www.punchingclouds.com/?p=856 [...]
June 7th, 2010 at 6:17 am
You should have advertised this as what it actually is, “dedicated RDP session to vSphere client for Mac OS”. Its not a ‘Client’. Grrrr, thanks for building my hopes up for nothing.
June 7th, 2010 at 6:27 am
I clearly stated in the post that is not a native vSphere Client, and also that it was not running in Fusion Unity mode. this works for me even today. I dont like having to run a VM in fusion just to gain access the the vSphere client. For you Mac users just hold on a bit longer, your wishes will be answered.
June 14th, 2010 at 12:03 pm
Or.. you could just setup the Windows 2003 box with terminal services and install 2x (http://2x.com) for free and publish the app.