2
I'm not sure what other people do, but my approach has been to create a custom group that doesn't have access to any part of the site. If a user creates problems I move them into the 'banned' group, so if they login they get bounced out.
There's nothing to stop them from registering a new account, but they have to use a new email address each time as they can't register using the old one, which would consume a bit of their time.
So far nobody has bothered to register a second time, but then I'm only being bothered by handbag salesmen...