I recently found out that Clean URLs might simply not work on some web hosters, e.g. 1&1 Internet, although mod_rewrite is enabled on these systems. This is because these hosters might have some special ways of enabling mod_rewrite.
All seems set up correclty, your web hoster says that mod_rewrite is working and can be used, still Drupal complains that your web hoster does not allow the rewriting of URLs and that the system administrator should be contacted.
This is what happens:
In Drupal's .htaccess file you might find a statement just above the Rewrite rules. Now, some web hosters, especially 1&1 Internet, seems to "hide" the module although it is there (I am not an expert on large scale web hosting technology and setting up Apache Servers in typical large scale web hosting environments, so if anyone has an explanation, please let me know!)
So to make Clean URLs work in such an environment, simply delete the line or place a # in front of it to comment it out, look all the way down and find and delete that to (or palce an # in front of it). Also, especially for 1&1, it's vital to tell the server where the RewriteBase is, even if it is in the web root, so change "#RewriteBase /drupal" to "RewriteBase /" if your site's right in the web root or "RewriteBase /drupal" if it is in the subdirectory "drupal"...