Welcome to another article that I hope many of you will find useful if, like me, you have to manage multiple Mac computers at home or work.
Enter OS X Server!
Why OS X Server?
Amongst some of the features that OS X Server provides are:
- Centralized File Sharing for disks connected to your server or folders with the server itself. You can have UNIX permissions and access control lists (ACLs) to determine who gets access to what.
- Profile Manager, which is just a fantastic tool to aid you in configuring and managing Mac and iOS devices at home or within your company. You can tweak everything from mail accounts to system settings. Best of all, it supports push notifications so you can send out updated configurations to devices that are deployed and on the field.
- Time Machine Server, so you can connect multiple external disks (or use the internal space available in the server) and have all your computers backup to that place. Again, using ACLs and File Sharing you can determine where your users and devices get to backup their information.
- VPN Server which, as the name implies, let’s you create a VPN server that supports L2TP/IPSec and PPTP protocols for encrypted remote access to your network.
- NetInstall, in case you need to manage multiple OS installations, can be a huge time saver indeed!
There’s some other cool tools in OS X Server like Messages, Mail, Calendars, Contacts, Wiki, Software Update, Xsan, DNS, DHCP and more!
But, my personal favorite, is the Caching Server feature which is all new to OS X Mountain Lion Server.
Basically what this does is let you, on your server, establish an amount of space you want to allocate to cache downloads from the Mac App Store or for software updates. You turn on the service on your server and any computers connected to the same network as the server (either via WiFi or Ethernet) will automatically use the cached version of an update or software if it’s available. Otherwise, you will download it from Apple and it will be cached on your server.
I cannot tell you how awesome this really is. Managing 5 computers at home can be quite a pain, specially with software updates that weigh several hundred megabytes and need to be downloaded on each computer.
Great, but how do I get started?
At it’s core, your standard install of OS X includes some of the features that OS X Server enables, but you have to dig deep and use your command-line-fu to get to them. Quite clumsy if you’re like me and prefer a proper GUI to manipulate your apps and settings. To get OS X Server (assuming you are running Mountain Lion), all you have to do is open the Mac App Store on your computer and search for “OS X Server”. You will find the following app:
Buying and installing OS X Server will run you $19.99 (a very very reasonable price for all you get) and only takes a couple of minutes to install depending on your connection.
Once installed, go ahead and open the application where you will be presented with the following screen:
This will give you the option to setup your computer as a new server or connect to other servers you’ve already setup. In my case I purchased the current basic model of the Mac Mini to have it be a VPN, DNS, Cache and Continuous Integration server but feel free to use your personal computer or anything you have around that can be spared.
I do recommend a separate computer as, depending on the services you setup, you’ll probably want to have it up and running 24/7. I chose the Mac Mini because I can keep it anywhere and it doesn’t have to be connected to a display or monitor in order to manage and administer it. If you don’t want to spend the money on a new computer there are services like Mac Mini Colocation that host a Mac Mini remotely for you for a monthly fee.
Do not that you can use the Server app to both manage servers as well as upgrade any current Mountain Lion install to OS X Server.
Since I’ve already gone through the initial setup I’m going to click on “Other Server…” and choose my Mac Mini Server:
You may be asked to input your servers administrator username and password and the will be taken to the following screen:
I’ve got a server, let’s get it working!
Once you have your server up and running and have logged in using the server app, you can review your SSL certificates, setup your services, check out server logs and stats and even setup any local Airport or Time Capsule devices so ports and NAT is managed automatically for you depending on the services you enable.
As you can see from the screenshot, I am using DNS, VPN and Caching. DNS because it lets me use readable names for my computers as opposed to IPs, VPN so I can connect to my home network and access anything stored on my NAS or control my server and Caching so I get to install new software and updates in a few seconds as opposed to minutes or hours (depending on the download size for each of the computers I have).
The best part about the Caching server is that it just works. As opposed to Software Update server, where you have to modify the server each computer on the network points to, for caching to work you simply setup a cache size, turn on the service and any computers in the same network will automatically use it.
It doesn’t get any simpler than that! And the fun doesn’t stop there. You can add users on your server for ACLs, setup push services, make it a web server and tweak things to perfection.
I know that a server may be overkill in some (or most) scenarios, but if you’ve ever wanted to do certain things within your home network or while on the road, improve your productivity or workflow, manage multiple computers or have a better way of controlling devices at your company, then I highly recommend you take a look at OS X Server.
A Mac server is cheap, it’s very easy to use and setup and, even though it may not be as robust as a Window Server (specially with Active Directory) or a Linux server, you will surely get a lot of benefits out of it. I love the fact that I can connect to my home from wherever I am and access my computers or files, I love being able to speed up my software installs or simply have a dedicated web server for testing as well as a continuous integration server.
Plus it can most likely run on the computer you use for your iOS and Mac development anyways so you don’t need any special hardware or anything.
I hope you’ve enjoyed this article and learned about some of the benefits you can get out of running your own server at home. For me the VPN and Caching server alone are worth the $20 bucks it costs.
What do you like the most about OS X server? What would you like to use one for?
Leave us your questions and comments below and until the next time 🙂