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,9 → 59,18 |
# 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 |
echo ".Include<$DIR_DANSGUARDIAN/blacklists/$i/urls>" >> $DIR_DANSGUARDIAN/bannedurllist |
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 |
;; |