Subversion Repositories ALCASAR

Compare Revisions

Regard whitespace Rev 2126 → Rev 2127

/web/index.php
29,8 → 29,7
*****************************************************************/
$ouvre=fopen(CONF_FILE,"r");
if ($ouvre){
while (!feof ($ouvre))
{
while (!feof ($ouvre)){
$tampon = fgets($ouvre, 4096);
if (strpos($tampon,"=")!==false){
$tmp = explode("=",$tampon);
44,7 → 43,7
$organisme = trim($conf["ORGANISM"]);
$domainname = trim($conf["DOMAIN"]);
$hostname = "alcasar.".$domainname;
$network_pb = False;
$network_pb = False; # "alcasar-watchdog.sh" changes this value if a network issue is detected
$cert_add = "http://$hostname/certs";
$direct_access = False;
$display_menu=False;
56,7 → 55,8
$Language = 'en';
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
$Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
$Language = strtolower(substr(chop($Langue[0]),0,2)); }
$Language = strtolower(substr(chop($Langue[0]),0,2));
}
$redirect_link = "www.euronews.com"; # Default redirection for HTTPS interception (beware, this website must run in HTTP)
 
# Retrieve the user info behind the remote ip
63,12 → 63,9
exec ("sudo /usr/sbin/chilli_query list | grep -Ew $remote_ip" , $tab);
$user = explode (" ", $tab[0]);
 
 
# Test if it's a direct connexion to ALCASAR
if (isset($_SERVER['HTTP_HOST']))
{
if (($_SERVER['HTTP_HOST'] == $_SERVER['SERVER_ADDR']) || (preg_match ("/^alcasar$/", $_SERVER['HTTP_HOST'])) || (preg_match ("/^$hostname$/", $_SERVER['HTTP_HOST'])) || (preg_match ("/^$organisme$/", $_SERVER['HTTP_HOST'])))
{
if (isset($_SERVER['HTTP_HOST'])){
if (($_SERVER['HTTP_HOST'] == $_SERVER['SERVER_ADDR']) || (preg_match ("/^alcasar$/", $_SERVER['HTTP_HOST'])) || (preg_match ("/^$hostname$/", $_SERVER['HTTP_HOST'])) || (preg_match ("/^$organisme$/", $_SERVER['HTTP_HOST']))){
$direct_access=True;
exec("sudo /usr/sbin/ipset del not_auth_yet $remote_ip"); # del user of the ipset "not_auth_yet" to not loop
}
83,7 → 80,7
return $time[0]." h ".$time[1]." m ".$time[2]." s";
}
 
//if user need to be warn
# if user need to be warned
if(isset($_GET['warn']) && isset($_GET['url']))
{
$direct_access = False;
96,11 → 93,10
header("Location: $_GET[url]",TRUE,307);
exit;
}
// we retrieve his three last connections
# we retrieve his three last connections
if ((is_file("./acc/manager/lib/sql/drivers/mysql/functions.php"))&&(is_file("/etc/freeradius-web/config.php"))){
include_once("/etc/freeradius-web/config.php");
include_once("./acc/manager/lib/sql/drivers/mysql/functions.php");
$sql = "SELECT UserName, AcctStartTime, AcctStopTime, acctsessiontime FROM radacct WHERE UserName='$user[5]' ORDER BY AcctStartTime DESC LIMIT 0 , $nb_connection_history";
$link = @da_sql_pconnect($config);
if ($link){
120,17 → 116,13
else # the user isn't authenticated
{
exec("sudo /usr/sbin/ipset list not_auth_yet | grep $remote_ip | wc -l 2>&1", $ipset_not_auth_yet);
if(!$direct_access && $ipset_not_auth_yet[0] == '0') # it's the first stage of the interception
{
if(!$direct_access && $ipset_not_auth_yet[0] == '0'){ # it's the first stage of the interception
$display_menu = True; # Display menu for user not_auth_yet
if (!isset($_SERVER['HTTPS'])) # In HTTP, the user is redirected on it's home page. In HTTPS, it's on the default page
{
$redirect_link = $_SERVER['HTTP_HOST']; # to keep the user URL
if (!isset($_SERVER['HTTPS'])){ # In HTTP, the user is redirected on it's home page. In HTTPS, it's on the default page (see $redirect_link)
$redirect_link = $_SERVER['HTTP_HOST'];
}
 
}
if(isset($_GET['url'])) # it's the second stage (when user has clicked to open a connection ...)
{
if(isset($_GET['url'])){ # it's the second stage (when user has clicked on the button "open a connection")
exec("sudo /usr/sbin/ipset add not_auth_yet $remote_ip"); # Add user in the ipset "not_auth_yet" (DNS requests not intercepted)
$redir = "http://".$_GET['url'];
header("Location: $redir",TRUE,307);
139,8 → 131,6
if ($ipset_not_auth_yet[0] == '1'){ #if user not_auth_yet still here (index.php), we force DNS resquest.
echo "<script>window.location.reload(true)</script>"; # force DNS request
}
}
# Choice of language
if($Language == 'fr'){
165,13 → 155,11
$l_logout = "<a href=\"http://$hostname/index.php?url=$redirect_link\">Ouvrir une session Internet</a>";
}
else {
if ($user[5] != $user[0]) // authentication exception or not
{
if ($user[5] != $user[0]){ # authentication exception or not
$l_logout_explain = "Ferme la session de l'usager actuellement connecté. <br><br>Utilisateur connecté : <a href=\"http://$hostname:3990/logoff\" title=\"Deconnecter l'utilisateur $user[5]\"><b>$user[5]</b></a><br><br>$nb_connection_history dernières connexions :$connection_history";
$l_logout = "<a href=\"http://$hostname:3990/logoff\">Se déconnecter d'internet</a>";
}
else
{
else{
$l_logout_explain = "Votre système ($user[5]) est en exception d'authentication.<br><br>$nb_connection_history last connections :$connection_history";
$l_logout = "Information des connexions";
}
184,10 → 172,12
$l_service_sms_n = "Service SMS non actif";
$l_acc_sms = "Auto enregistrement par SMS";
$l_explain_warn = "L'administrateur a créé une archive contenant vos journaux de connexion dans le cadre d'une affaire judiciaire.";
if(isset($_GET['url']))
if(isset($_GET['url'])){
$l_continue_link = "<a href='index.php?redirect=1&url=$_GET[url]' class='button'>Je comprends et je souhaite continuer ma navigation.</a>";
else
}
else{
$l_continue_link = "<a href='index.php' class='button'>Je comprends et je souhaite continuer ma navigation.</a>";
}
$l_title_warn="Cher utilisateur, ";
$l_explain_warn_name="Une personne sous le nom de ";
$l_explain_warn_ip="sous cette IP : ";
216,13 → 206,11
$l_logout = "<a href=\"http://$hostname/index.php?url=$redirect_link\">Abrir uma conexão de Internet</a>";
}
else {
if ($user[5] != $user[0]) // authentication exception or not
{
if ($user[5] != $user[0]){ # authentication exception or not
$l_logout_explain = "Se desejar, feche a conexão do usuário atual conectado.<br> Usuário conectado : <a href=\"http://$hostname:3990/logoff\" title=\"Disconnect user $user[5]\"><b>$user[5]</b></a><br><br>$nb_connection_history last connections :$connection_history";
$l_logout = "<a href=\"http://$hostname:3990/logoff\">Sair da Internet</a>";
}
else
{
else{
$l_logout_explain = "O sistema ($user[5]) detctou exesso de autenticação.<br><br>$nb_connection_history logins últimos :$connection_history";
$l_logout = "Informações de conexões";
}
235,10 → 223,12
$l_service_sms_n = "SMS service disable";
$l_acc_sms = "Auto registration by SMS";
$l_explain_warn = "El administrador ha creado un archivo que contiene los periódicos de inicio de sesión como parte de un proceso judicial.";
if(isset($_GET['url']))
if(isset($_GET['url'])){
$l_continue_link = "<a href='index.php?redirect=1&url=$_GET[url]' class='button'>Lo comprendo y deseo continuar mi navegación.</a>";
else
}
else{
$l_continue_link = "<a href='index.php' class='button'>Lo comprendo y deseo continuar mi navegación.</a>";
}
$l_title_warn="Estimado usuario,";
$l_explain_warn_name="El usario ";
$l_explain_warn_ip="con este IP : ";
267,13 → 257,11
$l_logout = "<a href=\"http://$hostname/index.php?url=$redirect_link\">打开一个网络进程</a>";
}
else {
if ($user[5] != $user[0]) // authentication exception or not
{
if ($user[5] != $user[0]){ # authentication exception or not
$l_logout_explain = "关闭当前连接进程。<br> 已连接用户:<a href=\"http://$hostname:3990/logoff\" title=\" $user[5]\"><b>$user[5]</b></a><br><br>$nb_connection_history 最后连接 :$connection_history";
$l_logout = "<a href=\"http://$hostname:3990/logoff\">断开网络</a>";
}
else
{
else{
$l_logout_explain = "您的系统($user[5])验证例外<br><br>$nb_connection_history 最后连接: $connection_history";
$l_logout = "连接信息";
}
286,10 → 274,12
$l_service_sms_n = "短信服务禁用";
$l_acc_sms = "短信自动注册";
$l_explain_warn = "管理员创建了一份可用于司法调查的连接日志文档。";
if(isset($_GET['url']))
if(isset($_GET['url'])){
$l_continue_link = "<a href='index.php?redirect=1&url=$_GET[url]' class='button'>我明白并希望继续浏览。</a>";
else
}
else{
$l_continue_link = "<a href='index.php' class='button'>我明白并希望继续浏览。</a>";
}
$l_title_warn="亲爱的用户,";
$l_explain_warn_name="一人名为";
$l_explain_warn_ip="在此IP:";
321,8 → 311,9
$l_logout_explain = "و لا جلسة استفسار للإنترنت مفتوحة حاليا على نظامك";
$close_session_text = "فتح جلسة الإنترنت";
$l_logout = "<a href=\"http://$hostname/index.php?url=$redirect_link\">$close_session_text</a>";
} else {
if ($user[5] != $user[0]) { // authentication exception or not
}
else{
if ($user[5] != $user[0]){ # authentication exception or not
$close_session_text = "إقفال جلسة المستخدم المتصل حاليا";
$user_logged_text = "المستخدم متصل";
$disconnect_user_text = "قطع الاتصال على المستخدم";
390,13 → 381,11
$l_logout = "<a href=\"http://$hostname/index.php?url=$redirect_link\">Open an Internet session</a>";
}
else {
if ($user[5] != $user[0]) // authentication exception or not
{
if ($user[5] != $user[0]){ # authentication exception or not
$l_logout_explain = "Close the session of the user currently connected.<br> User logged-on : <a href=\"http://$hostname:3990/logoff\" title=\"Disconnect user $user[5]\"><b>$user[5]</b></a><br><br>$nb_connection_history last connections :$connection_history";
$l_logout = "<a href=\"http://$hostname:3990/logoff\">Logoff from internet</a>";
}
else
{
else{
$l_logout_explain = "Your system ($user[5]) is in exception of authentication.<br><br>$nb_connection_history Last logins :$connection_history";
$l_logout = "Connections information";
}
409,10 → 398,12
$l_service_sms_n = "SMS service disable";
$l_acc_sms = "Auto registration by SMS";
$l_explain_warn = "The administrator created an archive which contains your imputabilities logs for a judicial investigation.";
if(isset($_GET['url']))
if(isset($_GET['url'])){
$l_continue_link = "<a href='index.php?redirect=1&url=$_GET[url]' class='button'>I understand and I wish to continue.</a>";
else
}
else{
$l_continue_link = "<a href='index.php' class='button'>I understand and I wish to continue.</a>";
}
$l_title_warn="Dear user,";
$l_explain_warn_name="Someone called ";
$l_explain_warn_ip="with this IP : ";
468,6 → 459,7
include("css/style_intercept.css");
echo "</style>";
?>
 
<script type="text/javascript">
function valoriserDiv5(param){
document.getElementById("box_info").innerHTML = param.innerHTML;
485,15 → 477,13
}
}
else {
#if user need to be warn about that someone who read his logs
if(isset($_GET['warn']) && isset($_GET['url']) && $_GET['warn'] == '1')
{
# if user need to be warned that someone reads his logs
if(isset($_GET['warn']) && isset($_GET['url']) && $_GET['warn'] == '1'){
echo"
<div id=\"cadre_titre\" class=\"titre_refus\">
<p id=\"acces_controle\" class=\"titre_refus\">$l_title_warn</p>";
}
else
{
else{
echo"
<div id=\"cadre_titre\" class=\"titre_refus\">
<p id=\"acces_controle\" class=\"titre_refus\">$l_title</p>";
500,6 → 490,7
}
}
?>
 
<div id="boite_logo">
<img src="<?php echo "$img_rep$img_organisme"; ?>">
</div>
535,7 → 526,8
$sms_div_over='';
}
if ($direct_access || $display_menu){
echo " <div id=\"box_bienvenue\">
echo "
<div id=\"box_bienvenue\">
$l_welcome
</div>
<div class=\"box_menu\" id=\"box_conn\" onmouseover=\"valoriserDiv5(text_conn);\">
571,11 → 563,8
</div>";
}
else {
#if user need to be warn about that someone who read his logs
if(isset($_GET['warn']) && isset($_GET['url']) && $_GET['warn'] == '1')
{
# user need to be warned that someone reads his logs
if(isset($_GET['warn']) && isset($_GET['url']) && $_GET['warn'] == '1'){
$filename="/var/www/html/acc/backup/log_info.txt";
$l_explain_warn="";
if(file_exists($filename)){
588,28 → 577,21
$log_reason=$infos[2];
$log_ip=$infos[3];
}
 
$l_explain_warn="$l_explain_warn_name$log_user ( $l_explain_warn_ip$log_ip ) $l_explain_warn_date$log_date $l_explain_warn_reason$log_reason";
}
else
{
else{
echo "Log error!";
}
echo "
<div id=\"box_refuse\">
<img src=\"$img_rep$img_warning\">
<p>$l_explain_warn</p>
 
</div>
<div id=\"liens_redir\">
<p>$l_continue_link</p>
</div>";
 
}
else
{
else{
echo "
<div id=\"box_refuse\">
<img src=\"$img_rep$img_false\">
632,5 → 614,3
</div>
</body>
</html>