If all else fails, there's the old fashioned way - On Ubuntu or debian,use dpkg --get-selections to dump out a list of installed packages, and install them with dpkg --set-selections. The equivalent of this for red hat based distros is yum-debug-dump and yum-debug-restore (optionally with --install-latest).
Create the same users as the source system if necessary - cat /etc/passwd
should list them out, and you can check with diff to see if the two lists are identical.
Then use rsync to duplicate your /etc/
folder for settings, various /home/
folders for users (and check permissions here) and other folders like /var/www/
. Test, make sure everything's there and working, and starting up as needed, and you're done. Takes me less time than to set up a fresh server.
Sometimes, the old, simple ways are the best. If you work this out manually, simply write a script that will replicate this off your current server automatically.