Los mensajes privados, simplemente, es un enviar.php que sea un formulario, y introduzca los datos en la db, y el leer.php que buscaría por el nombre del receptor, y en caso de haber, pues los mostraría, sino con un else, diria que no hay mensajes.
Lo de banear ips ni idea...
Porcierto, te recomiendo hacer tu sistema de usuarios de 0, es mejor...