←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Wyodrębnienie konsoli

Zablokowany

  • +
  • -
Szyfrant - zdjęcie Szyfrant 30.05.2010

Witam
Mam VPS. I chciałbym wyodrębnić konsoli z każdego z serwerów. Tak jak np jest zakładka na pukawka.pl Konsola, tak właśnie chciałbym ją wyodrębnić. Jest taka możliwość, i ile jest z tym roboty?
Odpowiedz

  • +
  • -
mgr inż. Pavulon - zdjęcie mgr inż. Pavulon 30.05.2010

albo podłączyć się do SSH i łapać zawartość screen'a albo zapisywać zawartość screen'a do pliku i pobierać jego zawartość.
Wszystko zależy czy chcesz mieć logi na bierząco czy też z jakiegoś okresu itd
Odpowiedz

  • +
  • -
Portek - zdjęcie Portek 30.05.2010

albo podłączyć się do SSH i łapać zawartość screen'a albo zapisywać zawartość screen'a do pliku i pobierać jego zawartość.
Wszystko zależy czy chcesz mieć logi na bierząco czy też z jakiegoś okresu itd

Kierował bym się raczej ku zapisie logu screena do pliku, który i tak odbywa się prawie że w czasie rzeczywistym + skrypt bash do odczytu który w zasadzie ograniczy się do wydania polecenia cat nazwa_pliku.log. Troszkę optymalnej i hmmm, bezpieczniej, wszak skrypt łączy się z serwerem przez SSH, aczkolwiek to jednorazowe połączenie, nie jest utrzymywane cały czas, nie zamulasz maszyny, a masz zamierzony efekt.
Odpowiedz

  • +
  • -
Szyfrant - zdjęcie Szyfrant 01.06.2010

Ok Portek .. good wybrałbym tą opcję. .. Czy ktoś mógłby przedstawić taki skrypt ??

Plusy +

Pavulon
Portek
Odpowiedz

Gość_deLL_* 01.06.2010

A oto efekt mojej nudy :P Połączenie ssh i zalogowanie :P

<?php

$host = 'localhost';
$port = 22;

$user = 'root';
$pass = 'root_password';

$polaczenie = ssh2_connect($host, $port);

if(!$polaczenie) die('Connection failed');

$user = ssh2_auth_password($polaczenie, $user, $pass);

if(!$user) die('Auth failed!');

?>

Dobre i to.. ;D
Odpowiedz

  • +
  • -
Szyfrant - zdjęcie Szyfrant 01.06.2010

Ok masz Plusa +
Czekam na opinię reszty :D

01 czerwiec 2010 - 21:00:
btw moze maly opis co wpisać? :D
bo cos mi to nie chce działać
Użytkownik Szyfrant edytował ten post 01.06.2010 20:01
Odpowiedz

Gość_deLL_* 01.06.2010

To tylko połączenie i nic więcej.

Pavulon? Portek? Jakimi poleceniami "przeczytać konsolę" i zapisać jej treść do pliku?
Odpowiedz

  • +
  • -
Portek - zdjęcie Portek 01.06.2010

Właściwie to nie sprawdzałem, aczkolwiek powinno być okej:
<?php
$host = 'localhost';
$port = '22';
$user = 'root';
$pass = 'root_password';
$conn = ssh2_connect($host, $port);

if(!$conn) die('Connection failed');

$user = ssh2_auth_password($conn, $user, $pass);
$logi = ssh2_exec($conn, './logi $serv_id');

	if ($logi)
		return $logi;

?>

plik logi
#!/bin/bash

# zmienna $1 to przesłane w skrypcie wyżej dane, może to być cokolwiek, np. folder w którym jest serwer

cat /home/folder/$1/screenlog.*

Screen powinien sam zapisywać logi w pliku screenlog w katalogu bezpośrednim z serwerem, gdy tak sie nie dzieje do parametrów screen dodaj przełącznik -L - screen -L -m -d -S ./hlds_run
Odpowiedz

  • +
  • -
Szyfrant - zdjęcie Szyfrant 01.06.2010

wywala mi cos takiego

Fatal error: Call to undefined function ssh2_connect() in /var/www/konsola/index.php on line 6

$host = 'localhost';
$port = '22';
$user = 'root';
$pass = 'haslo';

w tym mam podać dane do logowania do konta putty ? ( w moim przypadku VPS)

bvtw
moj skrypt

#!/bin/bash

# zmienna $1 to przesłane w skrypcie wyżej dane, może to być cokolwiek, np. folder w którym jest serwer

cat /home/klan1/screenlog.*
Użytkownik Szyfrant edytował ten post 01.06.2010 20:37
Odpowiedz

  • +
  • -
Portek - zdjęcie Portek 01.06.2010

wywala mi cos takiego

Fatal error: Call to undefined function ssh2_connect() in /var/www/konsola/index.php on line 6

Brak biblioteki php5-ssh2 na serwerze ;)

w tym mam podać dane do logowania do konta putty ? ( w moim przypadku VPS)

Tak, inaczej skrypt się nie połączy z SSH.

bvtw
moj skrypt

#!/bin/bash

# zmienna $1 to przesłane w skrypcie wyżej dane, może to być cokolwiek, np. folder w którym jest serwer

cat /home/klan1/screenlog.*

W takim przypadku mozesz pominąć wysyłanie parametrów do skryptu ;)

$logi = ssh2_exec($conn, './logi');


Jak już będziesz pisał to dobrze radzę, zabezpiecz folder konsola odpowiednimi wpisami w virtualhost ;)
Odpowiedz

  • +
  • -
Szyfrant - zdjęcie Szyfrant 01.06.2010

apt-get install nie wyszukuje..
Portek poślesz jakis deb albo cuś? :D
Odpowiedz

  • +
  • -
Szyfrant - zdjęcie Szyfrant 02.06.2010

Dzięki wszystkim CLOSE.
Odpowiedz
Zablokowany