Installation de divers modules dynamiques avec Nginx ==================================================== Préparation ----------- On commence par créer un répertoire qui recevra les sources nécessaires ``` shell # Création d'un répertoire pour compiler les modules mkdir ngx-modules-src cd ngx-modules-src ``` On récupère la version courante du nginx installé ```shell # Détermination de la version courante de Nginx command="nginx -v" nginxv=$( ${command} 2>&1 ) VERSION=$(echo $nginxv | grep -o '[0-9.]*$') ``` Sources nécessaires ------------------- On télécharge les sources nécessaires ```shell # récupération des sources de Nginx et décompression wget http://nginx.org/download/nginx-${VERSION}.tar.gz tar -xzvf nginx-${VERSION}.tar.gz # Récupération des modules git clone --depth 1 -b v3/master --single-branch https://github.com/SpiderLabs/ModSecurity git clone --depth 1 https://github.com/SpiderLabs/ModSecurity-nginx.git git clone https://github.com/openresty/headers-more-nginx-module.git ``` ModSecurity Lib --------------- Ce passage n'est nécessaire que si on souhaite utiliser le module dynamique ModSecurity ```shell # Installation de ModSecurity (Library) -> /usr/local/modsecurity/ cd ModSecurity git submodule init git submodule update ./build.sh ./configure make sudo make install cd - ``` Compilation des modules dynamiques ---------------------------------- ```shell cd nginx-${VERSION} # Compilation de ModSecurity & Header-More ./configure --with-compat --add-dynamic-module=../ModSecurity-nginx --add-dynamic-module=../ModSecurity-nginx make modules ``` Installation des modules ------------------------ ```shell sudo cp objs/*.so /etc/nginx/modules/ # Retour au répertoire parent cd - ```