iStat Server and opening port 5109 on OS X Mavericks

After upgrading to OS X Mavericks (10.9), iStat on my iPhone was no longer able to connect to iStat Server on Mavericks. I had vaguely recalled seeing the OS X Server installer tell me that ipfw should be disabled, so I disabled it. I didn’t really think of it at the time, but I had a firewall rule set to allow TCP port 5109 be opened for iStat Server … because simply adding it via the Firewall settings is System Preferences did absolutely nothing … for some reason.

So I recalled the installer mentioning pf and told me to use pfctl. That took me on a journey the OS X man page regarding pfctl and about an hour later I finally figured out how to make it all work … and here it is:

sudo vim /etc/pf.conf

Add this line to the config file (after the com.apple anchor is fine) where en0 is your ethernet adapter and port 5109 is the port you’re using in iStat Server:

pass in on en0 proto tcp from any to any port 5109

This allows TCP data on port 5109 to pass into your machine via en0. This allows it from any IP address, but you could have changed the first mention of “any” to an IP address in order to only allow from a single IP address.

If you aren’t using a wired connection, you can change en0 to en1, or if you’re uncertain which adapter you’re using, run the following command to see which is active on your setup, noting which has a status of “active”:

ifconfig

This should yield something like the following. Note how en0 is “active”.

en0: flags=[redacted]
	options=[redacted]
	ether [redacted]
	inet6 [redacted]
	inet [redacted]
	nd6 options=[redacted]
	media: [redacted]
	status: active
en1: flags=[redacted]
	ether [redacted]
	nd6 options=[redacted]
	media: [redacted]
	status: inactive

Save the config file and run the following to reload the config file, and verify using verbose:

sudo pfctl -vnf pf.conf

I also ran this, just in case:

sudo pfctl -Rf pf.conf

That’s all I needed and I was able to make my way into my machine. But, it wasn’t until I turned off SSL that I was actually able to connect to iStat Server. I’m hoping SSL is remedied soon! SSL now works once again!

XAMPP to MAMP

Tonight I decided to move from XAMPP to MAMP.

About a year (or so) ago my team transitioned from PC to Mac and when we went looking for an easy, self-contained Apache install, XAMPP was the answer.  Now we have OS X 10.7 Lion and well, I’m annoyed that XAMPP for OS X has not been updated since early March, 2010.  That’s right, over a year ago.

The reason I even began looking for a XAMPP alternative was that after upgrading to Lion, XAMPP just seemed to load pages slower than before, specifically on sites using databases that weren’t local to my machine.  Enter MAMP 2.0.  Newly released (literally yesterday) and plenty of people online giving it a thumbs up, I decided to give it a shot.

Because XAMPP for Mac (the Windows version has been updated much more recently) is over a year old, pretty much all the included applications are out of date as well.  XAMPP was on Apache 2.2.14 and although it wasn’t a necessity to have the latest Apache, it just seemed like I should be able to get it.

MAMP comes with 2.2.17 included (as of this writing, the current version of Apache is 2.2.19), which is at least newer than XAMPP.  Honestly, not a huge deal, right?

I guess what made me keep MAMP in the end is at least a decent GUI (non-Pro version) with some useful preferences (auto start servers) as well as phpMyAdmin built in.  Yes, I had phpMyAdmin installed with XAMPP (though it did not come with XAMPP), MAMP’s GUI makes it easy enough to get to these built in features that I actually find myself using them.

For reference, about 95% of my XAMPP Apache conf files made it into MAMP’s, save for SSL.  There are plenty of help online about MAMP and SSL, but basically you create your own certificate and uncomment a line in the main Apache conf file.

MAMP, a solution to a problem that didn’t really exist, but a solution nonetheless.