All of the Masks can be found at the Happy Mask Shop in the Hyrule Market. Therefore, this part of the FAQ will tell you who to give them to, not where to find them. You must sell a mask to make the next one become available. Sell them all and you'll get access to some special masks.
Go to the guard in Kakariko Village who stands at the entrance to Death Mountain. Put on the Keaton Mask and talk to him. He'll pay you 15 rupees for it.
Take the Skull Mask to the lone Skull Kid in the Lost Woods. He will pay you 10 rupees for it, although it cost 20, so you'll lose 10 rupees on this transaction.
Take the Spooky Mask to the little kid that wanders around the Kakariko Graveyard during the day. He'll pay you 30 rupees, which is full price for the mask. You won't make any profit, but you won't lose anything, either.
Sometime after you beat the third dungeon, a Running Man appears in Hyrule Field, jogging a set path around Lon Lon Ranch. Once you find him, Z-target him and follow him until he takes a rest. Talk to him while wearing the Bunny Hood to sell it for a ridiculous amount of money - so much it fills your rupees completely.
Note: I am not exactly certain on the conditions that make the Running Man appear. Some sources claim you have to travel into Adult Link's world and come back before he appears, but that is not true because he showed up for me before I did that. Other sources claim he's there immediately after beating the fourth dungeon, but I waited near Lon Lon Ranch for quite awhile, even after getting the Ocarina of Time, and he didn't show up right away. It seemed to me like he finally showed up when I got the Giant's Wallet from the House of Skulltula, but I've seen some sources claim he's shown up for them even with only having the Adult's Wallet. So, I dunno. Just keep checking that area after you have all three Spiritual Stones and the Ocarina of Time and eventually he should be there.
Once you've sold the Bunny Hood to the Running Man, return to the Happy Mask Shop in Hyrule Market, and you will get the Mask of Truth. Unlike the previous masks, the Mask of Truth is not sold nor given to anyone. However, you can use it to talk to the Gossip Stones found throughout the game to hear secret hints and messages.
Along with the Mask of Truth, you will now be able to borrow any mask that you want from the shop, including all the previous masks, at no charge, but you can only carry one at a time.
After you've sold the Bunny Hood to the Running Man, several masks become available to borrow anytime you want. The Zora Mask is one of them, which is basically the face of a Zora.
The Goron Mask will give Link the face of a Goron.
The Gerudo Mask will make Link look like a girl. (Yes, the game actually says that.)
These three "Hyrulian race" masks are mostly just for fun, although you can take them (as well as the other masks) the Forest Stage in the Lost Woods to see how the Deku Scrubs react to them. Sometimes you'll get rupees. Sometimes they'll get offended and attack you. Other times, you'll get an item upgrade.