/alcasar.sh |
---|
878,6 → 878,8 |
# compatibilité des logs avec awstats |
$SED "s?^# emulate_httpd_log.*?emulate_httpd_log on?g" /etc/squid/squid.conf |
$SED "s?^access_log.*?access_log /var/log/squid/access.log?g" /etc/squid/squid.conf |
# pour éviter les message d'erreur lors des changement d'état des interfaces réseaux |
$SED "s?^SQUID_AUTO_RELOAD.*?SQUID_AUTO_RELOAD=no?g" /etc/sysconfig/squid |
# Initialisation du cache de Squid |
/usr/sbin/squid -z |
} # End of param_squid () |
/scripts/etc/alcasar-bl-categories-default |
---|
File deleted |
/scripts/etc/alcasar-bl-categories-enabled |
---|
0,0 → 1,18 |
adult |
agressif |
dangerous_material |
dating |
drogue |
gambling |
hacking |
malware |
marketingware |
mixed_adult |
phishing |
redirector |
sect |
strict_redirector |
strong_redirector |
tricheur |
warez |
ossi |
/scripts/sbin/alcasar-bl.sh |
---|
7,8 → 7,8 |
DIR_tmp="/tmp/blacklists" |
FILE_tmp="/tmp/fileFilter.txt" |
DIR_DANSGUARDIAN="/etc/dansguardian/lists" |
BL_CATEGORIES_AVAILABLE="/usr/local/etc/alcasar-bl-categories-available" |
BL_CATEGORIES_DEFAULT="/usr/local/etc/alcasar-bl-categories-default" |
BL_CATEGORIES="/usr/local/etc/alcasar-bl-categories" |
BL_CATEGORIES_ENABLED="/usr/local/etc/alcasar-bl-categories-enabled" |
DIR_DNS_FILTER_AVAILABLE="/usr/local/etc/alcasar-dnsfilter-available" |
DIR_DNS_FILTER_ENABLED="/usr/local/etc/alcasar-dnsfilter-enabled" |
IP_RETOUR="192.168.182.1" |
34,13 → 34,13 |
# Adaptation de la BL Toulouse à la structure Dnsmasq |
function adapt () { |
# On récupère le nom des répertoire (catégories) |
find $DIR_DANSGUARDIAN -type f -name domains > $BL_CATEGORIES_AVAILABLE |
find $DIR_DANSGUARDIAN -type f -name domains > $BL_CATEGORIES |
# On supprime le suffice "/domains" |
$SED "s?\/domains??g" $BL_CATEGORIES_AVAILABLE |
$SED "s?\/domains??g" $BL_CATEGORIES |
rm -f $DIR_DNS_FILTER_AVAILABLE/* |
echo -n "Adaptation de la BL Toulouse. Veuillez patienter : " |
# On copie les fichiers de domaine pour chaque catégorie |
for PATH_FILE in `cat $BL_CATEGORIES_AVAILABLE` |
for PATH_FILE in `cat $BL_CATEGORIES` |
do |
DOMAINE=`basename $PATH_FILE` |
echo -n "." |
52,14 → 52,6 |
$SED "s?.*?address=/&/$IP_RETOUR?g" /tmp/dnsmasq-bl.tmp |
mv /tmp/dnsmasq-bl.tmp $DIR_DNS_FILTER_AVAILABLE/$DOMAINE.conf |
done |
# on adapte le fichier $BL_CATEGORIES_AVAILABLE au choix de catégorie par défaut |
$SED "s?^[^#]?#&?g" $BL_CATEGORIES_AVAILABLE # on commente ce qui ne l'est pas |
for ENABLE_CATEGORIE in `cat $BL_CATEGORIES_DEFAULT` |
do |
$SED "/^.*$ENABLE_CATEGORIE/d" $BL_CATEGORIES_AVAILABLE |
$SED "1i\/etc\/dansguardian\/lists\/blacklist\/$ENABLE_CATEGORIE" $BL_CATEGORIES_AVAILABLE |
done |
echo |
} |
# Permet d'activer/désactiver les catégories de la BL |
67,8 → 59,17 |
# un peu de ménage |
rm -rf $DIR_DNS_FILTER_ENABLED/* |
$SED "/\.Include/d" $DIR_DANSGUARDIAN/bannedsitelist $DIR_DANSGUARDIAN/bannedurllist |
# on affecte les catégories |
for i in `cat $BL_CATEGORIES_DEFAULT` |
# on adapte le fichier $BL_CATEGORIES au choix de catégorie |
$SED "s?^[^#]?#&?g" $BL_CATEGORIES # on commente ce qui ne l'est pas |
for ENABLE_CATEGORIE in `cat $BL_CATEGORIES_ENABLED` |
do |
$SED "/^.*$ENABLE_CATEGORIE/d" $BL_CATEGORIES |
$SED "1i\/etc\/dansguardian\/lists\/blacklist\/$ENABLE_CATEGORIE" $BL_CATEGORIES |
done |
sort -o $FILE_tmp $BL_CATEGORIES |
mv $FILE_tmp $BL_CATEGORIES |
# on affecte les catégories à dansguardian et dnsmasq |
for i in `cat $BL_CATEGORIES_ENABLED` |
do |
ln -s $DIR_DNS_FILTER_AVAILABLE/$i.conf $DIR_DNS_FILTER_ENABLED/$i |
# echo ".Include<$DIR_DANSGUARDIAN/blacklists/$i/domains>" >> $DIR_DANSGUARDIAN/bannedsitelist |
120,7 → 121,7 |
fi |
adapt |
;; |
# regénération suite à modification de la BL secondaire |
# regénération suite à modification (choix catégories ou BL secondaire) |
-reload) |
# pour Dansguardian |
chown -R dansguardian:apache $DIR_DANSGUARDIAN/blacklists/ossi |
132,9 → 133,10 |
then |
for i in `cat $DIR_DANSGUARDIAN/exceptionsitelist` |
do |
$SED "/$i/d" $DIR_DNS_FILTER_AVAILABLE/sect.conf |
$SED "/$i/d" $DIR_DNS_FILTER_AVAILABLE/* |
done |
fi |
cp -f $DIR_DANSGUARDIAN/blacklists/ossi/domains $DIR_DNS_FILTER_AVAILABLE/ossi.conf |
$SED "s?.*?address=/&/$IP_RETOUR?g" $DIR_DNS_FILTER_AVAILABLE/ossi.conf |
service dnsmasq reload |
;; |
/gestion/admin/dns_filter.php |
---|
7,6 → 7,9 |
</HEAD> |
<body> |
<? |
$bl_categories="/usr/local/etc/alcasar-bl-categories"; |
$bl_categories_enabled="/usr/local/etc/alcasar-bl-categories-enabled"; |
$dir_blacklist="/etc/dansguardian/lists/blacklist/"; |
# Choice of language |
$Language = 'en'; |
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){ |
75,6 → 78,24 |
exec ("sudo /usr/local/sbin/alcasar-bl.sh -download"); |
exec ("sudo /usr/local/sbin/alcasar-bl.sh -reload"); |
break; |
case 'MAJ_cat' : |
$tab=file($bl_categories_enabled); |
if ($tab) |
{ |
$pointeur=fopen($bl_categories_enabled, "w+"); |
foreach ($_POST as $key => $value) |
{ |
if (strstr($key,'chk-')) |
{ |
$line=str_replace('chk-','',$key)."\n"; |
fwrite($pointeur,$line); |
} |
} |
fclose($pointeur); |
} |
else {echo "$l_error_open_file $bl_categories_enabled";} |
exec ("sudo /usr/local/sbin/alcasar-bl.sh -reload"); |
break; |
case 'MAJ_OSSI' : |
$fichier=fopen("/etc/dansguardian/lists/blacklists/ossi/domains","w+"); |
fputs($fichier, $_POST['OSSI_bl_domains']); |
/gestion/admin/categorie_help.php |
---|
0,0 → 1,41 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
<HTML><!-- written by Rexy --> |
<HEAD> |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
<TITLE>ALCASAR Filter Exceptions</TITLE> |
<link rel="stylesheet" href="/css/style.css" type="text/css"> |
</HEAD> |
<body> |
<? |
# Choice of language |
$Language = 'en'; |
if(isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])){ |
$Langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']); |
$Language = strtolower(substr(chop($Langue[0]),0,2)); } |
if (isset($_GET['cat'])){$categorie=$_GET['cat'];} |
switch ($categorie) |
{ |
case 'adult' : |
if ($Language == 'fr'){ |
$message="La catégorie 'adult' couvre ...";} |
else {$message="The 'adult' category ...";} |
break; |
default : |
if ($Language == 'fr'){ |
$message="Cette catégorie n'est pas connue";} |
else {$message="This categorie is unknown";} |
break; |
} |
?> |
<TABLE width="100%" border="0" cellspacing="0" cellpadding="0"> |
<tr><th><?php echo $categorie ;?></th></tr> |
<tr bgcolor="#FFCC66"><td><img src="/images/pix.gif" width="1" height="2"></td></tr> |
</TABLE> |
<TABLE width="100%" border=1 cellspacing=0 cellpadding=1> |
<tr><td valign="middle" align="left"> |
<?php |
echo "$message";?> |
</td></tr> |
</TABLE> |
</BODY> |
</HTML> |
/gestion/admin/dns_filter2.php |
---|
36,14 → 36,14 |
</td></tr> |
<tr><td valign="middle" align="left" colspan=10> |
<FORM action='/admin/dns_filter.php' method=POST> |
<input type='hidden' name='choix' value='MAJ_OSSI'> |
<input type='hidden' name='choix' value='MAJ_cat'> |
<?php |
echo "<center>$l_bl_categories</center></td></tr>"; |
//on lit et on interprete le fichier de catégories |
$cols=1; $filename="/usr/local/etc/alcasar-bl-categories-available"; |
if (file_exists($filename)) |
$cols=1; |
if (file_exists($bl_categories)) |
{ |
$pointeur=fopen($filename,"r"); |
$pointeur=fopen($bl_categories,"r"); |
while (!feof ($pointeur)) |
{ |
$ligne=fgets($pointeur, 4096); |
51,20 → 51,16 |
{ |
if ($cols == 1) { echo "<tr>";} |
$categorie=trim(basename($ligne)); |
echo "<td>$categorie<br>"; |
echo "<td><a href='categorie_help.php?cat=$categorie' target='cat_help' onclick=window.open('categorie_help.php','cat_help','width=600','height=250','toolbar=no','scrollbars=no','resizable=yes') title='categories help page'>$categorie</a><br>"; |
echo "<input type='checkbox' name='chk-$categorie'"; |
// si la ligne est commentée -> categorie non selectionnée |
if (preg_match('/^#/',$ligne, $r)) { |
echo ">";} |
else { |
echo "checked>";} |
echo "</td>"; |
} |
if (preg_match('/^#/',$ligne, $r)) { echo ">";} |
else { echo "checked>"; } |
echo "</td>"; |
$cols++; |
if ($cols > 10){ |
if ($cols > 10) { |
echo "</tr>"; |
$cols=1; |
$cols=1; } |
} |
} |
fclose($pointeur); |
71,7 → 67,7 |
echo "<tr><td colspan=10><input type='submit' value='$l_record'>"; |
} |
else { |
echo "$l_error_open_file $filename"; |
echo "$l_error_open_file $bl_categories"; |
} |
?> |
</FORM> |