What type of server are you planning to run? I think any *nix server is fine, So I don't see why #! can't be a good server, since it is based on Debian.
If you are going to run a server which will be expose to the Internet, then I have the following suggestion
1) Have two server, One to be Primary, another as a backup, in case the Primary goes down. The backup one must be the same spec as the primary so you can make an image and dump in on when you need to. Or even better have 3 server, one as primary, the other one as a dedicate server in case the primary is down, and the 3rd as a testing server.
2) Read this as your bible if you are running a Web app server. https://www.owasp.org/index.php/Category:OWASP_Project
3) Also do network layer testing using either Nessus or OpenVAS, then use metasploit confirm if you are really vulnerable. And fix all the problem before putting your server online. So if you have new application or setting you want to add to the primary, do the testing on the secondary server or your third server (testing environment).
4) If you are running Web app server, test it with w3af, skipfish, sqlninja, sqlmap, nikto and Websecurify (My buddy pdp created this).
5) Put AIDE on it.
6) Use http://wiki.debian.org/SELinux
Good luck
KB