Pull to refresh

Comments 30

Если у тебя есть доступ по SSH может имеет смысл подключиться по SSH и выключить сервер?
Ну вроде как тут проблема в том чтобы это сделать быстро, жмакнул ярлык и все. А по ssh пока подключешься, пока напишешь команду. У них наверное просто сервер 1С под потолком или в стене вот и палятся
Можно проще и быстрее.
Заводите пользователя, например off_user, в .bashrc прописываете sudo poweroff && logout,
в /etc/sudoers добавить off_user ALL = NOPASSWD: /sbin/poweroff.
Всё.
Достаточно выполнить ssh off_user@<SERVER_IP> sudo poweroff и ввести пароль что бы сервер выключился.
Передавать root'овый пароль от сервера GET'ом — охх, даже не знаю, что с этим можно сравнить…
Извращение какое-то.

<?php ($_GET['password']=='my_pass')?system("poweroff"):die(); ?>

P.S. Только предварительно надо разрешить этому пользователю выключать машину.
Этому?)
// авторизуемся по имени пользователя и паролю
    if(!ssh2_auth_password($con, "root", $_GET["password"])) {
        echo  "fail: unable to authenticate\n";
Только идиот запустит apache с модулем php или отдельно php под рутом.
Виноват, дурной, в 3 часа ночи решил, что Ваш код — цитата из авторского.
Спасибо, что оценили мой код как извращение :))
Ну, выключать сервер с помощью скрипта PHP — довольно странное занятие, на мой взгляд, хоть Ваш код и разумней на порядок.)
Идея хорошая, реализация бэд.

Совет автору — для начала посмотреть в сторону философии «слабо связанных кирпичиков»
en.wikipedia.org/wiki/Small_Pieces_Loosely_Joined

Практическую реализацию сделать через промежуточный этап (если уж охота через веб).

1. По SSL заходите, авторизуетесь
2. Жмете кнопку Выключить
3. В определенной папке на сервере создается файлик «выключиться»
4. На сервере, АСИНХРОННО от вас запускается по крону приблуда, которая видит файл, сносит его и выключает сервер.
5. Профит.

А в идеале — поставьте себе SSH клиент на мобилу и не мучайте мозг :)
Да ребят, чаще комменты не менее достойны решения (например, про cron) :)
Собствнно, если автора устраивает имперсонированное отключение и оно ему необходимо, кто мешает:
1) запускать через exec, без диких свистоплясок с ssh к localhost
2) добавить poweroff в sudoers
Точняк

Прямо без авторизации чтобы. Exec. — наше все, разделение прав на уровне здравого смысла это бред.

Даешь пыху запуск из под рута. Ай молодца
Большие теоритические познания, однако
У любителей execa точно, и вообще прямого управления сервером с помощью не предназначенных для этого технологий.
Давайте еще initd и inetd закроем, он же тоже exec-ом пользуется :)
Да, вариант с cron не слишком изящный, но и совсем уж бредом назвать нельзя. В том же uWSGI есть возможность gracefull reload при изменении определённого файла (но там изящная реализация без костылей).

touch-reload
gracefully reload the uWSGI stack when a file/directory changes.
uwsgi:
  touch-reload: /tmp/reload.txt

if you
touch /tmp/reload.txt
the uWSGI server will be gracefully reloaded
Только, наверное, это больше on-demand. В завязке на бизнес-процесс — да, штука нужная, а когда автору приспичило прямо сейчас, гонять cron на рескан файловой системы каждую минуту? :)
Нет, давайте лучше из пхп мля exec сделаем
Если нет ничего по существу, предлагаю «мля» держать при себе
Ставите sudo, в /etc/sudoers добавляете:
username ALL=(ALL) NOPASSWD: /sbin/poweroff
username — это тот пользователь от которого работают Ваши скрипты.
<?php
  exec ('sudo /sbin/poweroff');
?>

Вот и всё.

Либо можно сделать chmod +s /sbin/halt и тогда любой пользователь в этой системе сможет сделать poweroff,reboot,halt и не нужен будет sudo
Я такой вариант предлагать бы не стал. Ибо в sudoers можно явно определить что и кому. А setuid bit даст такую возможность всем и без разбота. И еще — setuid bit не будет работать, если будет вызываться скриптовый файл.
про setuid bit я же указал что ЛЮБОЙ пользователь сможет.
PS: где Вы видели /sbin/halt скриптом?
про halt — может где и найдется такое :) Вы не можете гарантировать, что любой из разработчиков прикладных программ не заменит бинарный файл по какой-нибуть нужде на скрипт. И да, false раньше был скриптом :)
Сообщество авторов книг про компьютерную безопасность шлет Вам лучи добра за участие в поддержке спроса на их продукцию.
Мсье знает толк в извращениях. Даже немного челюсть отпала.
А еще в shh есть такая магия как авторизация без логина и пароля
Sign up to leave a comment.

Articles