moraliser

noun

A person who lectures others about right and wrong.