Root Rooting and other things :/


Im completely new at this but im ok with things like this and taking on big projects :) I already managed to get to learn how to adb to my phone and push and pull files . . . . but this is what I need to do but finding it very difficult . . .

I have a HTC Desire HD and its running 2.2

First off I need to root the phone and I was wondering the best and most reliable software for this (I used z4root as temporary root to try and edit host file and have a play around)? I need to be able to edit the host file and it be a permanent change . . because I managed to adb pull and then adb push but as soon as I rebooted the phone it reverted back to the old host file . . . also I need to know how to set up VPN on a rooted android . . . because what I have is a openvpn.conf ca.crt client.crt client.csr client.key and ta.key. Any help and any answers to any of my questions would be greatly appreciated :) thanks for taking your time to read this :)

**Also** if I could do all this without rooting the phone I would also like to do it that way :) I think I would be able to do the openVPN on my own . . but I did spend about an hour trying and couldnt figure it out . . . so thats why I would like your help but I may be able to do it on my own . . the main thing is the Host file :)

The reason I need all this is for work :) as we have to connect to openVPN and put some stuff in our host file :)

Im also running Mac