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.