My daughter is a little on the shy side as well. I will sometimes (more often when she was younger - she is 8 now) respond "for" her so as not to seem impolite. Afterwards I might talk to her about the "conversation"... Your classmate said 'bye' to you. Why didn't you tell her 'bye' back? and then see what she says. Usually the answer would be on the order of "I don't know". Then I would tell her that that was alright. It is nice to reply when your friends talk to you, but you don't HAVE to. If it is an adult (the grocery store clerk, someone I know that she doesn't in a store somewhere, a "stranger" at church) telling her bye - then I may or may not say anything to her at all, after the fact. It can be very confusing to explain social cues and politeness to young kids in an age where we are constantly on alert for "stranger danger". So I try to let my daughter's "gut" instincts guide her. If she is uncomfortable talking to someone I don't force it. She must have some reason, even if, like she tells me, she doesn't understand what it is. I want to NURTURE that gut instinct in her.
She is perfectly capable, at other times, to want to roll down the window of the car and yell out across the parking lot 'goodbye' to a friend at school. A lot of things can influence their openness and comfort with talking to people. I would not make an issue of it for your son. He is still very young. No one will be offended if you prompt him by saying "tell Billy 'bye'" if he doesn't respond to one of his friend's farewells. But if it is an adult that is expecting an answer, I might respond myself on both of your behalf's ("we'll see you tomorrow" for instance) and not make any issue of it to your son. In time, when he is comfortable (with the person, the location, the audience, his mood, whatever) he will respond... Don't rush him before he is comfortable.
one other thing: be careful about telling people "he's shy". You don't want to talk about him in front of him, nor create a self-fulfilling prophecy. I like the M. who said ask your son "are you feeling quiet today?". That is a good way to approach it.