Subversion Repositories ALCASAR

Rev

Rev 715 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log

Rev 715 Rev 717
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2
<HTML><!-- written by Rexy -->
2
<HTML><!-- written by Rexy -->
3
<HEAD>
3
<HEAD>
4
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
<TITLE>ALCASAR Filter Exceptions</TITLE>
5
<TITLE>ALCASAR Filter Exceptions</TITLE>
6
<link rel="stylesheet" href="/css/style.css" type="text/css">
6
<link rel="stylesheet" href="/css/style.css" type="text/css">
7
</HEAD>
7
</HEAD>
8
<body>
8
<body>
9
<?
9
<?
10
# Choice of language
10
# Choice of language
11
$Language = 'en';
11
$Language = 'en';
12
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
12
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){
13
  $Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
13
  $Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
14
  $Language = strtolower(substr(chop($Langue[0]),0,2)); }
14
  $Language = strtolower(substr(chop($Langue[0]),0,2)); }
15
if($Language == 'fr'){
15
if($Language == 'fr'){
16
  $l_error_open_file="Erreur d'ouverture du fichier";
16
  $l_error_open_file="Erreur d'ouverture du fichier";
17
  $l_exception_IP = "Exception au filtrage";
17
  $l_exception_IP = "Exception au filtrage";
18
  $l_exception_txt="Entrez ici les adresses IP des stations du réseau de consultation ne subissant ni filtrage WEB ni filtrage réseau<BR>Entrez une adresse IP par ligne";
18
  $l_exception_txt="Entrez ici les adresses IP des stations du réseau de consultation ne subissant ni filtrage WEB ni filtrage réseau<BR>Entrez une adresse IP par ligne";
19
  $l_submit = "Enregistrer";
19
  $l_submit = "Enregistrer";
20
}
20
}
21
else {
21
else {
22
  $l_error_open_file="Error opening the file";
22
  $l_error_open_file="Error opening the file";
23
  $l_exception_IP = "Network filtering exceptions";
23
  $l_exception_IP = "Network filtering exceptions";
24
  $l_exception_txt="Put here the stations IP address that won't be neither WEB filtered nor network filtered<BR>Put one IP per row";
24
  $l_exception_txt="Put here the stations IP address that won't be neither WEB filtered nor network filtered<BR>Put one IP per row";
25
  $l_submit = "Submit";
25
  $l_submit = "Submit";
26
}
26
}
27
$conf_file="/usr/local/etc/alcasar.conf";
27
$conf_file="/usr/local/etc/alcasar.conf";
28
if (isset($_POST['choix'])){ 
28
if (isset($_POST['choix'])){ 
29
	switch ($_POST['choix'])
29
	switch ($_POST['choix'])
30
	{
30
	{
31
	case 'IP_exceptions' :
31
	case 'IP_exceptions' :
32
		// réencodage iso + format unix + rc fin de ligne (ouf...)
32
		// réencodage iso + format unix + rc fin de ligne (ouf...)
33
		$ip_list = str_replace("\r\n", "\n", utf8_decode($_POST['exception_list']));
33
		$ip_list = str_replace("\r\n", "\n", utf8_decode($_POST['exception_list']));
34
		if (strlen($ip_list) != 0){
34
		if (strlen($ip_list) != 0){
35
			if ($ip_list[strlen($ip_list)-1] != "\n") { $ip_list[strlen($ip_list)]="\n";} ;} ;
35
			if ($ip_list[strlen($ip_list)-1] != "\n") { $ip_list[strlen($ip_list)]="\n";} ;} ;
36
		unset($_POST['exception_list']);
36
		unset($_POST['exception_list']);
37
		// écriture exception pour Dansguardian
37
		// écriture exception pour Dansguardian
38
		$fichier=fopen("/etc/dansguardian/lists/exceptioniplist", "w+");
38
		$fichier=fopen("/etc/dansguardian/lists/exceptioniplist", "w+");
39
		fputs($fichier,$ip_list);
39
		fputs($fichier,$ip_list);
40
		fclose($fichier);
40
		fclose($fichier);
41
		// écriture exception pour filtrage réseau et filtrage DNS
41
		// écriture exception pour filtrage réseau et filtrage DNS
42
		$fichier=fopen("/usr/local/etc/alcasar-filter-exceptions", "w+");
42
		$fichier=fopen("/usr/local/etc/alcasar-filter-exceptions", "w+");
43
		fputs($fichier, $ip_list);
43
		fputs($fichier, $ip_list);
44
		fclose($fichier);
44
		fclose($fichier);
45
		// test si le filtragei Dansguardian est activés
45
		// test si le filtrage Dansguardian est activé
46
		if (is_file ($conf_file))
46
		if (is_file ($conf_file))
47
			{
47
			{
48
			$tab=file($conf_file);
48
			$tab=file($conf_file);
49
			if ($tab)
49
			if ($tab)
50
				{
50
				{
51
				foreach ($tab as $line)
51
				foreach ($tab as $line)
52
					{
52
					{
53
					$field=explode("=", $line);
53
					$field=explode("=", $line);
54
					if ($field[0] == "DNS_FILTERING")	{$DNS_FILTERING=trim($field[1]);}
54
					if ($field[0] == "DNS_FILTERING")	{$DNS_FILTERING=trim($field[1]);}
55
					if ($field[0] == "PROTOCOLS_FILTERING")	{$PROTOCOLS_FILTERING=trim($field[1]);}
55
					if ($field[0] == "PROTOCOLS_FILTERING")	{$PROTOCOLS_FILTERING=trim($field[1]);}
56
					}
56
					}
57
				}
57
				}
58
			}
58
			}
59
		else { echo "$l_error_open_file $conf_file";}
59
		else { echo "$l_error_open_file $conf_file";}
60
		if ($DNS_FILTERING == "on")
60
		if ($DNS_FILTERING == "on")
61
			{
61
			{
62
			exec ("sudo service dansguardian restart");
62
			exec ("sudo service dansguardian restart");
63
			}
63
			}
64
		if (($DNS_FILTERING == "on")||($PROTOCOLS_FILTERING == "on"))
64
		if (($DNS_FILTERING == "on")||($PROTOCOLS_FILTERING == "on"))
65
			{
65
			{
66
			exec ("sudo /usr/local/bin/alcasar-iptables.sh"); 
66
			exec ("sudo /usr/local/bin/alcasar-iptables.sh"); 
67
			}
67
			}
68
	break;
68
	break;
69
	}	
69
	}	
70
}
70
}
71
?>
71
?>
72
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
72
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0">
73
	<tr><th><?php echo $l_exception_IP ;?></th></tr>
