There are essentially two methods of finding keywords: the free ways and buying software. Guess which is better? :-p However, you can certainly find good keywords the free way. Here's how:
Since the free way is more tedious, I try to get 250 searches a month with less than 10,000 results. Since I try to optimize for at least 9,000 searches a month, you'll need 30-36 of these. First, go to adwords and enter in the website of the product you're promoting. Copy all of the 3+ word keywords to notepad (or export with the tool provided), then copy paste the whole list back into the keyword tool, and suggest new keywords. Next, check each phrase by searching it in Google in quotes. If it has less than 10,000 results, you have a winner! You can also use the free tool here: http://tools.seobook.com/keyword-tools/seobook/ , which will suggest long tail keywords.
A few words of wisdom: If your keywords aren't grammatically correct, skip them. It's such a pain to optimize for them that it isn't worth doing. Also, always keep in mind what the person searching that keyword is looking for. If they're looking for information, and not to buy, skip that keyword too.
If you have keyword software, find 5-6 keywords that get 1500 searches monthly and have less than 10,000 results. Next up: link wheels.