FreeBSD is my primary choice when I need to install a new server and if I don't need virtualization (OpenVZ, Linux-VServer, XEN, Vmware, ...). If I need to implement a virtualization solution then CentOS is my friend.
Only I would like to point some interesting sysctl variables which you can set on a FreeBSD box:
TCP and UDP black hole:
To prevent a user from seeing what other processes a user is running (via ps aux or otherwise), and to prevent a user from reading dmesg.