How to make homemade campfire colors?

Such as blue, green purple etc flames.

Use different metal salts.

Magnesium makes white. (epsom salts)
Copper makes blue I think.
Sodium makes yellow. (table salt)
etcetc.
Typically you put different chemicals into the fire to make different colors. There is a good chart on this site that lists the chemicals to use to get different colors.
http://chemistry.about.com/cs/howtos/a/aa052703a.htm