Parents first and foremost, but I think it's ok to teach in schools as well, so long as they are explicit in letting parents know what will be discussed and it should be optional if parents don't want their kids to attend. The sex ed that I had in school was really pretty good and informative, but my parents had already had "the talk" with me before I actually attended the class so I knew what to expect. I don't think many parents do well with that these days, maybe it's the parents that should go to sex ed, lol!
And the stories that crop up about presenting kids with porn and talking about sex positions and junk, yeah that needs to stay out of school.