Rename Admin Paths

Módulo de seguridad que permite renombrar las rutas predeterminadas /admin y /user de Drupal a rutas personalizadas, ayudando a proteger contra ataques automatizados dirigidos a URLs estándar de Drupal.

rename_admin_paths
17,742 sites
61
drupal.org
Drupal 8 Drupal 9 Drupal 10 Drupal 11

Install

Drupal 11, 10 v3.1.0
composer require 'drupal/rename_admin_paths:^3.1'
Drupal 9, 8 v8.x-2.3
composer require 'drupal/rename_admin_paths:8.x-2.3'

Overview

Rename Admin Paths es un módulo enfocado en la seguridad que ayuda a proteger los sitios Drupal permitiendo a los administradores personalizar las rutas administrativas y de usuario predeterminadas. En lugar de usar las rutas estándar /admin y /user que son bien conocidas y objetivo de bots automatizados y atacantes, este módulo permite renombrar estas rutas a cualquier valor personalizado.

El módulo funciona interceptando el proceso de construcción de rutas de Drupal a través de un suscriptor de eventos. Cuando se están construyendo las rutas, reescribe dinámicamente cualquier ruta que comience con /admin o /user para usar los valores de reemplazo configurados. Esto ocurre a nivel de enrutamiento, asegurando que todas las rutas de admin y usuario en todo el sitio sean renombradas consistentemente.

Este enfoque proporciona seguridad mediante oscuridad, dificultando que los scripts automatizados localicen las páginas de inicio de sesión de administración, formularios de registro de usuarios y otras interfaces administrativas sensibles. Aunque no es una solución de seguridad completa por sí sola, sirve como una capa adicional efectiva de defensa cuando se combina con otras medidas de seguridad.

Features

  • Renombrar el prefijo de ruta /admin a un valor personalizado (ej., /admin se convierte en /backend)
  • Renombrar el prefijo de ruta /user a un valor personalizado (ej., /user se convierte en /member)
  • Habilitar/deshabilitar el renombrado de rutas de admin y user de forma independiente
  • Valida los valores de reemplazo para asegurar que contengan solo caracteres seguros (letras, números, guiones, guiones bajos)
  • Previene renombrar rutas a nombres reservados ('admin' o 'user') para evitar conflictos de rutas
  • Reconstruye automáticamente las rutas cuando se guarda la configuración
  • Preserva la clase CSS 'path-admin' en las páginas de administración para compatibilidad con temas
  • Se integra con el sistema de gestión de configuración de Drupal para fácil exportación/importación

Use Cases

Proteger páginas de admin de ataques automatizados

Habilita el renombrado de ruta de admin para cambiar /admin a un valor personalizado como /backend o /manage. Esto previene que los bots automatizados que escanean rutas de admin estándar de Drupal encuentren tu interfaz administrativa. Por ejemplo, después de renombrar, /admin/content se convierte en /backend/content.

Ocultar el registro de usuarios de bots de spam

Muchos bots de spam apuntan a /user/register para crear cuentas de spam. Al renombrar la ruta de user a algo como /member o /account, la ruta de registro estándar devuelve un 404, bloqueando los intentos de registro automatizado mientras que los usuarios legítimos aún pueden registrarse en /member/register.

Cumplimiento de políticas de seguridad

Algunas organizaciones requieren que las rutas administrativas predeterminadas sean oscurecidas como parte de las políticas de endurecimiento de seguridad. Este módulo proporciona una manera simple de cumplir con tales requisitos sin modificar archivos del núcleo de Drupal.

Configuraciones multi-sitio con diferentes rutas de admin

Al gestionar múltiples sitios Drupal, puedes configurar diferentes rutas de admin para cada sitio. Esto facilita distinguir entre sitios cuando trabajas y añade una capa extra de protección ya que los atacantes no pueden usar la misma ruta en todos tus sitios.

