Just like the above poster said, blocking gmail, yahoomail or hotmail will definitely block a lot of real users and i don't think you'd want that.
Anyway it looks like the amount of spam posts, not only in forums but also in comments, has spiked (again) lately.
So a solution might be to activate captcha at login or at post. It won't eliminate spam completely but i think it will get rid of alot of spam posts or topics (not human spam though).
I recently stumbled onto a little plugin that looks really interesting and i don't think that spammers have a way of getting past it (not yet at least). It's a captcha but a Puzzle based one. I think it looks promising:
http://www.phpbb.com/customise/db/mod/keycaptcha/.
Just a heads up: it needs
phpBB Version(s) 3.0.8____________________________________________________
Samsung Galaxy S3 Release Date - Just Cannot Wait For It