:> jean-luc.chretien@tice.ac-caen.fr * @auteurs oluve olivier.le_monnier@crdp.ac-caen.fr * @auteurs wawa olivier.lecluse@crdp.ac-caen.fr * @Licence Distribue selon les termes de la licence GPL * @note */ /** * @Repertoire: parcs/ * file: show_histo.php */ include "entete.inc.php"; include "ldap.inc.php"; include "ihm.inc.php"; require_once ("lang.inc.php"); bindtextdomain('se3-parcs',"/var/www/se3/locale"); textdomain ('se3-parcs'); $selectionne=isset($_GET['selectionne']) ? $_GET['selectionne'] : NULL; $ipaddr=isset($_GET['ipaddr']) ? $_GET['ipaddr'] : NULL; $cnx_start2=isset($_GET['cnx_start2']) ? $_GET['cnx_start2'] : NULL; $cnx_start1=isset($_GET['cnx_start1']) ? $_GET['cnx_start1'] : NULL; $cnx_start=isset($_GET['cnx_start']) ? $_GET['cnx_start'] : NULL; $user=isset($_GET['user']) ? $_GET['user'] : NULL; $mpenc=isset($_GET['mpenc']) ? $_GET['mpenc'] : NULL; //aide $_SESSION["pageaide"]="Informations_syst%C3%A8me#Historique"; //debug_var(); // Affichage du formulaire de saisie d'adresse IP echo "

".gettext("Historique des connexions")."

"; if ((is_admin("computers_is_admin",$login)=="Y") or (is_admin("parc_can_view",$login)=="Y") or (is_admin("parc_can_manage",$login)=="Y") or (is_admin("Annu_is_admin",$login)=="Y") or $login == $user) { if ((is_admin("computers_is_admin",$login)=="N") and ((is_admin("parc_can_view",$login)=="Y") or (is_admin("parc_can_manage",$login)=="Y"))) { echo "

".gettext("Votre délégation a été prise en compte pour l'affichage de cette page.")."

"; $acces_restreint=1; $list_delegate=list_parc_delegate($login); if (count($list_delegate)>0) { $delegate="yes"; } } else { echo "
\n"; echo "\n"; } if ($selectionne=="1") { if (($ipaddr==$REMOTE_ADDR) || ($ipaddr=="")) { $IP=$REMOTE_ADDR; } else { $IP=$ipaddr; } echo " "; } elseif ($selectionne=="2") { echo " "; } elseif ($selectionne=="3") { echo " "; } echo " \n"; echo "
\n"; echo "
"; echo "
"; // Si recherche sur adresse IP if (($selectionne=="1") && (isset($ipaddr))) { // Affichage des renseignements sur la machine depuis la table connexions echo "
"; echo gettext("Table des connexions sur l'adresse IP")." $ipaddr\n"; if ("$smbversion"=="samba3") $smbsess=exec ("smbstatus |gawk -F' ' '{print \" \"$5\" \"$4}' |grep '($ipaddr)' |cut -d' ' -f3 |head -n1"); else $smbsess=exec ("smbstatus |gawk -F' ' '{print \" \"$6\" \"$4}' |grep '($ipaddr)' |cut -d' ' -f3 |head -n1"); if ($smbsess=="") echo "

".gettext("Aucune connexion en cours sur cette machine")."

\n"; else { $login = exec ("smbstatus | grep -v 'root' |gawk -F' ' '{print \" \"$4\" \"$2}' |grep ' $smbsess ' |cut -d' ' -f3 |head -n1"); echo "

$login ".gettext("est actuellement connecté sur cette machine")."

\n"; } if (! isset($cnx_start)) $cnx_start=0; echo "

".gettext("Etat des 10 dernières connexions sur la machine")."

\n"; $query=" select * from connexions where ip_address='$ipaddr' order by id desc limit "; $query .= $cnx_start; $query .= ",10"; $result = mysql_query($query); if (($result)) { // Affichage des liens de navigation if ($cnx_start < 10) { $cnx_start1=0; $cnx_start2=$cnx_start+10; } else if (mysql_num_rows($result)==0) { $cnx_start2=$cnx_start; $cnx_start1=$cnx_start-10; } else { $cnx_start1=$cnx_start-10; $cnx_start2=$cnx_start+10; } echo "
"; if ($cnx_start >= 10) echo "<-- ".gettext("Voir les 10 connexions précédentes")."    "; echo ""; if ($cnx_start2 != $cnx_start) echo "".gettext("Voir les 10 connexions suivantes")." -->\n"; echo "
\n"; // affichage de la table connexions echo "\n"; echo ""; while ($r=mysql_fetch_array($result)) { //echo "\n"; echo "\n"; //echo "\n"; echo "\n"; echo "\n"; echo "\n"; } echo "
".$r["username"]."
".$r["username"]."".$r["netbios_name"]."".$r["netbios_name"]."".$r["logintime"]."".$r["logouttime"]."
\n"; } else echo gettext("erreur lors de la lecture de la base se3"); } // Affichage des renseignements sur l'utilisateur if (($selectionne=="3") && (isset($user))) { if ("$smbversion" == "samba3") exec ("smbstatus -b -u $user |awk 'NF>4 {print $1}'",$arr_pid); else exec ("smbstatus -b -u $user |gawk -F' ' '{print $1}'",$arr_pid); $nbmach=count($arr_pid); if ("$smbversion" == "samba3") $nbmach+=5; if ($nbmach>5) { echo "

