| Line 8... |
Line 8... |
| 8 |
<body>
|
8 |
<body>
|
| 9 |
<div id="ldoverlay" class="overlay">
|
9 |
<div id="ldoverlay" class="overlay">
|
| 10 |
<div class="lds-spinner" id="spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>
|
10 |
<div class="lds-spinner" id="spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>
|
| 11 |
</div>
|
11 |
</div>
|
| 12 |
<?
|
12 |
<?
|
| 13 |
function form_filter ($form_content)
|
13 |
function form_filter ($form_content){
|
| 14 |
{
|
- |
|
| 15 |
// réencodage iso + format unix + rc fin de ligne (ouf...)
|
14 |
// Re-encoding : ISO + unix format + end-of-line
|
| 16 |
$list = str_replace("\r\n", "\n", utf8_decode($form_content));
|
15 |
$list = str_replace("\r\n", "\n", utf8_decode($form_content));
|
| 17 |
if (strlen($list) != 0){
|
16 |
if (strlen($list) != 0){
|
| 18 |
if ($list[strlen($list)-1] != "\n") { $list[strlen($list)]="\n";} ;} ;
|
17 |
if ($list[strlen($list)-1] != "\n") { $list[strlen($list)]="\n";} ;} ;
|
| 19 |
return $list;
|
18 |
return $list;
|
| 20 |
}
|
19 |
}
|
| - |
|
20 |
|
| 21 |
function form_filter_ip($form_content, $color)
|
21 |
function form_filter_ip($form_content, $color){
|
| 22 |
{
|
- |
|
| 23 |
//# reconstruction des ip
|
22 |
// IP reconstruction
|
| 24 |
$list = explode("\n", form_filter($form_content));
|
23 |
$list = explode("\n", form_filter($form_content));
|
| 25 |
$new_list = "";
|
24 |
$new_list = "";
|
| 26 |
foreach ($list as &$value)
|
25 |
foreach ($list as &$value){
|
| 27 |
{
|
- |
|
| 28 |
if(preg_match('/([0-9]{1,3}.){3}[0-9]{1,3}/', $value))
|
26 |
if(preg_match('/([0-9]{1,3}.){3}[0-9]{1,3}/', $value)){
|
| 29 |
{
|
- |
|
| 30 |
$new_list = $new_list.$value."\n";
|
27 |
$new_list = $new_list.$value."\n";
|
| 31 |
}
|
28 |
}
|
| 32 |
}
|
29 |
}
|
| 33 |
if($color == "white")
|
30 |
if($color == "white"){
|
| 34 |
{
|
- |
|
| 35 |
return preg_replace("/(.*)\n/", "add wl_ip_allowed $1\n", $new_list);
|
31 |
return preg_replace("/(.*)\n/", "add wl_ip_allowed $1\n", $new_list);
|
| 36 |
}
|
32 |
}
|
| 37 |
else
|
33 |
else {
|
| 38 |
{
|
- |
|
| 39 |
return preg_replace("/(.*)\n/", "add bl_ip_blocked $1\n", $new_list);
|
34 |
return preg_replace("/(.*)\n/", "add bl_ip_blocked $1\n", $new_list);
|
| 40 |
}
|
35 |
}
|
| 41 |
}
|
36 |
}
|
| - |
|
37 |
|
| 42 |
function echo_file ($filename)
|
38 |
function echo_file ($filename){
|
| 43 |
{
|
- |
|
| 44 |
if (file_exists($filename))
|
39 |
if (file_exists($filename)){
|
| 45 |
{
|
- |
|
| 46 |
if (filesize($filename) != 0)
|
40 |
if (filesize($filename) != 0){
|
| 47 |
{
|
- |
|
| 48 |
$pointeur=fopen($filename,"r");
|
41 |
$pointeur=fopen($filename,"r");
|
| 49 |
$tampon = fread($pointeur, filesize($filename));
|
42 |
$tampon = fread($pointeur, filesize($filename));
|
| 50 |
fclose($pointeur);
|
43 |
fclose($pointeur);
|
| 51 |
echo $tampon;
|
44 |
echo $tampon;
|
| 52 |
}
|
45 |
}
|
| 53 |
}
|
46 |
}
|
| 54 |
else
|
47 |
else {
|
| 55 |
{
|
- |
|
| 56 |
echo "$filename doesn't exist";
|
48 |
echo "$filename doesn't exist";
|
| 57 |
}
|
49 |
}
|
| 58 |
}
|
50 |
}
|
| 59 |
function echo_ip_file ($filename)
|
51 |
function echo_ip_file ($filename){
|
| 60 |
{
|
- |
|
| 61 |
$filename = escapeshellarg($filename);
|
52 |
$filename = escapeshellarg($filename);
|
| 62 |
exec("cat $filename | cut -d ' ' -f3", $resultat);
|
53 |
exec("cat $filename | cut -d ' ' -f3", $resultat);
|
| 63 |
for($i=0; $i<exec("wc -l $filename"); $i++)
|
54 |
for($i=0; $i<exec("wc -l $filename"); $i++){
|
| 64 |
{
|
- |
|
| 65 |
echo $resultat[$i]."\n";
|
55 |
echo $resultat[$i]."\n";
|
| 66 |
}
|
56 |
}
|
| 67 |
}
|
57 |
}
|
| 68 |
|
58 |
|
| 69 |
# Choice of language
|
59 |
# Choice of language
|
| Line 72... |
Line 62... |
| 72 |
$Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
|
62 |
$Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
|
| 73 |
$Language = strtolower(substr(chop($Langue[0]),0,2));
|
63 |
$Language = strtolower(substr(chop($Langue[0]),0,2));
|
| 74 |
}
|
64 |
}
|
| 75 |
if($Language == 'fr'){
|
65 |
if($Language == 'fr'){
|
| 76 |
$l_bl="Liste noire principale";
|
66 |
$l_bl="Liste noire principale";
|
| - |
|
67 |
$l_state="Sont actuellement bloqués : ";
|
| 77 |
$l_load="Chargement...";
|
68 |
$l_load="Chargement...";
|
| 78 |
$l_list_version="Version de la liste : ";
|
69 |
$l_list_version="Version de la liste : ";
|
| 79 |
$l_bl_categories="Sélectionnez les catégories à filtrer";
|
70 |
$l_bl_categories="Sélectionnez les catégories à filtrer";
|
| 80 |
$l_download_bl="Télécharger la dernière version";
|
71 |
$l_download_bl="Télécharger la dernière version";
|
| 81 |
$l_fingerprint="L'empreinte numérique du fichier téléchargé est : ";
|
72 |
$l_fingerprint="L'empreinte numérique du fichier téléchargé est : ";
|
| Line 108... |
Line 99... |
| 108 |
$l_error_upload="Erreur d'envoi du fichier";
|
99 |
$l_error_upload="Erreur d'envoi du fichier";
|
| 109 |
$l_remove="Supprimer";
|
100 |
$l_remove="Supprimer";
|
| 110 |
$l_submit="Envoyer";
|
101 |
$l_submit="Envoyer";
|
| 111 |
$l_nb_ip="Nombre d'IP";
|
102 |
$l_nb_ip="Nombre d'IP";
|
| 112 |
$l_nb_domain_names="Nombre de noms de domaine";
|
103 |
$l_nb_domain_names="Nombre de noms de domaine";
|
| 113 |
$l_nbDomainNames="Noms de domaine :";
|
104 |
$l_nbDomainNames="noms de domaine";
|
| 114 |
$l_nbUrl="Url :";
|
105 |
$l_nbUrl="URL";
|
| 115 |
$l_nbIp="Ip :";
|
106 |
$l_nbIp="@Ip";
|
| 116 |
$l_update_cat="Blacklist principale (catégorie 'malware' uniquement)";
|
107 |
$l_update_cat="Blacklist principale (catégorie 'malware' uniquement)";
|
| 117 |
$l_update_cat_header="Mise à jour automatique des Blacklists";
|
108 |
$l_update_cat_header="Mise à jour automatique des Blacklists";
|
| 118 |
$l_update_success="Échec de la mise à jour";
|
109 |
$l_update_success="Échec de la mise à jour";
|
| 119 |
$l_update_failed="Mise à jour réussie";
|
110 |
$l_update_failed="Mise à jour réussie";
|
| 120 |
$l_disable="Désactiver";
|
111 |
$l_disable="Désactiver";
|
| Line 159... |
Line 150... |
| 159 |
$l_error_upload="Error durante el proceso de carga";
|
150 |
$l_error_upload="Error durante el proceso de carga";
|
| 160 |
$l_remove="Borrar";
|
151 |
$l_remove="Borrar";
|
| 161 |
$l_submit="Enviar";
|
152 |
$l_submit="Enviar";
|
| 162 |
$l_nb_ip="Números de IP";
|
153 |
$l_nb_ip="Números de IP";
|
| 163 |
$l_nb_domain_names="Números de sitios";
|
154 |
$l_nb_domain_names="Números de sitios";
|
| 164 |
$l_nbDomainNames="Domain names: ";
|
155 |
$l_nbDomainNames="sitios";
|
| 165 |
$l_nbUrl="Url :";
|
156 |
$l_nbUrl="URL";
|
| 166 |
$l_nbIp="Ip :";
|
157 |
$l_nbIp="IP@";
|
| 167 |
$l_update_cat="¿Actualizar automáticamente las categorías cada 12 horas (solo 'malware' por ahora)?";
|
158 |
$l_update_cat="¿Actualizar automáticamente las categorías cada 12 horas (solo 'malware' por ahora)?";
|
| 168 |
$l_update_cat_header="Actualización automática de la lista negra";
|
159 |
$l_update_cat_header="Actualización automática de la lista negra";
|
| 169 |
$l_update_success="actualización fallida";
|
160 |
$l_update_success="actualización fallida";
|
| 170 |
$l_update_failed="actualización exitosa";
|
161 |
$l_update_failed="actualización exitosa";
|
| 171 |
$l_disable="Desactivar";
|
162 |
$l_disable="Desactivar";
|
| Line 243... |
Line 234... |
| 243 |
$bl_safesearch="off";
|
234 |
$bl_safesearch="off";
|
| 244 |
$bl_pureip="off";
|
235 |
$bl_pureip="off";
|
| 245 |
$updateable_ossi_bls=["ossi-bl-candc"];
|
236 |
$updateable_ossi_bls=["ossi-bl-candc"];
|
| 246 |
|
237 |
|
| 247 |
# default values
|
238 |
# default values
|
| 248 |
if (is_file ($conf_file))
|
239 |
if (is_file ($conf_file)){
|
| 249 |
{
|
- |
|
| 250 |
$tab=file($conf_file);
|
240 |
$tab=file($conf_file);
|
| 251 |
if ($tab)
|
241 |
if ($tab){
|
| 252 |
{
|
- |
|
| 253 |
foreach ($tab as $line)
|
242 |
foreach ($tab as $line){
|
| 254 |
{
|
- |
|
| 255 |
$field=explode("=", $line);
|
243 |
$field=explode("=", $line);
|
| 256 |
switch ($field[0]) {
|
244 |
switch ($field[0]){
|
| 257 |
case 'PRIVATE_IP':
|
245 |
case 'PRIVATE_IP':
|
| 258 |
$PRIVATE_IP_MASK=trim($field[1]);
|
246 |
$PRIVATE_IP_MASK=trim($field[1]);
|
| 259 |
$tmp = explode("/",$PRIVATE_IP_MASK);
|
247 |
$tmp = explode("/",$PRIVATE_IP_MASK);
|
| 260 |
$PRIVATE_IP=$tmp[0];
|
248 |
$PRIVATE_IP=$tmp[0];
|
| 261 |
break;
|
249 |
break;
|
| 262 |
|
- |
|
| 263 |
case 'BL_SAFESEARCH':
|
250 |
case 'BL_SAFESEARCH':
|
| 264 |
if (strtolower(trim($field[1])) == 'on') {
|
251 |
if (strtolower(trim($field[1])) == 'on'){
|
| 265 |
$bl_safesearch='on';
|
252 |
$bl_safesearch='on';
|
| 266 |
}
|
253 |
}
|
| 267 |
break;
|
254 |
break;
|
| 268 |
|
- |
|
| 269 |
case 'BL_PUREIP':
|
255 |
case 'BL_PUREIP':
|
| 270 |
if (strtolower(trim($field[1])) == 'on') {
|
256 |
if (strtolower(trim($field[1])) == 'on'){
|
| 271 |
$bl_pureip='on';
|
257 |
$bl_pureip='on';
|
| 272 |
}
|
258 |
}
|
| 273 |
break;
|
259 |
break;
|
| 274 |
}
|
260 |
}
|
| 275 |
}
|
261 |
}
|
| 276 |
}
|
262 |
}
|
| 277 |
}
|
263 |
}
|
| 278 |
else { echo "$l_error_open_file $conf_file";}
|
264 |
else { echo "$l_error_open_file $conf_file";}
|
| 279 |
if (isset($_POST['choix'])){ $choix=$_POST['choix']; } else { $choix=""; }
|
265 |
if (isset($_POST['choix'])){ $choix=$_POST['choix']; } else { $choix=""; }
|
| 280 |
switch ($choix)
|
266 |
switch ($choix){
|
| 281 |
{
|
- |
|
| 282 |
case 'Download_list' :
|
267 |
case 'Download_list' :
|
| 283 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --download");
|
268 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --download");
|
| 284 |
break;
|
269 |
break;
|
| 285 |
case 'Active_list' :
|
270 |
case 'Active_list' :
|
| 286 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --adapt");
|
271 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --adapt");
|
| Line 288... |
Line 273... |
| 288 |
break;
|
273 |
break;
|
| 289 |
case 'Reject_list' :
|
274 |
case 'Reject_list' :
|
| 290 |
unlink ("$dir_tmp/blacklists.tar.gz"); unlink ("$dir_tmp/md5sum");
|
275 |
unlink ("$dir_tmp/blacklists.tar.gz"); unlink ("$dir_tmp/md5sum");
|
| 291 |
break;
|
276 |
break;
|
| 292 |
case 'MAJ_cat_bl' :
|
277 |
case 'MAJ_cat_bl' :
|
| 293 |
if (file_exists($bl_categories_enabled))
|
278 |
if (file_exists($bl_categories_enabled)){
|
| 294 |
{
|
- |
|
| 295 |
exec("/bin/sed -i \"/^ossi-/!d\" $bl_categories_enabled"); // keep ossi custom categories
|
279 |
exec("/bin/sed -i \"/^ossi-/!d\" $bl_categories_enabled"); // keep ossi custom categories
|
| 296 |
$pointeur=fopen($bl_categories_enabled, "a+");
|
280 |
$pointeur=fopen($bl_categories_enabled, "a+");
|
| 297 |
foreach ($_POST as $key => $value)
|
281 |
foreach ($_POST as $key => $value){
|
| 298 |
{
|
- |
|
| 299 |
if (strstr($key,'chk-'))
|
282 |
if (strstr($key,'chk-')){
|
| 300 |
{
|
- |
|
| 301 |
$line=str_replace('chk-','',$key)."\n";
|
283 |
$line=str_replace('chk-','',$key)."\n";
|
| 302 |
fwrite($pointeur,$line);
|
284 |
fwrite($pointeur,$line);
|
| 303 |
}
|
285 |
}
|
| 304 |
}
|
286 |
}
|
| 305 |
fclose($pointeur);
|
287 |
fclose($pointeur);
|
| Line 320... |
Line 302... |
| 320 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
302 |
exec ("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
| 321 |
break;
|
303 |
break;
|
| 322 |
case 'Specific_filtering':
|
304 |
case 'Specific_filtering':
|
| 323 |
$bl_pureip='off';
|
305 |
$bl_pureip='off';
|
| 324 |
$bl_safesearch='off';
|
306 |
$bl_safesearch='off';
|
| 325 |
foreach ($_POST as $key => $value)
|
307 |
foreach ($_POST as $key => $value){
|
| 326 |
{
|
- |
|
| 327 |
if (strstr($key,'chk-ip')) $bl_pureip="on";
|
308 |
if (strstr($key,'chk-ip')) $bl_pureip="on";
|
| 328 |
if (strstr($key,'chk-safesearch')) $bl_safesearch="on";
|
309 |
if (strstr($key,'chk-safesearch')) $bl_safesearch="on";
|
| 329 |
}
|
310 |
}
|
| 330 |
exec ("sudo /usr/local/bin/alcasar-url_filter_bl.sh -safesearch_$bl_safesearch -pureip_$bl_pureip");
|
311 |
exec ("sudo /usr/local/bin/alcasar-url_filter_bl.sh -safesearch_$bl_safesearch -pureip_$bl_pureip");
|
| 331 |
break;
|
312 |
break;
|
| 332 |
case 'MAJ_ossi_file' :
|
313 |
case 'MAJ_ossi_file' :
|
| 333 |
foreach ($_POST as $fichier => $value)
|
314 |
foreach ($_POST as $fichier => $value){
|
| 334 |
{
|
- |
|
| 335 |
if($fichier != "choix" && $fichier != "update_cat")
|
315 |
if($fichier != "choix" && $fichier != "update_cat"){
|
| 336 |
{
|
- |
|
| 337 |
$action=$_POST[$fichier];
|
316 |
$action=$_POST[$fichier];
|
| 338 |
if($action == $l_remove) //delete
|
317 |
if($action == $l_remove){ //delete
|
| 339 |
{
|
- |
|
| 340 |
exec("/bin/sed -i ".escapeshellarg("/^$fichier\$/d")." $bl_categories_enabled");
|
318 |
exec("/bin/sed -i ".escapeshellarg("/^$fichier\$/d")." $bl_categories_enabled");
|
| 341 |
exec("/bin/sed -i ".escapeshellarg("/$fichier\$/d")." $bl_categories");
|
319 |
exec("/bin/sed -i ".escapeshellarg("/$fichier\$/d")." $bl_categories");
|
| 342 |
exec("rm -rf $dir_blacklist".escapeshellarg($fichier));
|
320 |
exec("rm -rf $dir_blacklist".escapeshellarg($fichier));
|
| 343 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
321 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
| 344 |
}
|
322 |
}
|
| 345 |
if($action == $l_disable) //disable
|
323 |
if($action == $l_disable){ //disable
|
| 346 |
{
|
- |
|
| 347 |
|
- |
|
| 348 |
exec("/bin/sed -i ".escapeshellarg("/^$fichier\$/d")." $bl_categories_enabled");
|
324 |
exec("/bin/sed -i ".escapeshellarg("/^$fichier\$/d")." $bl_categories_enabled");
|
| 349 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
325 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
| 350 |
}
|
326 |
}
|
| 351 |
if($action == $l_enable) //enable
|
327 |
if($action == $l_enable){ //enable
|
| 352 |
{
|
- |
|
| 353 |
file_put_contents($bl_categories_enabled, $fichier."\n", FILE_APPEND);
|
328 |
file_put_contents($bl_categories_enabled, $fichier."\n", FILE_APPEND);
|
| 354 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload 2>&1", $out, $ret);
|
329 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload 2>&1", $out, $ret);
|
| 355 |
}
|
330 |
}
|
| 356 |
if($action == $l_update) //update
|
331 |
if($action == $l_update){ //update
|
| 357 |
{
|
- |
|
| 358 |
if ($fichier == ossi-bl-candc)
|
332 |
if ($fichier == ossi-bl-candc){
|
| 359 |
{
|
- |
|
| 360 |
exec("sudo /usr/local/bin/alcasar-bl-autoupdate.sh --update_ossi-bl-candc 2>&1", $out, $ret);
|
333 |
exec("sudo /usr/local/bin/alcasar-bl-autoupdate.sh --update_ossi-bl-candc 2>&1", $out, $ret);
|
| 361 |
if ($ret == 0)
|
334 |
if ($ret == 0){
|
| 362 |
{
|
- |
|
| 363 |
echo "<p>".$l_update_success."</p>";
|
335 |
echo "<p>".$l_update_success."</p>";
|
| 364 |
}
|
336 |
}
|
| 365 |
else
|
337 |
else {
|
| 366 |
{
|
- |
|
| 367 |
echo "<p>".$l_update_failed.":</p>";
|
338 |
echo "<p>".$l_update_failed.":</p>";
|
| 368 |
foreach ($out as $line)
|
339 |
foreach ($out as $line){
|
| 369 |
{
|
- |
|
| 370 |
echo "<p>".$line."</p>";
|
340 |
echo "<p>".$line."</p>";
|
| 371 |
}
|
341 |
}
|
| 372 |
}
|
342 |
}
|
| 373 |
}
|
343 |
}
|
| 374 |
}
|
344 |
}
|
| Line 379... |
Line 349... |
| 379 |
// Reset updatelists, truncate files
|
349 |
// Reset updatelists, truncate files
|
| 380 |
$f = fopen($update_file_ossi_cat, 'w');
|
350 |
$f = fopen($update_file_ossi_cat, 'w');
|
| 381 |
fclose($f);
|
351 |
fclose($f);
|
| 382 |
$f = fopen($update_file_ossi_cat, 'w');
|
352 |
$f = fopen($update_file_ossi_cat, 'w');
|
| 383 |
fclose($f);
|
353 |
fclose($f);
|
| 384 |
|
- |
|
| 385 |
foreach ($_POST as $fichier => $value)
|
354 |
foreach ($_POST as $fichier => $value){ // General BL
|
| 386 |
{
|
- |
|
| 387 |
// General BL
|
- |
|
| 388 |
if ($fichier == 'update_cat' && $value == 1)
|
355 |
if ($fichier == 'update_cat' && $value == 1){
|
| 389 |
{
|
- |
|
| 390 |
if (file_exists($bl_categories_enabled))
|
356 |
if (file_exists($bl_categories_enabled)){
|
| 391 |
{
|
- |
|
| 392 |
file_put_contents($update_file_cat, "malware rsync://ftp.ut-capitole.fr/blacklist/dest/malware\n", FILE_APPEND);
|
357 |
file_put_contents($update_file_cat, "malware rsync://ftp.ut-capitole.fr/blacklist/dest/malware\n", FILE_APPEND);
|
| 393 |
}
|
358 |
}
|
| 394 |
}
|
359 |
}
|
| 395 |
// C&C Server List
|
- |
|
| 396 |
if ($fichier == 'ossi-bl-candc' && $value == 1)
|
360 |
if ($fichier == 'ossi-bl-candc' && $value == 1){ // C&C Server List
|
| 397 |
{
|
- |
|
| 398 |
file_put_contents($update_file_ossi_cat, "alcasar-bl-autoupdate.sh --update_ossi-bl-candc\n", FILE_APPEND);
|
361 |
file_put_contents($update_file_ossi_cat, "alcasar-bl-autoupdate.sh --update_ossi-bl-candc\n", FILE_APPEND);
|
| 399 |
}
|
362 |
}
|
| 400 |
}
|
363 |
}
|
| 401 |
break;
|
364 |
break;
|
| 402 |
case 'MAJ_ossi_file_upload' :
|
365 |
case 'MAJ_ossi_file_upload' :
|
| 403 |
$bad_char = array(" ", ".");
|
366 |
$bad_char = array(" ", ".");
|
| 404 |
$file_name = str_replace ($bad_char, "_",basename($_FILES['fichier_ip']['name']));
|
367 |
$file_name = str_replace ($bad_char, "_",basename($_FILES['fichier_ip']['name']));
|
| 405 |
$dest_dir = $dir_blacklist."ossi-bl-".$file_name; # /etc/e2guardian/list/blacklist/ossi-bl-XXXXXXXX
|
368 |
$dest_dir = $dir_blacklist."ossi-bl-".$file_name; # /etc/e2guardian/list/blacklist/ossi-bl-XXXXXXXX
|
| 406 |
if((!empty($file_name)) && (!file_exists($dest_dir)))
|
369 |
if((!empty($file_name)) && (!file_exists($dest_dir))){
|
| 407 |
{
|
- |
|
| 408 |
exec("mkdir ".escapeshellarg($dest_dir));
|
370 |
exec("mkdir ".escapeshellarg($dest_dir));
|
| 409 |
$file=$_FILES['fichier_ip']['tmp_name'];
|
371 |
$file=$_FILES['fichier_ip']['tmp_name'];
|
| 410 |
exec('/usr/bin/dos2unix '.escapeshellarg($file));
|
372 |
exec('/usr/bin/dos2unix '.escapeshellarg($file));
|
| 411 |
if(move_uploaded_file($_FILES['fichier_ip']['tmp_name'], $dest_dir."/domains")) // copy in the file "domains" (containing @ip & domain names (like over Toulouse categories))
|
373 |
if(move_uploaded_file($_FILES['fichier_ip']['tmp_name'], $dest_dir."/domains")){ // copy in the file "domains" (containing @ip & domain names (like over Toulouse categories))
|
| 412 |
{
|
- |
|
| 413 |
touch ($dest_dir."/urls"); // create the URL file even if it isn't used
|
374 |
touch ($dest_dir."/urls"); // create the URL file even if it isn't used
|
| 414 |
file_put_contents ($bl_categories, $dest_dir."\n", FILE_APPEND); // add to the categories list
|
375 |
file_put_contents ($bl_categories, $dest_dir."\n", FILE_APPEND); // add to the categories list
|
| 415 |
file_put_contents ($bl_categories_enabled, "ossi-bl-".$file_name."\n", FILE_APPEND); //Enabled by default
|
376 |
file_put_contents ($bl_categories_enabled, "ossi-bl-".$file_name."\n", FILE_APPEND); //Enabled by default
|
| 416 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
377 |
exec("sudo /usr/local/bin/alcasar-bl.sh --reload");
|
| 417 |
}
|
378 |
}
|
| 418 |
else
|
379 |
else {
|
| 419 |
{
|
- |
|
| 420 |
exec("rm -rf ".escapeshellarg($dest_dir));
|
380 |
exec("rm -rf ".escapeshellarg($dest_dir));
|
| 421 |
echo $l_error_upload;
|
381 |
echo $l_error_upload;
|
| 422 |
}
|
382 |
}
|
| 423 |
}
|
383 |
}
|
| 424 |
break;
|
384 |
break;
|
| Line 461... |
Line 421... |
| 461 |
<table width="100%" border=1 cellspacing=0 cellpadding=1>
|
421 |
<table width="100%" border=1 cellspacing=0 cellpadding=1>
|
| 462 |
<tr><td valign="middle" align="left" colspan=10>
|
422 |
<tr><td valign="middle" align="left" colspan=10>
|
| 463 |
<?php
|
423 |
<?php
|
| 464 |
echo "<center>";
|
424 |
echo "<center>";
|
| 465 |
// total number of IP, DNS & URLs
|
425 |
// total number of IP, DNS & URLs
|
| 466 |
$nbDomainNames = exec("wc -l /usr/local/share/unbound-bl/* | tail -n 1 | awk '{print $1}'") / 2;
|
426 |
$nbDomainNames = exec("wc -l $dir_bl_domain_names_enabled* | tail -n 1 | awk '{print $1}'2") / 2;
|
| 467 |
$nbUrl = exec("for file in `find /etc/e2guardian/lists/blacklists/ -name 'urls'`; do nb=$((nb+$(wc -l \$file | awk '{print $1}'))); done; echo \$nb");
|
427 |
$nbUrl = exec("for file in `find /etc/e2guardian/lists/blacklists/ -name 'urls'`; do nb=$((nb+$(wc -l \$file | awk '{print $1}'))); done; echo \$nb");
|
| 468 |
$nbIp = exec("wc -l /usr/local/share/iptables-bl/* | tail -n 1 | awk '{print $1}'");
|
428 |
$nbIp = exec("wc -l $dir_bl_ip_enabled* | tail -n 1 | awk '{print $1}'");
|
| 469 |
echo "<b>$l_nbDomainNames</b> $nbDomainNames, <b>$l_nbUrl</b> $nbUrl, <b>$l_nbIp</b> $nbIp<br/>";
|
429 |
echo "$l_state $nbDomainNames <b>$l_nbDomainNames</b>, $nbUrl <b>$l_nbUrl</b>, $nbIp <b>$l_nbIp</b><br/>";
|
| 470 |
echo "$l_bl_categories</center></td></tr>";
|
430 |
echo "$l_bl_categories</center></td></tr>";
|
| 471 |
//read & display all BL categories (checked or not)
|
431 |
//read & display all categories (checked or not)
|
| 472 |
$cols=1;
|
432 |
$cols=1;
|
| 473 |
if (file_exists($bl_categories))
|
433 |
if (file_exists($bl_categories)){
|
| 474 |
{
|
- |
|
| 475 |
$bl_files = file($bl_categories);
|
434 |
$bl_files = file($bl_categories);
|
| 476 |
$bl_files = preg_grep("/ossi-/", $bl_files, 1); // don't display ossi custom categories
|
435 |
$bl_files = preg_grep("/ossi-/", $bl_files, 1); // don't display ossi custom categories
|
| 477 |
foreach ($bl_files as $fichier => $value)
|
436 |
foreach ($bl_files as $fichier => $value){
|
| 478 |
{
|
- |
|
| 479 |
if ($cols == 1) { echo "<tr>";}
|
437 |
if ($cols == 1) { echo "<tr>";}
|
| 480 |
$categorie=trim(basename($value));
|
438 |
$categorie=trim(basename($value));
|
| 481 |
echo "<td><a href='bl_categories_help.php?liste=bl&cat=$categorie' target='cat_help' onclick=\"window.open('bl_categories_help.php','cat_help','width=600,height=450,toolbar=no,scrollbars=yes,resizable=yes')\" title='categories help page'>$categorie</a><br>";
|
439 |
echo "<td><a href='bl_categories_help.php?cat=$categorie' target='cat_help' onclick=\"window.open('bl_categories_help.php','cat_help','width=600,height=450,toolbar=no,scrollbars=yes,resizable=yes')\" title='categories help page'>$categorie</a><br>";
|
| 482 |
echo "<input type='checkbox' name='chk-$categorie'";
|
440 |
echo "<input type='checkbox' name='chk-$categorie'";
|
| 483 |
// if the line is commented, the category is disable
|
441 |
// if the line is commented, the category is disable
|
| 484 |
if (preg_match('/^#/',$value, $r)) { echo ">";}
|
442 |
if (preg_match('/^#/',$value, $r)) { echo ">";}
|
| 485 |
else { echo " checked>"; }
|
443 |
else { echo " checked>"; }
|
| 486 |
echo "</td>";
|
444 |
echo "</td>";
|
| 487 |
$cols++;
|
445 |
$cols++;
|
| 488 |
if ($cols > 10) {
|
446 |
if ($cols > 10){
|
| 489 |
echo "</tr>\n";
|
447 |
echo "</tr>\n";
|
| 490 |
$cols=1;
|
448 |
$cols=1;
|
| 491 |
}
|
449 |
}
|
| 492 |
}
|
450 |
}
|
| 493 |
}
|
451 |
}
|
| 494 |
else {
|
452 |
else {
|
| 495 |
echo "$l_error_open_file $bl_categories";
|
453 |
echo "$l_error_open_file $bl_categories";
|
| 496 |
}
|
454 |
}
|
| 497 |
|
- |
|
| 498 |
echo "</tr>\n";
|
455 |
echo "</tr>\n";
|
| 499 |
echo "<tr><td valign='middle' align='left' colspan=10>";
|
456 |
echo "<tr><td valign='middle' align='left' colspan=10>";
|
| 500 |
echo "<center>
|
457 |
echo "<center>
|
| 501 |
<input type='submit' value='$l_record'></center>";
|
458 |
<input type='submit' value='$l_record'></center>";
|
| 502 |
echo "</td></tr>";
|
459 |
echo "</td></tr>";
|
| Line 536... |
Line 493... |
| 536 |
echo "<input type='hidden' name='choix' value='MAJ_ossi_file'>";
|
493 |
echo "<input type='hidden' name='choix' value='MAJ_ossi_file'>";
|
| 537 |
echo "<table cellspacing=2 cellpadding=3 border=1><tr><th>$l_file_name<th>$l_nb_ip<th>$l_nb_domain_names<th colspan=3>$l_file_action</tr>";
|
494 |
echo "<table cellspacing=2 cellpadding=3 border=1><tr><th>$l_file_name<th>$l_nb_ip<th>$l_nb_domain_names<th colspan=3>$l_file_action</tr>";
|
| 538 |
//list OSSI custom categories
|
495 |
//list OSSI custom categories
|
| 539 |
$fichiersbl = array_diff(scandir($dir_blacklist), array('..','.','ossi-bl','ossi-wl'));
|
496 |
$fichiersbl = array_diff(scandir($dir_blacklist), array('..','.','ossi-bl','ossi-wl'));
|
| 540 |
$fichiersbl = preg_grep("/^ossi-bl-/",$fichiersbl);
|
497 |
$fichiersbl = preg_grep("/^ossi-bl-/",$fichiersbl);
|
| 541 |
foreach ($fichiersbl as $fichier => $value)
|
498 |
foreach ($fichiersbl as $fichier => $value){
|
| 542 |
{
|
- |
|
| 543 |
echo "<tr><td><center><a href='bl_categories_help.php?liste=bl&cat=$value&filtre=domain' target='cat_help' onclick=\"window.open('bl_categories_help','cat_help','width=600,height=450,toolbar=no,scrollbars=yes,resizable=yes')\" title='categories help page'>".substr($value,8)."</a></center></td><td><center>".exec("wc -l $dir_bl_ip$value | cut -d\" \" -f1")."</center></td><td><center>".exec("wc -l $dir_bl_domain_names$value.conf | cut -d\" \" -f1")."</center></td><td><center><input type='submit' name='$value'";
|
499 |
echo "<tr><td><center><a href='bl_categories_help.php?cat=$value&filtre=domain' target='cat_help' onclick=\"window.open('bl_categories_help','cat_help','width=600,height=450,toolbar=no,scrollbars=yes,resizable=yes')\" title='categories help page'>".substr($value,8)."</a></center></td><td><center>".exec("wc -l $dir_bl_ip$value | cut -d\" \" -f1")."</center></td><td><center>".exec("wc -l $dir_bl_domain_names$value.conf | cut -d\" \" -f1")."</center></td><td><center><input type='submit' name='$value'";
|
| 544 |
if (file_exists ($dir_bl_domain_names_enabled.$value)) echo " value='$l_disable'>"; else echo " value='$l_enable'>";
|
500 |
if (file_exists ($dir_bl_domain_names_enabled.$value)) echo " value='$l_disable'>"; else echo " value='$l_enable'>";
|
| 545 |
echo "</center></td><td><center><input type='submit' name='$value' value='$l_remove'></center></td>";
|
501 |
echo "</center></td><td><center><input type='submit' name='$value' value='$l_remove'></center></td>";
|
| 546 |
if (in_array($value,$updateable_ossi_bls)) echo "<td><center><input type='submit' name='$value' value='$l_update'></center></td>"; else echo "<td><center>$l_no_update_configured</center></td>";
|
502 |
if (in_array($value,$updateable_ossi_bls)) echo "<td><center><input type='submit' name='$value' value='$l_update'></center></td>"; else echo "<td><center>$l_no_update_configured</center></td>";
|
| 547 |
echo "</tr>";
|
503 |
echo "</tr>";
|
| 548 |
}
|
504 |
}
|
| 549 |
|
- |
|
| 550 |
echo "</table>";
|
505 |
echo "</table>";
|
| 551 |
echo "</form><br></td>";
|
506 |
echo "</form><br></td>";
|
| 552 |
echo "<td width=50% colspan=5 align=center><H3>$l_add_file</H3>";
|
507 |
echo "<td width=50% colspan=5 align=center><H3>$l_add_file</H3>";
|
| 553 |
echo "$l_add_file_explain<br>$l_add_example";
|
508 |
echo "$l_add_file_explain<br>$l_add_example";
|
| 554 |
echo "<form action='bl_filter.php' method='POST' enctype='multipart/form-data'>";
|
509 |
echo "<form action='bl_filter.php' method='POST' enctype='multipart/form-data'>";
|
| Line 582... |
Line 537... |
| 582 |
echo "<td>".$l_update_cat."</td>";
|
537 |
echo "<td>".$l_update_cat."</td>";
|
| 583 |
echo "<td><input type='radio' name='update_cat' value=0 ".$update_select[0]." >".$l_disable;
|
538 |
echo "<td><input type='radio' name='update_cat' value=0 ".$update_select[0]." >".$l_disable;
|
| 584 |
echo "<input type='radio' name='update_cat' value=1 ".$update_select[1]." >".$l_enable;
|
539 |
echo "<input type='radio' name='update_cat' value=1 ".$update_select[1]." >".$l_enable;
|
| 585 |
echo "</td>";
|
540 |
echo "</td>";
|
| 586 |
// Display update checkbox for each updateable ossi-bl
|
541 |
// Display update checkbox for each updateable ossi-bl
|
| 587 |
foreach ($updateable_ossi_bls as $value)
|
542 |
foreach ($updateable_ossi_bls as $value){ //check if autoupdate is enabled
|
| 588 |
{
|
- |
|
| 589 |
//check if autoupdate is enabled
|
- |
|
| 590 |
$update_ossi_select = ["", ""];
|
543 |
$update_ossi_select = ["", ""];
|
| 591 |
if ( strpos(file_get_contents($update_file_ossi_cat),$value) !== false ) $update_ossi_select[1] = "checked";
|
544 |
if ( strpos(file_get_contents($update_file_ossi_cat),$value) !== false ) $update_ossi_select[1] = "checked";
|
| 592 |
else $update_ossi_select[0] = "checked";
|
545 |
else $update_ossi_select[0] = "checked";
|
| 593 |
echo "<tr><td>".$value."</td>";
|
546 |
echo "<tr><td>".$value."</td>";
|
| 594 |
echo "<td><input type='radio' name='".$value."' value=0 ".$update_ossi_select[0]." >".$l_disable;
|
547 |
echo "<td><input type='radio' name='".$value."' value=0 ".$update_ossi_select[0]." >".$l_disable;
|