LINUX.ORG.RU
ФорумAdmin

как послать команду kill через веб страницу?

 , , ,


0

1

Привет. Такая задача, есть некоторые процессы которые иногда виснут на сервере, дабы не вводить клиента в ступор расказывая как пользоваться консолью, хочу сделать веб страничку посредством которой можно было бы делать kill определенным процессам.. Вот только незнаю как решить, получается сначала нужно узнать pid процесса, после этого его убить. И каким образом соеденить php и bash? Заранее спасибо.


ох лол, осторожнее с этим.

<?php shell_exec('kill -9 $(pgrep '.$_GET['kill'].')') ?>

но ты же понимаешь, что можно выполнить ?ps=null); и выполнить любую команду вообще.

здесь нельзя сделать bind как в sql, чтобы уберечься от sql-injection. вряд ли здесь вообще что-то можно сделать.

просто знаешь, наверно сделай фильтр на A-Z, a-z, 0-9 символы.

<?php shell_exec('kill -9 $(pgrep '.preg_replace("/[^a-zA-Z0-9]+/", "", $_GET['kill']).')') ?>
Spoofing ★★★★★
()

самое главное-то забыл! что ничего у тебя не получится, ибо kill нужно сделать с правами root, а скрипт запускается с правами под которым работает php.

я бы только ради смеха ради посоветовал добавить пользователя www-data в sudoers, чтобы поржать всем ЛОРом.

но нет. а знаешь что.

сделай так

<?php file_put_contents('/tmp/kill.txt', $_GET['kill'], FILE_APPEND); ?>

а в crontab -e для root добавь

* * * * * for i in `cat /tmp/kill.txt`; do pkill -9 $i; done; > /tmp/kill.txt
Spoofing ★★★★★
()

ТС выброси эту идею из головы. Строй вачдоги и мониторинг. или позови образованного сисадмина и носи ему кофе.

MikeDM ★★★★★
()
Ответ на: комментарий от Spoofing

Может у него процессы запускаются от пользователя под которым веб сервер работает.

Только идея все равно отстойная, нужно автоматически определять зависшие процессы и килять их не напрягая пользователя, если конечно нету возможности исправить баги из за которых они виснут.

TDrive ★★★★★
()

есть некоторые процессы которые иногда виснут на сервере

Проблема здесь. Т.е. тебе нужно разобраться почему это происходит.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)

Возьми monit. Но как тут уже сказали, лучше поправить баг.

kirk_johnson ★☆
()
Ответ на: комментарий от Spoofing

Участие в технических обсуждениях человека с компетенцией дворника? Да, это весьма хреново.

kirk_johnson ★☆
()

какой ужас
как уже сказали выше - настраивай мониторинг

kiotoze ★★★★
()

А как сделать на php

sudo rm -rf /
при посещении странички?)

zevilz ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.