Это ругательство пришло из Германии...
Немецкое schelmen означает «пройдоха, обманщик»...
В России во времена Петра I оно приобрело ещё более негативную окраску. Он ввёл шельмование — особый вид наказания для дворян. Провинившегося дворянина приводили на виселицу, к которой была прибита табличка с его именем. Затем над головой провинившегося ломалась шпага, что символизировало лишение дворянских прав. После такой процедуры человека могли сослать в Сибирь, повесить, а то и высечь, как простого холопа.
С тех пор под глаголом «шельмовать» подразумевается публичное осуждение, травля, клевета...