Do you have a playpen?
Naughty step won't work because he has your attention - you have to keep him there.
However, a rather high sided playpen works wonders.
You can say "No ". If he does it again (within a reasonable amount of time, or he'll have forgotten the initial no) then say "I said no X", pick him up and put him in the playpen and turn your back on him and do some routine stuff.
Leave him in there for a few minutes, totally ignored and then take him out.
Repeat for bloody ages until the penny drops!
Oh - but NEVER take him out if he is screaming or he will think that his tantrum got him out! He must be calm to be lifted out.
Of course, if you can stop it before it starts, so much the better - spot the warning signs and go for distraction.
And there are times when all you can do is restrain him. You are FAR stronger than he is and, in exceptional circumstances, you can do a wraparound. You pin his arms down and wrap yours around his torso, have a leg over his legs and tuck your head down so he can't throw his head back and headbut you. You can experiment with what works best with that - silence, or shh shhh noise, or softly saying relax or whatever.
And if it's safe to do so, you can always let him get on with it and pretend you haven't noticed.
And you can also get out the crayons and sit at the table and start drawing a picture and laughing to yourself, while not noticing him having a strop!
And sometimes I used to put my hand to their lips and wobble to make a waah-waah noise while they screamed.
But this was for my personal amusement and probably a Bad Bad Thing.