Originally posted by: Nothinman
It's not about where you're focusing, it's about covering all of your bases and layering your security properly. Why give them a compiler if you don't absolutely need to? Yes, make them jump through some extra hoops and you might make them waste enough time to get caught. Or more likely it'll just be some script kiddy that doesn't understand why his rootkit won't install and he'll just move on.
You layer security to keep people out. Once they're inside they can generally do what they want. If you're doing your job properly (or allowed to do your job properly

) in the first place most of the script kiddies that donn't understand what
-bash: cc: command not found means won't be getting on the system. Or they aren't given anything worthwhile once there.
Wait, isn't that what you've been saying? Not quite. Keep your webserver chrooted. If there is nothing in the chroot like gcc, perl, etc. there won't be a way to break out of it(*). They also won't have the tools to transer files, unless you've broken your webserver.
But what if they break into SSH? They shouldn't. Don't use passwords, use privsep, deny root logins, and put it on a non-standard port. If they find a root hole, at best they'll probably land in the privsep chroot (/var/empty).
Different approaches for different people. I personally don't like people on my systems without my permission.
Personally, I find the compiler much too useful on my home systems to not include it.
*: Without a _major_ kernel(?) bug.