Newb: Please advise me on good working practices

The more time I spend on my Ubuntu 8.04 LTS + ISPConfig3 server (I only have the one server), the more petrified I become of screwing something up, not being able to clear up the mess and having to start all over again.

Can you help me establish some sensible working practices?

1) How do you set up test sites/sandboxes where you can mess about until things work and then efficiently move your work to the 'production' side?

2) What is the best way to take a snapshot of my server so I can 'roll back' to a previous state if I make a screwup?

3) Does it make sense to 'hard link' my config files and php.ini files to a separate folder and make regular backups of this folder?

Which files are the crucial ones on a mail/web server? (LAMP, Postfix, Courier)