phpBB has a useful feature called ban control. It can be used to ban several users to register to our forum. There are several methods to do this, but i think the most effective way to do this is by banning the domain address which is used for their email address. If you ban an ip address, there's a risk on it. What happened if someone who turned out to be a spammer was accessing the forum via public internet cafe? We could block the entire visitor on that cafe to access our forum. It's not a good choice.
What about usernames? It's not that good either, since bot can randomly pick any username they wanted, so you have virtually unlimited usernames to be checked on. So the best pick for now is to ban the domain. For example, one of the biggest spammers came from bigmir.net domain. It's some kind of a news portal, but i don't know which country is it from, since i don't understand the language they used on their site. In order to ban all users from this domain, go to administration panel and access the ban control. Put *@bigmir.net (yes, it supports wildcards) in second to the last field (email address) and from that moment, all email which directly comes from bigmir.net will be denied to register to our forum. I have used this method for several days and it's quite effective.
The major drawbacks is that i have to be very careful not to ban a white domain, for example *@yahoo* which will block all emails from Yahoo to sign up on the forum