For a long-range hook, or haymaker, "counter jab" or "stop punch". For a short range hook, circle to the side, around your opponent.
I used to box, before getting into Karate, and my first fight was against a guy who liked to hook, rather than cross.
He started with some long range hooks (not a full haymaker), which I easily stopped with a "stop hit" someone mentioned earlier.
It works like this: A quick jab with your left, while rolling your thumb to the ground will raise your shoulder up and guard your face. Meanwhile, tuck your chin to "hide" behind the wall your shoulder just gave you. This will cover your temple to your shoulder.(It's bad form for karate, but works well against a puncher.) This should hit them hard in the nose, while catching their forearm against your upper shoulder. If you have more time (a haymaker) outside block with your palm forward, then jab from that position, so you don't stop your motion. Be ready to suck your elbow back into your body, though, because you just opened up your ribcage to attack. So don't leave you jab "floating" out there, but bring it back as fast or faster than you sent it out.
When he realized his nose was going to get broken if he kept that up, (in fact, at that point he thought it was already broken) he switched to a "short range" hooking strategy:
Usually he would charge me, get close, then start hitting me one-two with the short, powerful hooks, and his forehead almost buried in my chest. I got clobbered, even while covering up, because with his elbows bent, he could reach around my guard easily, and hit me in the temples, which rattles you, and screws with your balance.
Afterwards I talked to some of the more experienced guys, and then tried it, and it works. The answer they gave me was this:
Do what I did for the long-range hooks, the "stop-jab", or "counter-jab". But if he charges for the short-range hooks, step to the side, like a bullfighter, and try to knock him off balance.
The short-range jabs only work if your opponent is directly in front of you, and since my opponent usually has to charge me to get there, he's committed to a certain "line of attack". If you step off line, you can get on his hip. From there you have a clean shot at his temple. Or even better, now that I know some throws, locks, etc. -- on my opponent's hip is a great place to be!
The problem is that most of us are hard-wired to either stand our ground, or retreat straight back, with is exactly the worst thing to do against a short-range hook. You have to train your body to be able to shift sideways, or back-and-sideways. It's just not a natural movement, especially if you're a big guy like me. I think the FMA stuff works the "triangles" which are great for this sort of thing.