| Autor | Zpráva | ||
|---|---|---|---|
| opsidiam Profil |
#1 · Zasláno: 20. 6. 2014, 16:31:05 · Upravil/a: Moderátor (editace znemožněna) 20. 6. 2014, 20:14:14
prosim vas mam problem.
mam na crew.sk urebone servery a chcem ich ovladat cez môj web tlacidlamy a oni tam daly nejaky navod ale nerozumiem tomu ani za ***** Pre fungovanie vzdialeného ovládania si musíte nastaviť kľúč k serveru (hore). Táto funkcionalita je až do nastavenia hesla blokovaná a po jej aktivovaní ju môžete znova zablokovať kliknutím na vpravo hore.
Ak už máte heslo nastavené, mali by ste v tabuľke status vidieť kolónku Aktívne (heslo existuje) ,
ak namiesto toho vidíte , heslo nie je nastavené a funkcionalita vzdialenej konzoly je zablokovaná.
Použitie vzdialeného ovládania je jednoduché, stačí zavolať nasledovnú URL (najlepšie cez cURL alebo funkciu file_get_contents() v PHP):
http://www.crew.sk/remote/console_execute/?server=ID&command=PRÍKAZ&hash=HASH
ID - identifikátor servera, v tomto prípade to je 28387
PRÍKAZ - samotný príkaz, ktorý chcete odoslať do konzoly (ak obsahuje medzery, ošetrite ho funkciou urlencode())
HASH - kontrolný hash, získate ho tak, že zahashujete funkciou SHA-256 reťazec, ktorý vznikne spojením ID servera, príkazu, IP adresy servera z ktorého posielate požiadavku a hashu Vášho kľúča, ktorý získate zahashovaním rovnakou funkciou. V jazyku PHP by to vyzeralo nasledovne:
$hash = hash("sha256", $id_servera.$prikaz.$ip_adresa.hash("sha256", $kluc));
kde kľúč je heslo, ktoré ste si nastavili vyššie.
IP adresu môžete nastaviť fixne alebo získať v PHP cez premennú $ip_adresa = $_SERVER["SERVER_ADDR"];
Ako odpoveď vždy dostanete pole vo formáte JSON, ktoré sa skladá z 3 premenných:
"success"
odpoveď TRUE alebo FALSE, podľa toho, či sa podarilo príkaz vykonať
"error"
v prípade success FALSE sa v premennej error nachádza dôvod zlyhania: AUTHORIZATION_FAILED, COMMAND_MISSING, SERVER_ERROR
"debug"
v prípade chyby SERVER_ERROR tu nájdete odpoveď servera, ktorú potom môžete preskúmať za účelom vyriešenia problémuKto to pochopil tak by som bol veeeelmy vdacny keby mi to prelozil do PHP lebo som z toho magor dakujem pekne. |
||
| opsidiam Profil |
#2 · Zasláno: 20. 6. 2014, 17:03:18 · Upravil/a: Moderátor (editace znemožněna) 20. 6. 2014, 20:15:47
Zatial som to skusil takto:
<?php
$id_servera = "31.133.15.109:25585";
$prikaz = urlencode("say ahoj");
$ip_adresa = $_SERVER["SERVER_ADDR"];
$kluc = "ddfsfds45s456s46fsdfsf";
$id = "28387";
$hash = hash("sha256", $id_servera.$prikaz.$ip_adresa.hash("sha256", $kluc));
$go = "http://www.crew.sk/remote/console_execute/?server=".$id."&command=".$prikaz."&hash=".$hash;
include $go;
?> |
||
| Mike8748 Profil |
#3 · Zasláno: 20. 6. 2014, 17:43:23
opsidiam:
viz tvuj první příspěvek, $id_servera nema být IP adresa serveru ale ID serveru ID - identifikátor servera, v tomto prípade to je 28387 |
||
| Kubo2 Profil |
#4 · Zasláno: 20. 6. 2014, 17:44:20
opsidiam:
Riadok #9: Namiesto include použi funkciu file_get_contents odporúčanú aj v uvedenom návode. Celý skript:
<?php
$id_servera = "31.133.15.109:25585";
$prikaz = urlencode("say ahoj");
$ip_adresa = $_SERVER["SERVER_ADDR"];
$kluc = "ddfsfds45s456s46fsdfsf";
$id = "28387";
$hash = hash("sha256", $id_servera . $prikaz . $ip_adresa . hash("sha256", $kluc));
$go = "http://www.crew.sk/remote/console_execute/?server=$id&command=$prikaz&hash=$hash";
// získanie a prevod informácií získaných zo servera na natívne dátové typy
$result = json_decode(file_get_contents($go));
// debugovací výpis informácií
var_dump($result); |
||
| opsidiam Profil |
#5 · Zasláno: 20. 6. 2014, 18:03:09
mike a kubo skusil som to co ste poradili a uz mi vipisuje nieto
object(stdClass)#2 (2) { ["status"]=> bool(false) ["error"]=> string(20) "AUTHORIZATION_FAILED" } |
||
| Kubo2 Profil |
#6 · Zasláno: 22. 6. 2014, 21:41:45
opsidiam:
„AUTHORIZATION_FAILED“ Upravil si ten môj skript na základe rady Mika8748? Ja som ho totižto napísal a odoslal spamäti a chybne podľa [#2] ešte predtým, ako som si stihol všimnúť príspevok Mika8748. Takže po príslušnej úprave by ti to malo fungovať. |
||
|
Časová prodleva: 11 let
|
|||
0