RE: good dog but scared of people!
Socialize him as much as you can. Walk him around town but be careful. You've got to let him know that these people are your friends. I had a friend that my dog was utterly afraid of. My dog is not aggressive, he's timid, but after many sessions where my dog was taught that he was alright, he got used to him and is now able to hunt with him and treat him like family. Some dogs just need to learn the difference between friend and foe. Treat everyone like old friends.
If your dog is bent on biting him, you will have to try a muzzle. I would put it on the dog and let the friend sooth himand pet him. Treats are one great way to let him know who's a friend. If you don't have time to let a dog warm up to others when you have company, put him in his kennel and keep him there when people are over. Don't let your dog think he's being punished though.
Socializing is the big key. Some dogs take longer than others to warm up. My dog is timid and scared of people where as others may show aggression.
Good luck to you.