Das braucht nicht mal eine VM. Um Apache-Grundlagen zu erwerben, reicht sogar der XAMPP.
Ein eigener Server im semi-professionellen Bereich macht nur unter bestimmten Umständen Sinn. Sei es, weil man Webspace aufteilen und vermieten möchte, dort eigene Kunden hosten will, oder Software/Frameworks installieren möchte, die in den gängigen Webhosting-Paketen nicht enthalten sind.
Dem gegenüber stehen allerdings Arbeitsaufwand und Verantwortung. Ein Webserver mit fester IP erhält täglich jede Menge unerwünschter Anfragen aus den exotischsten Staaten, und wird, sofern nicht ordentlich abgesichert, recht schnell in eine Spamschleuder verwandelt.
Ich habe ein mehrmonatiges Seminar für Linux Web-Administration absolviert, gelernt, wie man einen DNS- und Mail-Server unter Debian einrichtet, Shellscripte schreibt und Cronjobs ausführt. Trotzdem hoste ich meine eigenen Seiten lieber per einfachem Webhosting-Paket. Dabei trägt der Provider die Verantwortung, und ich bin sicher, dass meine Mails nicht im Spam-Ordner des Empfängers landen.