could you tell me the right preposition here : he knocks at the door / on the door

Either one is fine. I'd use "on" but "at" is not incorrect.