Seguridad en Joomla. Repasamos la lección.

La seguridad en Joomla requiere tiempo y esfuerzo, como en cualquier otro sistema. Joomla es muy seguro, y está en constante actualización. Si embargo, si has trabajado en Joomla durante años, te das cuenta de que son necesarias ciertas medidas. No voy hablar aquí de todo aquello que podemos encontrar en Google sobre seguridad en Joomla, sinó de otros aspectos de la experiencia personal…

Por cierto, como no es cuestión de comentar lo que ya está escrito, os pongo estos enlaces:

Joomla seguro
Proteger Joomla

Leedlos porque este es el punto de partida. Muchas cosas son para usuarios avanzados pero podremos aprovechar la mayoría. Es importante usar, como dije antes” Google y buscar esas palabras clave:  “jomla + seguridad”, o bien “proteger + joomla” Y a partir de ahí tenemos que tener mucho sentido común y hacer las cosas “sin fiarse de nadie”.

Bueno, ahora sigo con lo mío. Quizás cuando leais ciertos aspectos penseis: “vaya rollo, tener que hacer esto!… menuda lata”. Pues si! La seguridad requiere trabajo y no es una cosa que se pueda configurar automáticamente.
Muchas de las cosas os parecerán obvias pero… es que la gente no lo hace!

Yo expongo como hago y puede que a algún “avanzado” de Joomla le parezca que no es necesario o incluso una verdadera tontería, pero toda precaución es poca. De todas maneras esperamos vuestros comentarios.

A veces es necesario estar cambiando permisos cada dos por tres en las carpetas… y es ahí por donde empezaremos:

1.- Permisos de las carpetas: de todos es sabido no dejar las carpetas con permisos (CHMOD) que puedan dar entrada a ataques (por ejemplo un CHMOD 777). En este caso solo quiero concretar una cosa, y es el hecho de una vez modificado el permiso para que un componente pueda ejecutarse, probar luego a volver a los permisos seguros (por ejemplo un CHMOD 664). En ocasiones muchos programas se ejecutan con  permisos seguros aunque nos den aviso de que hay que ponerlos en 777. Es decir, tenemos que dedicar tiempo a repasar permisos, poner todos seguros y luego poco a poco si vemos que el programa no funciona ir probando con otros permisos. Ensayo y error amigos!

Y esto es importante aplicarlo también a la carpeta raiz, esa en la que subimos los documentos mediante FTP. En mi caso es “httpdocs” y puede ser tambien “publichtml” (estas son las más usadas)

2.- Acceso desde el front-end (por ejempo galerías de imágenes y subida de documentos): si no es estrictamente necesario no lo hagas. Si tienes tiempo, una web puede subsistir si tu subes los documentos y las imágenes de las Galerías o los componentes de descarga. Evita habilitar la subida desde el frontend a usuarios registrados (y menos a usuarios públicos). Si lo haces, estás dejando una puerta abierta a código malicioso; y no lo digo que lo hagan tus usuarios, pero si ya hay un lugar en donde cualquier experimetado puede acceder Y si decides dejar esa “puerta abierta” procura restringir concienzudamente el tipo de archivos que vas permitir subir.
Y una cosa drástica. Si no necesitas un componente imprescindiblemente, no lo uses. Cuantos más componentes y plugins, mas código y más posibilidades de que encuentren un lugar débil para atacar.

3.- Configuración htaccess: htaccess es una potente herramienta (tienes miles de tutoriales en la red). Debes tener un htacces configurado con los parámetros que trae Joomla, y luego añadir los tuyos propios. Usa nuevamente Google para ver como utilizar este documento a nivel de seguridad. Te muestro texto básico que debes añadir al inicio del htaccess aparte de, como dije, lo que trae Joomla por defecto (en su htaccess de ejemplo).

{xtypo_code}order allow,deny
deny from all
{/xtypo_code}

4.- Modulos o componentes que no uses: todo aquello que no uses elimínalo, aunque lo tengas deshabilitado y no se puede ver en el frontend, un  atacante experimentado puede comprobar si tienes un componente y aprovechar sus bugs aunque esté desactivado. Ten en tu servidor solo aquello que estés usando. Y además así ahorrarás espacio.

