| Line 1... |
Line 1... |
| 1 |
#!/bin/bash
|
1 |
#!/bin/bash
|
| 2 |
|
2 |
|
| 3 |
# $Id: alcasar-bl.sh 2918 2021-02-18 22:52:46Z rexy $
|
3 |
# $Id: alcasar-bl.sh 2919 2021-02-20 19:14:53Z rexy $
|
| 4 |
|
4 |
|
| 5 |
# alcasar-bl.sh
|
5 |
# alcasar-bl.sh
|
| 6 |
# by Franck BOUIJOUX and Richard REY
|
6 |
# by Franck BOUIJOUX and Richard REY
|
| 7 |
# This script is distributed under the Gnu General Public License (GPL)
|
7 |
# This script is distributed under the Gnu General Public License (GPL)
|
| 8 |
|
8 |
|
| Line 92... |
Line 92... |
| 92 |
chmod 660 $WL_CATEGORIES $WL_CATEGORIES_ENABLED
|
92 |
chmod 660 $WL_CATEGORIES $WL_CATEGORIES_ENABLED
|
| 93 |
}
|
93 |
}
|
| 94 |
|
94 |
|
| 95 |
# cleaning file and split it ("domains" in $FILE_tmp & "IP" in $FILE_ip_tmp)
|
95 |
# cleaning file and split it ("domains" in $FILE_tmp & "IP" in $FILE_ip_tmp)
|
| 96 |
function clean_split (){
|
96 |
function clean_split (){
|
| 97 |
$SED '/^#/d' $FILE_tmp # remove commented lines
|
- |
|
| 98 |
$SED '/^\./d' $FILE_tmp # remove lines beginning with a dot
|
97 |
$SED '/^[.#]/d' $FILE_tmp # remove commented lines and lines beginning with a dot
|
| 99 |
$SED '/^\s*$/d' $FILE_tmp # remove empty lines
|
98 |
$SED '/^\s*$/d' $FILE_tmp # remove empty lines
|
| 100 |
$SED '/[äâëêïîöôüû@,]/d' $FILE_tmp # remove line with "chelou" characters
|
99 |
$SED '/[äâëêïîöôüû@,]/d' $FILE_tmp # remove line with "chelou" characters
|
| 101 |
# extract ip addresses and ip networks for iptables.
|
100 |
# extract ip addresses and ip networks for iptables.
|
| 102 |
awk '/^([0-9]{1,3}\.){3}[0-9]{1,3}$/{print "add bl_ip_blocked " $0}' $FILE_tmp > $FILE_ip_tmp
|
101 |
awk '/^([0-9]{1,3}\.){3}[0-9]{1,3}$/{print "add bl_ip_blocked " $0}' $FILE_tmp > $FILE_ip_tmp
|
| 103 |
awk '/^([0-9]{1,3}\.){3}[0-9]{1,3}\/[0-9]{1,2}$/{print "add bl_ip_blocked " $0}' $FILE_tmp >> $FILE_ip_tmp
|
102 |
awk '/^([0-9]{1,3}\.){3}[0-9]{1,3}\/[0-9]{1,2}$/{print "add bl_ip_blocked " $0}' $FILE_tmp >> $FILE_ip_tmp
|