mirror of
https://github.com/gSpotx2f/ruantiblock_openwrt.git
synced 2026-05-14 14:40:58 +00:00
v1.6. Refactoring. Some improvements.
This commit is contained in:
@@ -138,8 +138,8 @@ export BLLIST_PRESET=""
|
||||
export BLLIST_MIN_ENTRIES=3000
|
||||
### Лимит IP адресов. При достижении, в конфиг ipset будет добавлена вся подсеть /24 вместо множества IP адресов пренадлежащих этой сети (0 - выкл)
|
||||
export BLLIST_IP_LIMIT=0
|
||||
### Подсети класса C (/24). IP адреса из этих подсетей не группируются при оптимизации (записи д.б. в виде: 68.183.221. 149.154.162. и пр.). Прим.: "68.183.221. 149.154.162."
|
||||
export BLLIST_GR_EXCLUDED_NETS=""
|
||||
### Файл с подсетями класса C (/24). IP адреса из этих подсетей не группируются при оптимизации (записи д.б. в виде: 68.183.221. 149.154.162. и пр. Одна запись на строку)
|
||||
export BLLIST_GR_EXCLUDED_NETS_FILE="${CONFIG_DIR}/gr_excluded_nets"
|
||||
### Группировать идущие подряд IP адреса в подсетях /24 в диапазоны CIDR
|
||||
export BLLIST_SUMMARIZE_IP=0
|
||||
### Группировать идущие подряд подсети /24 в диапазоны CIDR
|
||||
@@ -150,18 +150,26 @@ export BLLIST_IP_FILTER=0
|
||||
export BLLIST_IP_FILTER_TYPE=0
|
||||
### Файл с шаблонами IP для опции BLLIST_IP_FILTER (каждый шаблон в отдельной строке. # в первом символе строки - комментирует строку)
|
||||
export BLLIST_IP_FILTER_FILE="${CONFIG_DIR}/ip_filter"
|
||||
### Включение опции исключения IP/CIDR из блэклиста
|
||||
export BLLIST_IP_EXCLUDED_ENABLE=0
|
||||
### Файл с записями IP/CIDR для опции BLLIST_IP_EXCLUDED_ENABLE
|
||||
export BLLIST_IP_EXCLUDED_FILE="${CONFIG_DIR}/ip_excluded"
|
||||
### Лимит субдоменов для группировки. При достижении, в конфиг dnsmasq будет добавлен весь домен 2-го ур-ня вместо множества субдоменов (0 - выкл)
|
||||
export BLLIST_SD_LIMIT=0
|
||||
### SLD не подлежащие группировке при оптимизации (через пробел)
|
||||
export BLLIST_GR_EXCLUDED_SLD=""
|
||||
### Не группировать SLD попадающие под выражения (через пробел)
|
||||
export BLLIST_GR_EXCLUDED_MASKS=""
|
||||
### Файл с SLD не подлежащими группировке при оптимизации (одна запись на строку)
|
||||
export BLLIST_GR_EXCLUDED_SLD_FILE="${CONFIG_DIR}/gr_excluded_sld"
|
||||
### Файл с масками SLD не подлежащими группировке при оптимизации (одна запись на строку)
|
||||
export BLLIST_GR_EXCLUDED_SLD_MASKS_FILE="${CONFIG_DIR}/gr_excluded_sld_mask"
|
||||
### Фильтрация записей блэклиста по шаблонам из файла ENTRIES_FILTER_FILE. Записи (FQDN) попадающие под шаблоны исключаются из кофига dnsmasq (0 - выкл, 1 - вкл)
|
||||
export BLLIST_FQDN_FILTER=0
|
||||
### Тип фильтра FQDN (0 - все записи, кроме совпадающих с шаблонами; 1 - только записи, совпадающие с шаблонами)
|
||||
export BLLIST_FQDN_FILTER_TYPE=0
|
||||
### Файл с шаблонами FQDN для опции BLLIST_FQDN_FILTER (каждый шаблон в отдельной строке. # в первом символе строки - комментирует строку)
|
||||
export BLLIST_FQDN_FILTER_FILE="${CONFIG_DIR}/fqdn_filter"
|
||||
### Включение опции исключения FQDN из блэклиста
|
||||
export BLLIST_FQDN_EXCLUDED_ENABLE=0
|
||||
### Файл с записями FQDN для опции BLLIST_FQDN_EXCLUDED_ENABLE
|
||||
export BLLIST_FQDN_EXCLUDED_FILE="${CONFIG_DIR}/fqdn_excluded"
|
||||
### Обрезка www[0-9]. в FQDN (0 - выкл, 1 - вкл)
|
||||
export BLLIST_STRIP_WWW=1
|
||||
### Преобразование кириллических доменов в punycode (0 - выкл, 1 - вкл)
|
||||
@@ -171,27 +179,6 @@ export BLLIST_ALT_NSLOOKUP=0
|
||||
### Альтернативный DNS-сервер
|
||||
export BLLIST_ALT_DNS_ADDR="8.8.8.8"
|
||||
|
||||
### Источники блэклиста
|
||||
export RBL_ALL_URL="https://reestr.rublacklist.net/api/v3/snapshot/"
|
||||
export RBL_IP_URL="https://reestr.rublacklist.net/api/v3/ips/"
|
||||
export RBL_DPI_URL="https://reestr.rublacklist.net/api/v3/dpi/"
|
||||
export ZI_ALL_URL="https://raw.githubusercontent.com/zapret-info/z-i/master/dump.csv"
|
||||
#export ZI_ALL_URL="https://app.assembla.com/spaces/z-i/git/source/master/dump.csv?_format=raw"
|
||||
export AF_IP_URL="https://antifilter.download/list/allyouneed.lst"
|
||||
export AF_FQDN_URL="https://antifilter.download/list/domains.lst"
|
||||
export FZ_URL="https://raw.githubusercontent.com/fz139/vigruzki/main/dump.xml.00 https://raw.githubusercontent.com/fz139/vigruzki/main/dump.xml.01 https://raw.githubusercontent.com/fz139/vigruzki/main/dump.xml.02"
|
||||
export RA_IP_IPSET_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/ip/ruantiblock.ip"
|
||||
export RA_IP_DMASK_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/ip/ruantiblock.dnsmasq"
|
||||
export RA_IP_STAT_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/ip/update_status"
|
||||
export RA_FQDN_IPSET_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/fqdn/ruantiblock.ip"
|
||||
export RA_FQDN_DMASK_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/fqdn/ruantiblock.dnsmasq"
|
||||
export RA_FQDN_STAT_URL="https://raw.githubusercontent.com/gSpotx2f/ruantiblock_blacklist/master/blacklist-1.1/fqdn/update_status"
|
||||
export RBL_ENCODING=""
|
||||
export ZI_ENCODING="CP1251"
|
||||
export AF_ENCODING=""
|
||||
export FZ_ENCODING="CP1251"
|
||||
export RA_ENCODING=""
|
||||
|
||||
############################ Configuration #############################
|
||||
|
||||
### External config
|
||||
@@ -200,6 +187,7 @@ export RA_ENCODING=""
|
||||
CONFIG_SCRIPT="${SCRIPTS_DIR}/config_script"
|
||||
START_SCRIPT="${SCRIPTS_DIR}/start_script"
|
||||
STOP_SCRIPT="${SCRIPTS_DIR}/stop_script"
|
||||
BLLIST_SOURCES_SCRIPT="${SCRIPTS_DIR}/blacklist_sources"
|
||||
|
||||
### Config script
|
||||
[ -f "$CONFIG_SCRIPT" ] && . "$CONFIG_SCRIPT"
|
||||
@@ -271,6 +259,9 @@ export IP_DATA_FILE_TMP="${IP_DATA_FILE}.tmp"
|
||||
export DNSMASQ_DATA_FILE_TMP="${DNSMASQ_DATA_FILE}.tmp"
|
||||
export UPDATE_STATUS_FILE_TMP="${UPDATE_STATUS_FILE}.tmp"
|
||||
export USER_ENTRIES_STATUS_FILE_TMP="${USER_ENTRIES_STATUS_FILE}.tmp"
|
||||
DL_IPSET_URL=""
|
||||
DL_DMASK_URL=""
|
||||
DL_STAT_URL=""
|
||||
|
||||
######################### External functions ###########################
|
||||
|
||||
@@ -330,7 +321,7 @@ Download() {
|
||||
fi
|
||||
}
|
||||
|
||||
DownloadRuabBlacklist() {
|
||||
DownloadNativeBlacklist() {
|
||||
local _ip_data_file _dnsmasq_data_file _update_status_file _return_code=0
|
||||
if [ "$ENABLE_TMP_DOWNLOADS" = "1" ]; then
|
||||
_ip_data_file="$IP_DATA_FILE_TMP"
|
||||
@@ -342,45 +333,26 @@ DownloadRuabBlacklist() {
|
||||
_dnsmasq_data_file="$DNSMASQ_DATA_FILE"
|
||||
_update_status_file="$UPDATE_STATUS_FILE"
|
||||
fi
|
||||
case "$1" in
|
||||
"ip")
|
||||
Download "$_ip_data_file" "$RA_IP_IPSET_URL"
|
||||
if [ -n "$DL_IPSET_URL" -a -n "$DL_DMASK_URL" -a -n "$DL_STAT_URL" ]; then
|
||||
Download "$_ip_data_file" "$DL_IPSET_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
else
|
||||
Download "$_dnsmasq_data_file" "$DL_DMASK_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
else
|
||||
Download "$_dnsmasq_data_file" "$RA_IP_DMASK_URL"
|
||||
Download "$_update_status_file" "$DL_STAT_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
else
|
||||
Download "$_update_status_file" "$RA_IP_STAT_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
"fqdn")
|
||||
Download "$_dnsmasq_data_file" "$RA_FQDN_DMASK_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
else
|
||||
Download "$_ip_data_file" "$RA_FQDN_IPSET_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
else
|
||||
Download "$_update_status_file" "$RA_FQDN_STAT_URL"
|
||||
if [ $? -ne 0 ]; then
|
||||
_return_code=1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo " Blacklist configuration error (${1})" >&2
|
||||
MakeLogRecord "err" "Blacklist configuration error (${1})"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
else
|
||||
echo " Native blacklist configuration error (${1})" >&2
|
||||
MakeLogRecord "err" "Native blacklist configuration error (${1})"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$ENABLE_TMP_DOWNLOADS" = "1" ]; then
|
||||
if [ $_return_code -eq 0 ]; then
|
||||
mv -f "$_ip_data_file" "$IP_DATA_FILE"
|
||||
@@ -961,53 +933,8 @@ StatusOutput() {
|
||||
|
||||
############################ Main section ##############################
|
||||
|
||||
### Blacklist source and mode
|
||||
case "$BLLIST_PRESET" in
|
||||
zapret-info-ip)
|
||||
### Источник для обновления списка блокировок (zapret-info, rublacklist, antifilter, fz, ruantiblock)
|
||||
export BLLIST_SOURCE="zapret-info"
|
||||
### Режим обхода блокировок: ip, fqdn
|
||||
export BLLIST_MODE="ip"
|
||||
;;
|
||||
zapret-info-fqdn)
|
||||
export BLLIST_SOURCE="zapret-info"
|
||||
export BLLIST_MODE="fqdn"
|
||||
;;
|
||||
rublacklist-ip)
|
||||
export BLLIST_SOURCE="rublacklist"
|
||||
export BLLIST_MODE="ip"
|
||||
;;
|
||||
rublacklist-fqdn)
|
||||
export BLLIST_SOURCE="rublacklist"
|
||||
export BLLIST_MODE="fqdn"
|
||||
;;
|
||||
antifilter-ip)
|
||||
export BLLIST_SOURCE="antifilter"
|
||||
export BLLIST_MODE="ip"
|
||||
;;
|
||||
fz-ip)
|
||||
export BLLIST_SOURCE="fz"
|
||||
export BLLIST_MODE="ip"
|
||||
;;
|
||||
fz-fqdn)
|
||||
export BLLIST_SOURCE="fz"
|
||||
export BLLIST_MODE="fqdn"
|
||||
;;
|
||||
ruantiblock-ip)
|
||||
export BLLIST_SOURCE="ruantiblock"
|
||||
export BLLIST_MODE="ip"
|
||||
BLLIST_MODULE="DownloadRuabBlacklist $BLLIST_MODE"
|
||||
;;
|
||||
ruantiblock-fqdn)
|
||||
export BLLIST_SOURCE="ruantiblock"
|
||||
export BLLIST_MODE="fqdn"
|
||||
BLLIST_MODULE="DownloadRuabBlacklist $BLLIST_MODE"
|
||||
;;
|
||||
*)
|
||||
export BLLIST_SOURCE=""
|
||||
export BLLIST_MODE=""
|
||||
;;
|
||||
esac
|
||||
### Blacklist sources
|
||||
. "$BLLIST_SOURCES_SCRIPT"
|
||||
|
||||
return_code=1
|
||||
case "$1" in
|
||||
|
||||
Reference in New Issue
Block a user