As many of you know, I recently switched from Windows to Mac. Now that owning a Mac is so trendy there have been dozens of articles and blogs written about how to use a Mac in a corporate environment (hooking up to an Exchange server, firewalls, etc.). In this article, I'll share what I've learned and discovered about using a Mac as a Citrix / Terminal Server admin. (And no, I'm not going to talk about running Windows in a VM on a Mac. I'm talking about a "real" Mac OS X in a Citrix and Terminal Server environment.)
Using a Mac with a Terminal Server
Let's start with Terminal Server. First, yes, Microsoft makes an RDP client for Mac. They call it the Remote Desktop Connection for Mac, and you can download it from Microsoft.com. Right now the RDP Mac client is compiled for PowerPC processors, but of course this will seamlessly run on Intel Macs. (I have an Intel Mac.) The only weird thing is that client printer mapping only works from PowerPC-based clients. I assume that Microsoft will release a universal binary version soon that will fix this problem.
A little quirk to keep in mind is that while cutting and pasting between the local and remote system works fine, you need to remember that each platform uses a different keystroke. So to copy something from your desktop to a remote server, you would need to use OPTION+H on your desktop, and then CTRL+V in the remote session. I can't tell you how many times I think that the clipboard is broken only to finally realize I've been trying OPTION+C in the remote RDP session instead of CTRL+C.
You can also connect to Windows Server 2003 console sessions with the Mac RDP client by holding down the Option key when you click the "connect" button. Very nice.
The only thing that's super weird about the Mac RDP client is that only one instance of it can run at a time. So if you have a session open and you lauch the RDP client from the Applications folder, it will just pop your current session window to the foreground instead of popping up the box that allows you to connect to a second remote RDP session. Fortunately there is a cool utility that fixes this problem called RDC Launcher. RDC Launcher is this little app that spawns individual and separate instances of the RDP client software. So instead of clicking on the RDP client to open new windows to connect to other systems, you click on the RDC Launcher and it pops up another client. I use this every day and routinely have three or four RDP sessions connected at the same time.
Using a Mac with Citrix Presentation Server
As for Citrix, yes, Citrix offers an ICA client for the Mac too. It's currently version seven-something (versus nine-something for the Win32 client), but it supports the main features like seamless windows, multiple connections, client printing, client drives and audio, etc. The Mac ICA client also fully supports MIME types in the normal way, so users accessing their applications via Web Interface can just click on an icon to run an application. Gone are the days where the temporary ICA file had to be saved to the desktop and then double-clicked.
There's no Program Neighborhood for the Mac, but that shouldn't really be a problem since it's compatible with Web Interface.
The only really annoying thing about the Mac ICA client is that the Option+H hotkey combination is not passed through to the remote seamless application. In the Mac OS X world, Option+H "hides" an application, which is kind of like minimizing an app in Windows except that hiding an app also removes it from the dock (the taskbar equivilant). It would be cool if the Option+H command could be used to hide individual seamlessly-published apps, but instead it's intercepted by the local OS and ends up hiding the entire ICA client.
Another cool way to access your ICA apps from a Mac is via the "Powertoy" components on CDN. One of these components is a Firefox browser extension that's essentially an ICA Program Neighborhood Agent plug-in for Firefox. This extension works fine with the Mac version of Firefox.
Finally, you can connect to Windows PCs using Citrix's GoToMyPC product from a Mac, but a Mac cannot be the remote computer that you're connecting to. However, because the GoToMyPC viewer is Java-based, you won't be able to cut and paste between your local and remote programs.
The biggest bummer about this whole Mac / Citrix thing is that as of today, there is no Mac client for the Citrix Access Gateway. This is a huge bummer for me. I guess it's kind of cool that Mac OS X has a pretty slick and totally integrated PPTP client, and I use it every day. But I still occasionally get stuck at a location that doesn't have the PPTP port open, and I'm jealous of my coworkers who can tunnel in via 443.
The good news in that front is that I interviewed Mark Templeton last week, and I made a passing remark about the lack of a CAG client for the Mac. Mark said that a Mac CAG client is definitely coming. Citrix is looking for strong Mac support since more and more are being sold, and Citrix needs to support whatever client devices the masses are using.