OS does not matter much, go with what you know. Linux or BSD is normally used.
CPU/RAM/HD depends on the usage pattern. RAM is always nice to keep files cached instead of getting them from the hd but how much RAM and hd you need depends on the site. If a lot of files is to be cached you will get better speeds with several smaller hds rather than one large.