"; echo $nbmach-5; // echo " connexion(s) en cours sous le login $user sur "; echo "".gettext(" connexion(s) en cours sous le login")." $user".gettext(" sur "); for ($i=4; $i<=$nbmach; $i++) { if ("$smbversion" == "samba3") { $pid=$arr_pid[$i-4]; $machine=exec ("smbstatus |gawk -F' ' '{print \" \"$1\" \"$4}' |grep ' $pid ' |cut -d' ' -f3 |head -n1"); } else { $pid=$arr_pid[$i]; $machine=exec ("smbstatus |gawk -F' ' '{print \" \"$4\" \"$5}' |grep ' $pid ' |cut -d' ' -f3 |head -n1"); } if (is_admin("computers_is_admin",$login)=="Y") echo "$machine "; else echo "$machine "; } } else { echo "
"; //echo "Aucune connexion en cours sous le login $user"; echo gettext("Aucune connexion en cours sous le login"); echo " $user"; } echo "\n"; if (! isset($cnx_start)) $cnx_start=0; echo "

".gettext("Etat des 10 dernières connexions de l'utilisateur")." $user

\n"; $query=" select * from connexions where username='$user' order by id desc limit "; $query .= $cnx_start; $query .= ",10"; $result = mysql_query($query); if (($result)) { // Affichage des liens de navigation if ($cnx_start < 10) { $cnx_start1=0; $cnx_start2=$cnx_start+10; } else if (mysql_num_rows($result)==0) { $cnx_start2=$cnx_start; $cnx_start1=$cnx_start-10; } else { $cnx_start1=$cnx_start-10; $cnx_start2=$cnx_start+10; } echo "
"; if ($cnx_start >= 10) echo "<-- ".gettext("Voir les 10 connexions précédentes")."    "; echo ""; if ($cnx_start2 != $cnx_start) echo "".gettext("Voir les 10 connexions suivantes")." -->\n"; echo "
\n"; // affichage de la table connexions echo "\n"; echo ""; while ($r=mysql_fetch_array($result)) { // echo "\n"; echo "\n"; //echo "\n"; echo "\n"; echo "\n"; echo "\n"; } echo "
".$r["netbios_name"]."
"; if (is_admin("computers_is_admin",$login)=="Y") { echo ""; } echo $r["netbios_name"]; if (is_admin("computers_is_admin",$login)=="Y") echo ""; echo "".$r["ip_address"].""; if (is_admin("computers_is_admin",$login)=="Y") { echo ""; } echo $r["ip_address"]; if (is_admin("computers_is_admin",$login)=="Y") {""; } echo "".$r["logintime"]."".$r["logouttime"]."
\n"; } else echo gettext("erreur lors de la lecture de la base se3"); } // Affichage par nom de la machine // Affichage des renseignements sur la machine depuis la table connexions if (($selectionne=="2") && (isset($mpenc))) { echo "

$mpenc

"; $mp=urldecode($mpenc); $mp_curr=search_machines("(&(cn=$mp)(objectClass=ipHost))","computers"); echo "

".gettext("Adresse IP inscrite dans l'annuaire:")." ".$mp_curr[0]["ipHostNumber"]."

\n"; if ("$smbversion"=="samba3") $smbsess=exec ("smbstatus |gawk -F' ' '{print \" \"$5\" \"$4\" \"}' |grep ' $mp ' |cut -d' ' -f2 |head -n1"); else $smbsess=exec ("smbstatus |gawk -F' ' '{print \" \"$5\" \"$4}' |grep ' $mp ' |cut -d' ' -f3 |head -n1"); if ($smbsess=="") echo "

".gettext("Aucune connexion en cours sur cette machine")."

\n"; else { if ("$smbversion"=="samba3") $login = exec ("smbstatus | grep -v 'root' |gawk -F' ' '{print \" \"$5\" \"$2}' |grep ' $smbsess ' |cut -d' ' -f3 |head -n1"); else $login = exec ("smbstatus | grep -v 'root' |gawk -F' ' '{print \" \"$4\" \"$2}' |grep ' $smbsess ' |cut -d' ' -f3 |head -n1"); // echo "

$login est actuellement connecté sur cette machine

\n"; echo "

$login".gettext(" est actuellement connecté sur cette machine")."

\n"; } if (! isset($cnx_start)) $cnx_start=0; echo "

".gettext("Etat des 10 dernières connexions sur la machine")."

\n"; $query=" select * from connexions where netbios_name='$mp' order by id desc limit "; $query .= $cnx_start; $query .= ",10"; $result = mysql_query($query); if (($result)) { // Affichage des liens de navigation if ($cnx_start < 10) { $cnx_start1=0; $cnx_start2=$cnx_start+10; } else if (mysql_num_rows($result)==0) { $cnx_start2=$cnx_start; $cnx_start1=$cnx_start-10; } else { $cnx_start1=$cnx_start-10; $cnx_start2=$cnx_start+10; } echo "
"; if ($cnx_start >= 10) echo "<-- ".gettext("Voir les 10 connexions précédentes")."    "; echo ""; if ($cnx_start2 != $cnx_start) echo "".gettext("Voir les 10 connexions suivantes")." -->\n"; echo "
\n"; // affichage de la table connexions echo "\n"; echo ""; while ($r=mysql_fetch_array($result)) { // echo "\n"; echo "\n"; //echo "\n"; echo "\n"; echo "\n"; echo "\n"; } echo "
".$r["username"]."
".$r["username"]."".$r["ip_address"]."".$r["ip_address"]."".$r["logintime"]."".$r["logouttime"]."
\n"; } else echo gettext("erreur lors de la lecture de la base se3"); } } else { echo "Vous n'avez pas les droits pour accéder à cette page"; } include ("pdp.inc.php"); ?>