He is whining in the crate in order to get your attention. If you shush him, or in any way acknowlede the whining, you are reinforcing a bad behavior. When you are trying to get your dog to accept being in the crate, consistency is very important. So you need to be 100% firm in ignoring his pleas to be let out!
It may also help to develop a routine for going into the crate. Basically, when you want him to go in the crate, put him in the crate and make him sit down. If he is a wild one, you may be able to do this by getting him to look at a treat and them moving it up over his head. Then give him the treat. If he understands getting into crate and sitting = treat, then he will start to get into the crate on his own and sit (some people teach this as a command--like "Kennel up"). Maybe give him a few treats, so that he will be too wrapped up to notice you closing the door and leaving.
I do this with my dog every day when we leave--he goes right in, sits on his bed, and very excitedly waits for his treats.
For nighttime,my suggestion would be to put him in his crate and once he's inside, walk away and ignore him. He should go to sleep. IF in a few hours he wakes up in the middle of the night and starts whining again, there is the chance he might need to be whining because he has to go potty. So, take him out of his crate, and in a business-like way take him out to go to the bathroom. If he goes potty, praise him. Then put him back in his crate, and both of you go back to sleep till the morning, or if he's extra young, till he wakes up again in a few more hours.