in the end, the whole thing turned out to be something else completely.
My fstab file specified a samba share on another machine that was no longer present. Little did I realise it but as my machine was booting up, it was halting when fstab tried to mount this directory and wouldn't resume booting until a key had been pressed.
Rather than lug my 19" monitor over to the server, I was just plugging in a keyboard and typing blind to login and restart the iptables service. What was happening, though I couldn't see it, was that my keypresses for logging in caused the boot process to resume. The keypresses were buffered up so when the boot process finished, it then whizzed through the login. It wasn't the logging in and restarting iptables that was making it work, simply the fact that it had finished booting.
Anyway, all's well that ends well. A cautionary tale for anyone who doesn't have a monitor plugged into their server.