• On the cheap I'd suggest running any old multicore desktop with a big usb hub that you can present as various drives, with as much cheap ram as you can cram into it, so you can practice setting up a domain with several machines.

    Run everything on a VM so you can blow it up without consequence.

    https://www.virtualbox.org/

    Server 2012 evaluation edition which is good for 180 days.

    http://technet.microsoft.com/en-us/library/jj574204.aspx

    SQL Server 2012 developer edition which should be under $100.