5.- Sistemas de seguridad de terceros: yo personalmente NO. Me refiero a esos componentes (la mayoría de pago) que nos aseguran protegernos contra ataques.
A ver, su función pueden hacerla mejor o peor pero mi opinión es que consumen muchos recursos y ralentizan la página. La mayoría usan tablas muy grandes en las Bases de Datos para guardar IPs sospechosas. Esas IPs además deben actualizarse y lo que es peor… a veces nos dan errores inesperados o restringen el sitio a gente “normal”. Ya sabemos que eso de las IP asociadas a ciertos usuarios es muy relativo. Muchos además ejecutan en segundo plano scripts que pueden ralentizar e incluso bloquear el propio Joomla. O hacen consultas interminables a la Base de datos, provocando lo mismo que comentamos antes.

6.- Protege el acceso a backend. Por ejemplo mediante una contraseña en tu servidor. En este caso debes estar usando Plesk o CPanel (paneles de control de los servidores) y pones una contraseña para el acceso a esa carpeta (tu dominio/administrator). Es un paso más que un intruso debe pasar. Ah! y no le pongas el mismo usuario y contraseña que tu acceso al backend.

Bueno, con esto, la seguridad del propio Joomla, un poco de precaución y lo que ya está publicado de seguridad en Joomla en la red,  podremos (con suerte) subsistir una larga temporada.

0

Comments

  1. goyito

    Amigo, desde donde configuro eso de CHMOD, perdon pero soy nuevo en esto y lo he leido en otras oportunidades.
    Estoy usando Joomla, con Xampp, en windows XP, que me dices al respecto?
    Muchas Gracias! 😀

    0
  2. redlo

    Chmod
    Los atributos de seguridad CHMOD solo sirven por si tu web esta en un servidor online. Para configurar esos atributos tienes varias opciones, la mas logica es utilizar tu cliente ftp y en los archivos situados en tu servidor tienes una opcion pulsando el boton derecho de tu raton para ello. Ahora mismo tal como lo tienes en tu xp todas tus carpetas tienen permido de escritura y no representa ningun problema ya que estas en una maquina privada. Para que tengas una idea mas clara a lo que se refiere lo que preguntas leete este articulo –> http://www.solojoomla.com/elegir-un-hosting-para-joomla.html

    0
  3. goyito

    Chmod
    Redlo gracias por tu aporte, la verdad que me ayudo mucho, porque ya me estaba volviendo loco buscando por todas partes esa opcion, ya que como habia dicho anteriormente, ya habia leido algo al respecto y no encontraba como hacerlo! pero bueno, me quedo mas tranquilo…
    A proposito, me parece que tu nombre me suena de algun otro foro de Joomla, o no se si ya te he leido aca en algun otro articulo… puede ser?

    0
  4. redlo

    Si asi es 🙂
    Estoy en todas partes ;-);-) . Ayudo a los de http://www.forosdelweb.com en lo que es joomla y algunas otras secciones como redlo41. Me algro haberte sido de ayuda. Un saludo.

    0
  5. todoesnormal

    Hola. El artículo es muy bueno. Solo una cosa: el enlace “Joomla Seguro” hace referencia al archivo “/includes/version.php”, el cual se encuntra en joomla 1.0.x, más no en 1.5.x. Esta aclaración para quienes apenas se inician en Joomla…

    0
  6. todoesnormal

    Muy bueno el artículo. Pregunta: ¿es 664 o 644? Gracias de antemano por tu respuesta

    0
  7. redlo

    Las carpetas deben tener permisos chmod 755 y los archivos 644 . El de configuration.php te recomiendo que le asignes permisos 444

    0
  8. pablomatus

    Seguridad 1.7
    Tambien es importante installar un sistema en la administracion contra las injecciones sql (por ejemplo marco’s injection) y a veces tambien uno que cambia el camino hacia la administracion, asi complica por una parte las posibilidades de ver que es un joomla comun y por otra parte protege la base de datos SQL.
    He tenido varios problemas con rusos que me rompieron dos sitios solo con la injection

    0

Deja una respuesta