Tips

  • Siempre guarda o documenta tus rutas renombradas en un lugar seguro antes de habilitar el módulo, en caso de que necesites acceder a ellas más tarde
  • Prueba el renombrado de rutas en un entorno de desarrollo antes de aplicarlo a producción
  • Considera usar nombres de ruta memorables pero no obvios - algo significativo para tu organización pero no fácilmente adivinable
  • El módulo preserva la clase CSS 'path-admin' en las páginas de admin, por lo que los estilos de tema basados en esta clase continuarán funcionando
  • La configuración puede exportarse e importarse usando la gestión de configuración de Drupal, facilitando el despliegue de ajustes de ruta entre entornos
  • Combina este módulo con otras medidas de seguridad como fail2ban, limitación de velocidad y contraseñas fuertes para una protección integral

Technical Details

Admin Pages 1
Rename Admin Paths /admin/config/system/rename-admin-paths

Página de configuración para establecer reemplazos personalizados para las rutas predeterminadas /admin y /user. Esta página permite a los administradores habilitar el renombrado de rutas y especificar los valores de reemplazo para cada tipo de ruta.

Permissions 1
Administrar rutas de admin

Permite a los usuarios renombrar rutas de admin (/admin/..) a valores personalizados (/algo/..) y rutas de user (/user/..) a valores personalizados (/algo_mas/..). Este permiso está marcado como acceso restringido debido a las implicaciones de seguridad de modificar rutas administrativas.

Drush Commands 2
drush cget rename_admin_paths.settings

Ver la configuración actual de renombrado de rutas, útil si has olvidado a qué renombraste las rutas

drush cset rename_admin_paths.settings admin_path 1

Habilitar el renombrado de ruta de admin mediante Drush

Troubleshooting 5
Otro módulo se rompe después de habilitar el renombrado de rutas

El módulo afectado probablemente usa rutas codificadas directamente en lugar de rutas generadas por el enrutador de Drupal con nombres de ruta. Esto no puede ser solucionado por Rename Admin Paths. Abre un issue en la cola de issues del módulo afectado solicitando que usen rutas generadas por el enrutador en lugar de rutas codificadas.

Olvidé a qué se renombró la ruta de admin

Usa Drush para ver la configuración: drush cget rename_admin_paths.settings. Alternativamente, verifica la base de datos directamente: en la tabla 'config', busca la fila con nombre 'rename_admin_paths.settings'.

Los enlaces en reportes de admin no se reescriben

Esta es una limitación conocida. Los enlaces de reportes de admin son generados por Views con rutas codificadas, las cuales este módulo no puede modificar. Hay un issue abierto en el núcleo (https://www.drupal.org/project/drupal/issues/2939986) que da seguimiento a este problema.

No puedo acceder a admin después de renombrar las rutas

Si te has bloqueado, puedes restablecer la configuración modificando directamente la base de datos. En la tabla 'config', encuentra 'rename_admin_paths.settings' y establece admin_path a 0, o actualiza admin_path_value a un valor que conozcas. Limpia las cachés después.

Error de validación al guardar la configuración

Los valores de reemplazo de ruta deben contener solo letras (a-z, A-Z), números (0-9), guiones (-) y guiones bajos (_). Además, no puedes usar 'admin' o 'user' como valores de reemplazo ya que esto entraría en conflicto con las rutas predeterminadas.

Security Notes 6
  • Este módulo proporciona seguridad mediante oscuridad, que debe usarse como una capa adicional de protección en lugar de la única medida de seguridad
  • El permiso 'administer path admin' está marcado como acceso restringido porque cambiar las rutas de admin tiene implicaciones de seguridad significativas
  • Los usuarios con este permiso podrían potencialmente bloquear a otros administradores cambiando las rutas sin comunicación
  • Siempre asegúrate de que al menos un administrador conozca las rutas configuradas
  • La validación de rutas previene el uso de nombres reservados y caracteres especiales para evitar conflictos de rutas y posibles problemas de seguridad
  • El módulo no oculta la existencia de funcionalidad administrativa de los usuarios autenticados que tienen los permisos apropiados