I just think it's senseless debating about what he did in Vietnam. The entire war was an atrocity. They were shot at during the night by the same people who they had seen picking rice the previous day. Nobody knew what the hell was going on. Villages got torched, people got involuntarily relocated, and it was just an all-around horrific, nightmarish mess. Whatever Kerry actually did, you can bet it wasn't anything that was unusal, and also that there were people who did much worse.
As for the ads where Vietnam vets talk about how Kerry didn't earn his medals, in all probability those are people who were angry at him because he protested the war when he returned home. They arrive at the conclusion that because he protested the war, he was attacking the soldiers, so he must not deserve his medals.