Source: Journey to Forever
We've found one good answer. We planted three stalks of Thai lemon grass (Cymbopogon citratus) we got from the local supermarket, and after a few months they'd grown into a composite clump about 15" across. We used a lot of stalks for cooking, but the clump didn't seem to get any smaller. We cut the tops every couple of weeks because it shaded out the other herbs in the herb bed (lots of green stuff for the compost), but it quickly grew back. And we found it keeps the mosquitoes away. It contains something very similar to citronella oil, it's a safe and natural insect repellent that's just as effective as the commercial chemical products, especially when it's fresh. In fact lemon grass is more effective than true citronella.
Rubbing the long, grassy leaves on the skin worked well, but the stalk worked even better. Take one stalk of fresh lemon grass (grip it near the ground and give it a sharp sideways tug to break it off from the clump), peel off the outer leaves, snap off the grass blades behind the swollen stem at the base. Bend the stem between your fingers, loosening it, then rub it vigorously between your palms so that it fractures into a kind of fibrous juicy mass, and rub this mess over all exposed skin, covering thoroughly at least once. Pleasant on the skin and effective: 98% protection at the Beach House at sundown, 100% any other time, and the effect lasts about 4-5 hours. In most places, where the mosquitoes are less fanatical, you can use less and it'll last longer.
We tried making tinctures so we could spray it, and this worked just as well.