Aller au contenu

execute: Module NGINX Execute

Installation

Vous pouvez installer ce module dans toute distribution basée sur RHEL, y compris, mais sans s'y limiter :

  • RedHat Enterprise Linux 7, 8, 9 et 10
  • CentOS 7, 8, 9
  • AlmaLinux 8, 9
  • Rocky Linux 8, 9
  • Amazon Linux 2 et Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-execute
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-execute

Activez le module en ajoutant ce qui suit en haut de /etc/nginx/nginx.conf :

load_module modules/ngx_http_execute_module.so;

Ce document décrit nginx-module-execute v1.6.1 publié le 21 mai 2018.


Introduction

Le ngx_http_execute_module est utilisé pour exécuter des commandes à distance et retourner les résultats.

Exemple de configuration :

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
            command on;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

Utilisation : view-source:http://192.168.18.22/?system.run[command] Le command peut être n'importe quelle commande système. La commande que vous voudrez utiliser dépend des permissions avec lesquelles nginx s'exécute.

view-source:http://192.168.18.22/?system.run[ifconfig]

Si vous utilisez un navigateur pour envoyer une commande, assurez-vous d'utiliser "voir la source" si vous souhaitez voir la sortie formatée. Alternativement, vous pouvez également utiliser des outils tels que Postman, Fiddler.

Les commandes qui nécessitent une interaction utilisateur ou qui mettent constamment à jour leur sortie (par exemple, top) ne fonctionneront pas correctement, donc ne signalez pas de bogue pour cela.

GitHub

Vous pouvez trouver des conseils de configuration supplémentaires et de la documentation pour ce module dans le dépôt GitHub pour nginx-module-execute.