В Drupal есть родной фильтр, который позволяет ко всем ссылкам прицепить nofollow, запрещающий передачу веса. В оригинале опция называется «Spam link deterrent» и доступна на страницы настройки любого (кажется, зато точно доступна на стандартных фильтрах, вроде «Full HTML») фильтра. Если вы активируете эту опцию, то ссылке во всём контенте, пропускаемом через фильтр, будут получать в нагрузку nofollow (понятно, что такой фильтр и надо включить для анонимных комментаторов).
Вопрос теперь только в том, как добавить к nofollow ещё и noindex, понятный нашему родному Яндексу.
Имеется хак, найденный на страницах сообщества drupal.ru. Итак, открываем
./modules/filter/filter.module
и там меняем строку:
$text = preg_replace('/<a([^>]+)>/i', '<a\\1 rel="nofollow">', $text);
на:
$text = preg_replace('/<a([^>]+)>([^<]+)<\/a>/i', '<noindex><a\\1 rel="nofollow">\\2</a></noindex>', $text);
Готово. Точно работает с Drupal 5.x, но не думаю,что код фильтров изменился в шестой версии.