escrito por eduardo aguad
El Content-Security-Policy (CSP) es una herramienta esencial para proteger tu sitio web contra ataques de inyección de contenido, como Cross-Site Scripting (XSS). Configurar correctamente CSP en tu servidor web, ya sea Apache o Nginx, es fundamental para fortalecer la seguridad de tu sitio. En este artículo, exploraremos cómo configurar CSP de manera efectiva para ambos servidores.
CSP es una política de seguridad que ayuda a detectar y mitigar ciertos tipos de ataques, incluyendo la inyección de código malicioso y el robo de datos. Funciona permitiendo que los administradores del sitio web especifiquen qué recursos pueden ser cargados y ejecutados en sus páginas.
1. Acceso al archivo de configuración:
Para configurar CSP en Apache, debes editar el archivo `.htaccess` o el archivo de configuración de tu sitio específico (`httpd.conf` o `apache2.conf`).
2. Agregar la directiva CSP:
Utiliza la directiva `Header set Content-Security-Policy`. Por ejemplo:
Header set Content-Security-Policy "default-src 'self'; script-src 'self' https://trusted.com; object-src 'none';"
Esta configuración permite cargar scripts solo desde el mismo origen y desde `trusted.com`, mientras que bloquea todos los objetos incrustados.
3. Reiniciar Apache:
Guarda tus cambios y reinicia Apache para aplicar la nueva política:
sudo systemctl restart apache2
1. Editar el archivo de configuración:
En Nginx, debes editar el archivo de configuración de tu sitio, que usualmente se encuentra en `/etc/nginx/sites-available/`.
2. Agregar la directiva CSP:
Agrega la directiva `add_header` dentro del bloque `server` o `location`. Por ejemplo:
add_header Content-Security-Policy "default-src 'self'; img-src https://*; child-src 'none';"
Esta configuración permite imágenes de cualquier sitio HTTPS, pero restringe otros recursos.
3. Recargar Nginx:
Guarda el archivo y recarga Nginx para aplicar los cambios:
sudo systemctl reload nginx
Implementar CSP es un paso crucial en la protección de tu sitio web contra inyecciones de contenido. Aunque inicialmente puede parecer complejo, con la práctica y el uso de las herramientas adecuadas, puedes configurar con éxito CSP en Apache y Nginx, fortaleciendo significativamente la seguridad de tu sitio web.