I'm fairly sure this is a topic covered in @DarthCoin's guides...