This might sound like a weird question, but it's something I've been talking with a lot of people about lately, and I'm curious to hear from people here.
My contention is, to be a Scrum Master, a person should have at least some hands on experience with Scrum.
My general rule is to gain experience as a Developer before trying to take on the accountabilities of a Scrum Master.