Перейти к содержанию

execute: Модуль NGINX Execute

Установка

Вы можете установить этот модуль в любой дистрибутив на базе RHEL, включая, но не ограничиваясь:

  • RedHat Enterprise Linux 7, 8, 9 и 10
  • CentOS 7, 8, 9
  • AlmaLinux 8, 9
  • Rocky Linux 8, 9
  • Amazon Linux 2 и 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

Включите модуль, добавив следующее в верхнюю часть файла /etc/nginx/nginx.conf:

load_module modules/ngx_http_execute_module.so;

Этот документ описывает nginx-module-execute v1.6.1, выпущенный 21 мая 2018 года.


Введение

Модуль ngx_http_execute_module используется для удаленного выполнения команд и возврата результатов.

Пример конфигурации:

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;
        }
    }
}

Использование: view-source:http://192.168.18.22/?system.run[command] command может быть любой системной командой. Команда, которую вы хотите использовать, зависит от прав, с которыми работает nginx.

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

Если вы используете браузер для отправки команды, убедитесь, что вы используете "просмотр исходного кода", если хотите увидеть отформатированный вывод. Кроме того, вы также можете использовать некоторые инструменты, такие как Postman, Fiddler.

Команды, которые требуют взаимодействия с пользователем или постоянно обновляют свой вывод (например, top), не будут работать должным образом, поэтому не сообщайте об этом как об ошибке.

GitHub

Вы можете найти дополнительные советы по конфигурации и документацию для этого модуля в репозитории GitHub для nginx-module-execute.