www.eprace.edu.pl » budynek-inteligentny » Zasady i zabezpieczenia systemu » Dziennik zdarzeń

Dziennik zdarzeń

W pliku dziennika zdarzeń systemu „acces.log” przechowywane są informacje o nieudanych próbach logowania się do systemu. Zawarte tam informacje dotyczą, jakiego loginu oraz hasła próbowano użyć, z jakiego numeru IP oraz przez jaki port łączono się z systemem, kiedy to było, czyli data, dzień oraz godzina.

Funkcje odpowiedzialne za zapis oraz odczyt pliku dziennika zdarzeń to writelog oraz readlog. Pierwsza zapisuje do pliku: bierzącą date, login oraz hasło, jakie próbowano wpisywać, adres ip z którego się łączono oraz port. Wszystkie wartości oddzielane są w pliku znakiem | w celu późniejszego odczytu pliku. Funkcja ta wywoływana jest wewnątrz funkcji checkLogin, jeżeli użytkownik nie podał poprawnego hasła lub loginu.

function writelog($login,$pass,$ip,$port){

$date = date('F * j * Y * H:i * D');

$line = $date."|".$login."|".$pass."|".$ip."|".$port;

if ( $f=fopen("acces.log", "a+")){

fputs ($f, $line . "\n");

fclose ($f);

}

else {echo "nie mozna otworzyc pliku"; break;}

}

Funkcja readlog odczytuje poszczególne wartości pliku acces.log i w oparciu o nie generuje odpowiednią tabele HTML.

function readlog(){

$file = fopen ("acces.log", "r");

if (!$file) {

echo "<p>Nie mozna otworzyc pliku.\n";

exit;

}

echo "<table>

<tr class=dziennik><td align=center>Kiedy<br></td><td align=center>Login<br></td><td align=center>Haslo<br></td>

<td align=center>Adres IP<br></td><td align=center>Port<br></td></tr>";

while (!feof($file)) {

$line = fgets($file,2048);

list($date,$login,$pass,$ip,$port) = explode("|",$line);

echo "<tr><td align=center>$date </td><td align=center> $login </td><td align=center> $pass </td><td align=center> $ip </td><td align=center> $port </td>";

}

echo "</table>";

fclose($file);

}



komentarze

Copyright © 2008-2010 EPrace oraz autorzy prac.