Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Панель не видит установленный пакет php-ssh2, больше универсальности для панели! #24

Open
Krysinski opened this issue Jul 30, 2017 · 5 comments

Comments

@Krysinski
Copy link

Панель не видит установленный пакет php-ssh2, также не меняет настройки пути к скрипту и выставляет всегда в режиме local /home/servers.
Версия панели 1.1.0 с сайта февраль 2017.
ОС Дебиан 8.

@serfreeman1337
Copy link
Contributor

Путь на локальном сервере указывается в application/config/gameap_config.php

@Krysinski
Copy link
Author

Krysinski commented Aug 14, 2017

Спс, уже нашел. Первый вопрос остался в силе, но не особо важен. Я дополнил server.sh, он перекидывает управление на отдельные скрипты для майнкрафта, так как нужен независимый от панели контроль по ssh. Плюс есть возможность перехватывать определенные команды в консоль сервера и выполнять их в отдельном скрипте, очень полезная штука.
Нашел как отключить невозможность отправки команды в консоль если сервер "выключен":
server_control.php
* Отправка ркон команды на сервер public function send_command($server_id = false) { if (!$server_id) { show_404(); } if (false == $this->servers->get_server_data($server_id)) { show_404(); } // Получение прав на сервер $this->users->get_server_privileges($this->servers->server_data['id']); if (!$this->users->auth_data['is_admin'] && !$this->users->auth_servers_privileges['RCON_SEND']) { show_404(); } $this->form_validation->set_rules('command', 'rcon command', 'trim|required|max_length[64]|min_length[1]|xss_clean'); if($this->form_validation->run() == false){ show_404(); } $rcon_command = $this->input->post('command'); if(!$this->servers->server_status($this->servers->server_data['server_ip'], $this->servers->server_data['query_port'])) { $this->output->append_output('Server is down'); // Krysinski фикс невозможности отправки команды на "выключенный" сервер // return false; }
Есть еще сервер контроля клиентов sashok724, работает в скрине, также запускается и управляется по спец скрипту. Но вот статус этого процесса в панели: выкл. Никак не нашел как изменить способ получения статуса "онлайн", хотя в server.sh эта функция присутствует, но видать не используется в самой панели. Вот был бы вариант настройки определения активности сервера, то панель превратилась бы в панель управления любыми процессами. Если есть желание допилить это чудо, то готов помочь с переводом server.sh с убогого скрина, который не может дампить в файл русcкие символы на tmux.

@Krysinski Krysinski changed the title Панель не видит установленный пакет php-ssh2, также не меняет настройки Панель не видит установленный пакет php-ssh2, больше универсальности для панели! Aug 14, 2017
@serfreeman1337
Copy link
Contributor

Панель проверяет онлайн сервера через Query запросы, а как еще можно проверить что сервер работает и не завис ?

ssh, screen, rcon, ftp все вместе
https://github.com/GameAP/GDaemon2

осталось только понять как собрать и подключить к панели хд

@Krysinski
Copy link
Author

Можно проверить как и сделано в server.sh:

  1. наличием скрина по указанному имени
  2. наличием запущенного процесса по pid или имени
    Но этого не достаточно, согласен. У меня давно назрел вопрос, как написать проверку процесса на активность в bash. Единственное, что приходит в голову: отсылать команду процессу в скрине и ловить ответ где-нибудь в файле, исходя из ответа действовать дальше.

@Krysinski
Copy link
Author

)) там же скрипт "сборки" есть https://github.com/GameAP/GDaemon2/blob/master/build-deb.sh

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants