"Savage" has a French origin, and means wild or untamed. (The French word "sauvage" is derived from the Latin "from the woods".)
"Rude", in its widest meaning, is anything basic, rough or unrefined. The modern understanding is "impolite" (ie. rough and unrefined behaviour).
These aren't dictionary definitions, but knowing the background of a word helps you work out the differences between many synonyms. Bookmark this page: www.etymonline.com