Apache Virtual Hosts con mod_macro

Creado: Octubre 8, 2022

Esta semana estuvo entretenida, una de mis búsquedas estuvo referida a la optimización de Virtual Hosts en Apache (1000+). La idea es no repetir código, que se pueda leer, que al buscar un Virtual Host este este presente mediante la ejecución de httpd -S.

Y entre todas mis lecturas me encontré con este modulo. Básicamente, mod_macro nos permite: Proporciona macros dentro de los archivos de configuración de tiempo de ejecución de Apache httpd, para facilitar el proceso de creación de numerosos bloques de configuración similares. Cuando se inicia el servidor, las macros se expanden utilizando los parámetros proporcionados y el resultado se procesa junto con el resto del archivo de configuración.

Leer artículo...

Nginx y Apache Security Headers

Creado: Octubre 5, 2022

Security Headers para Apache y Nginx actualizados, una breve reseña de los mismos. Este breve articulo no es mas que una nota o cheatsheet de los security headers a utilizar y requeridos en su mayoría. Si desean leer sobre el tema pueden seguir el siguiente enlace.

add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Permitted-Cross-Domain-Policies "none" always;
add_header Feature-Policy "microphone none;camera none;geolocation none;";
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "no-referrer-when-downgrade" always;
add_header Content-Security-Policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
add_header Expect-CT "max-age=31536000; report-uri=https://www.barrahome.org/contact";
add_header Access-Control-Allow-Origin "*" always;

El equivalente para Apache seria utilizando algo como esto:

<IfModule mod_headers.c>
   Header always set X-XSS-Protection "1; mode=block"
<IfModule mod_headers.c>

Pueden observar los resultados aplicados en este blog visitando el sitio de Serpworx.

Leer artículo...

Apache con ExecCGI y FPM

Creado: Septiembre 22, 2022

Una simple receta con notas de como se debe configurar un Virtual Host con Apache para que ejecute CGIs y PHP.

Esta configuración de Apache se realizo bajo Ubuntu 22.04 con el modulo de proxy_fcgi, setenvif y cgid. El modulo cgid se habilita cuando nuestro MPM es event mientras que cuando ejecutamos prefork el modulo a utilizar es cgi.

En Ubuntu se habilita o deshabilita el modulo mediante el comando: a2enmod cgi{d} dependiendo del MPM a utilizar. Para conocer mas sobre estos comandos a2enmod/a2dismod pueden visitar el siguiente enlace. Para PHP-FPM puede que deban ejecutar a2enconf y pueden leer mas sobre esto en este otro enlace.

Leer artículo...

Centos Apache SELinux

Creado: Noviembre 15, 2020

Guía rápida de como habilitar SELinux con Apache en Centos 7/8 utilizando directorio personal y otros características.

Esto es ciertamente muy básico pero útil y practico. Tener en cuenta que hay pasos los cuales me salte dado que cualquiera leyendo esto tiene una noción básica de lo que estoy escribiendo.

Luego de instalar Apache con dnf o yum pasamos a permitir Apache con el siguiente comando:

sudo setsebool -P httpd_can_network_connect 1
sudo setsebool -P httpd_enable_homedirs 1

Si quieren saber que otras opciones existen en el contexto de httpd pueden ejecutar esta variante:

sudo getsebool -a | grep "httpd_can"
Leer artículo...