73
	<tr><th><?php echo $l_exception_IP ;?></th></tr>
74
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr>
74
	<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr>
75
</TABLE>
75
</TABLE>
76
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
76
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1>
77
<tr><td valign="middle" align="left">
77
<tr><td valign="middle" align="left">
78
<TABLE width=70% border=0>
78
<TABLE width=70% border=0>
79
<?php
79
<?php
80
echo "<form action='$_SERVER[PHP_SELF]' method='POST'>";
80
echo "<form action='$_SERVER[PHP_SELF]' method='POST'>";
81
echo " $l_exception_txt";
81
echo " $l_exception_txt";
82
echo "<BR><textarea name='exception_list' rows=5 cols=40>";
82
echo "<BR><textarea name='exception_list' rows=5 cols=40>";
83
$filename="/usr/local/etc/alcasar-filter-exceptions";
83
$filename="/usr/local/etc/alcasar-filter-exceptions";
84
if (file_exists($filename))
84
if (file_exists($filename))
85
	{
85
	{
86
	if (filesize($filename) != 0)
86
	if (filesize($filename) != 0)
87
		{
87
		{
88
		$pointeur=fopen($filename,"r");
88
		$pointeur=fopen($filename,"r");
89
		$tampon = fread($pointeur, filesize($filename));
89
		$tampon = fread($pointeur, filesize($filename));
90
		fclose($pointeur);
90
		fclose($pointeur);
91
		echo $tampon;
91
		echo $tampon;
92
		}
92
		}
93
	}
93
	}
94
	else
94
	else
95
	{
95
	{
96
	echo "erreur d'ouverture du fichier $filename";
96
	echo "erreur d'ouverture du fichier $filename";
97
	}
97
	}
98
echo "</textarea><BR>";
98
echo "</textarea><BR>";
99
?>
99
?>
100
<input type='hidden' name='choix' value='IP_exceptions'>
100
<input type='hidden' name='choix' value='IP_exceptions'>
101
<input type='submit' value='Enregistrer les modifications'></CENTER>
101
<input type='submit' value='Enregistrer les modifications'></CENTER>
102
</FORM>
102
</FORM>
103
</td></tr>
103
</td></tr>
104
</TABLE>
104
</TABLE>
105
</BODY>
105
</BODY>
106
</HTML>
106
</HTML>
107
 
107