Skip to content

maravento/blackweb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

status-stable last commit Twitter Follow

Blackweb is a project that collects and unifies public blocklists of domains (porn, downloads, drugs, malware, spyware, trackers, bots, social networks, warez, weapons, etc.) to make them compatible with Squid-Cache

Blackweb es un proyecto que recopila y unifica listas públicas de bloqueo de dominios (porno, descargas, drogas, malware, spyware, trackers, bots, redes sociales, warez, armas, etc.) para hacerlas compatibles con Squid-Cache

DATA SHEET


ACL Blocked Domains File Size
blackweb.txt 4937587 130.8 MB

GIT CLONE


git clone --depth=1 https://github.com/maravento/blackweb.git

HOW TO USE


blackweb.txt is already updated and optimized for Squid-Cache. Download it and unzip it in the path of your preference and activate Squid-Cache RULE / blackweb.txt ya viene actualizada y optimizada para Squid-Cache. Descárguela y descomprimala en la ruta de su preferencia y active la REGLA de Squid-Cache

Download

wget -q -c -N https://raw.githubusercontent.com/maravento/blackweb/master/blackweb.tar.gz && cat blackweb.tar.gz* | tar xzf -

If Multiparts Exist

#!/usr/bin/env bash
base_url="https://raw.githubusercontent.com/maravento/blackweb/master/blackweb.tar.gz."

for num in {000..999}; do
    file="${base_url}${num}"
    echo "Check: $file"
    if wget --spider "$file" 2>/dev/null; then
        wget -q -c --timestamping --no-check-certificate --retry-connrefused --timeout=10 --tries=4 --show-progress "$file"
    else
        break
    fi
done
cat blackweb.tar.gz* | tar xzf -

Checksum

wget -q -c -N https://raw.githubusercontent.com/maravento/blackweb/master/checksum.md5
md5sum blackweb.txt | awk '{print $1}' && cat checksum.md5 | awk '{print $1}'

Edit: / Edite:

/etc/squid/squid.conf

And add the following lines: / Y agregue las siguientes líneas:

# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
acl blackweb dstdomain "/path_to/blackweb.txt"
http_access deny blackweb

Squid-Cache Advanced Rules (recommended) / Reglas Avanzadas (recomendadas)

Blackweb contains millions of domains, therefore it is recommended: / Blackweb contiene millones de dominios, por tanto se recomienda:

acl allowdomains dstdomain "/path_to/allowdomains.txt"
http_access allow allowdomains
  • Use blockdomains.txt to add domains not included in blackweb.txt (e.g.: .youtube.com .googlevideo.com, .ytimg.com, etc) / Usar blockdomains.txt para agregar dominios no incluidos en blackweb.txt (ejemplo: .youtube.com .googlevideo.com, .ytimg.com, etc.)
acl blockdomains dstdomain "/path_to/blockdomains.txt"
http_access deny blockdomains
  • Use blocktlds.txt to block Top Level Domains (TLDs) and country code (ccTLDs) / Use blocktlds.txt para bloquear Top Level Domains (TLD) y country code (ccTLD)
acl blocktlds dstdomain "/path_to/blocktlds.txt"
http_access deny blocktlds

URLs requests:

https://www.bardomain.xxx
https://subdomain.bardomain.xxx
https://www.bardomain.ru
https://www.bardomain.adult
https://www.foodomain.com
https://www.foodomain.porn

Squid Block:

.adult
.porn
.foodomain.com
.ru
.xxx

Advanced Rules Summary

# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
# Allow Domains
acl allowdomains dstdomain "/path_to/allowdomains.txt"
http_access allow allowdomains
# Block Domains
acl blockdomains dstdomain "/path_to/blockdomains.txt"
http_access deny blockdomains
# Block TLD/ccTLD
acl blocktlds dstdomain "/path_to/blocktlds.txt"
http_access deny blocktlds
# Blackweb
acl blackweb dstdomain "/path_to/blackweb.txt"
http_access deny blackweb

IMPORTANT

Blackweb is designed exclusively for Squid-Cache and due to the large number of blocked domains it is not recommended to use it in other environments (DNSMasq, Pi-Hole, etc.), or add it to the Windows Hosts File, as it could slow down or crash it. Use it at your own risk / Blackweb está diseñado exclusivamente para Squid-Cache y debido a la gran cantidad de dominios bloqueados no se recomienda usarlo en otros entornos (DNSMasq, Pi-Hole, etc.), o agregarlas al archivo Hosts File de Windows, ya que podría ralentizarlo o bloquearlo. Úselo bajo su propio riesgo

For more information check Issue 10

UPDATE


⚠️ WARNING: BEFORE YOU CONTINUE

This section is only to explain how update and optimization process works. It is not necessary for user to run it. This process can take time and consume a lot of hardware and bandwidth resources, therefore it is recommended to use test equipment / Esta sección es únicamente para explicar cómo funciona el proceso de actualización y optimización. No es necesario que el usuario la ejecute. Este proceso puede tardar y consumir muchos recursos de hardware y ancho de banda, por tanto se recomienda usar equipos de pruebas

Blackweb Update

The update process of blackweb.txt consists of several steps and is executed in sequence by the script bwupdate.sh. / El proceso de actualización de blackweb.txt consta de varios pasos y es ejecutado en secuencia por el script bwupdate.sh.

The script will request privileges when required. / El script solicitará privilegios cuando lo requiera.

wget -q -N https://raw.githubusercontent.com/maravento/blackweb/master/bwupdate/bwupdate.sh && chmod +x bwupdate.sh && ./bwupdate.sh

Dependencies

Update requires python 3x and bash 5x / La actualización requiere python 3x y bash 5x

pkgs='wget git subversion curl libnotify-bin idn2 perl tar rar unrar unzip zip python-is-python3 squid'
if ! dpkg -s $pkgs >/dev/null 2>&1; then
  apt-get install $pkgs
fi

Capture Public Blocklists

Capture domains from downloaded public blocklists (see SOURCES) and unifies them in a single file / Captura los dominios de las listas de bloqueo públicas descargadas (ver FUENTES) y las unifica en un solo archivo

Domain Debugging

Remove overlapping domains ('.sub.example.com' is a subdomain of '.example.com'), does homologation to Squid-Cache format and excludes false positives (google, hotmail, yahoo, etc.) with a allowlist (allowurls.txt) / Elimina dominios superpuestos ('.sub.example.com' es un dominio de '.example.com'), hace la homologación al formato de Squid-Cache y excluye falsos positivos (google, hotmail, yahoo, etc.) con una lista de permitidos (allowurls.txt)

com
.com
.domain.com
domain.com
0.0.0.0 domain.com
127.0.0.1 domain.com
::1 domain.com
domain.com.co
foo.bar.subdomain.domain.com
.subdomain.domain.com.co
www.domain.com
www.foo.bar.subdomain.domain.com
domain.co.uk
xxx.foo.bar.subdomain.domain.co.uk

outfile:

.domain.com
.domain.com.co
.domain.co.uk

TLD Validation

Remove domains with invalid TLDs (with a list of Public and Private Suffix TLDs: ccTLD, ccSLD, sTLD, uTLD, gSLD, gTLD, eTLD, etc., up to 4th level 4LDs) / Elimina dominios con TLD inválidos (con una lista de TLDs Public and Private Suffix: ccTLD, ccSLD, sTLD, uTLD, gSLD, gTLD, eTLD, etc., hasta 4to nivel 4LDs)

.domain.exe
.domain.com
.domain.edu.ca

outfile:

.domain.com
.domain.edu.ca

Debugging Punycode-IDN

Remove hostnames larger than 63 characters (RFC 1035) and other characters inadmissible by IDN and convert domains with international characters (not ASCII) and used for homologous attacks to Punycode/IDNA format / Elimina hostnames mayores a 63 caracteres (RFC 1035) y otros caracteres inadmisibles por IDN y convierte dominios con caracteres internacionales (no ASCII) y usados para ataques homográficos al formato Punycode/IDNA

.президент.рф
.mañana.com
.bücher.com
.café.fr
.köln-düsseldorfer-rhein-main.de
.mūsųlaikas.lt
.sendesık.com

outfile:

.xn--d1abbgf6aiiy.xn--p1ai
.xn--maana-pta.com
.xn--bcher-kva.com
.xn--caf-dma.fr
.xn--kln-dsseldorfer-rhein-main-cvc6o.de
.xn--mslaikas-qzb5f.lt
.xn--sendesk-wfb.com

DNS Loockup

Most of the SOURCES contain millions of invalid and nonexistent domains. Then, a double check of each domain is done (in 2 steps) via DNS and invalid and nonexistent are excluded from Blackweb. This process may take. By default it processes domains in parallel ≈ 6k to 12k x min, depending on the hardware and bandwidth / La mayoría de las FUENTES contienen millones de dominios inválidos e inexistentes. Entonces se hace una verificación doble de cada dominio (en 2 pasos) vía DNS y los inválidos e inexistentes se excluyen de Blackweb. Este proceso puede tardar. Por defecto procesa en paralelo dominios ≈ 6k a 12k x min, en dependencia del hardware y ancho de banda

HIT google.com
google.com has address 142.251.35.238
google.com has IPv6 address 2607:f8b0:4008:80b::200e
google.com mail is handled by 10 smtp.google.com.

FAULT testfaultdomain.com
Host testfaultdomain.com not found: 3(NXDOMAIN)

For more information, check internet live stats

Excludes government-related TLDs

Remove government domains (.gov) and other related TLDs from Blackweb. / Elimina de Blackweb los dominios de gobierno (.gov) y otros TLD relacionados.

www.argentina.gob.ar
www.domain.com
www.gob.mx
www.gov.uk
www.navy.mil

outfile:

www.domain.com

Run Squid-Cache with Blackweb

Run Squid-Cache with Blackweb and any error sends it to SquidError.txt on your desktop / Corre Squid-Cache con Blackweb y cualquier error lo envía a SquidError.txt en su escritorio

Check execution (/var/log/syslog)

Blackweb: Done 06/05/2019 15:47:14

Important about Blackweb Update

  • The default path of blackweb is /etc/acl. You can change it for your preference / El path por default de blackweb es /etc/acl. Puede cambiarlo por el de su preferencia
  • bwupdate.sh includes lists of domains related to remote support (Teamviewer, Anydesk, logmein, etc). They are commented by default (unless their domains are in the SOURCES). To block or exclude them you must activate the corresponding line in the script (# JOIN LIST), although is not recommended to avoid conflicts or false positives / bwupdate.sh incluye listas de dominios relacionados con soporte remoto (Teamviewer, Anydesk, logmein, etc). Están comentadas por defecto (excepto que sus dominios estén en las FUENTES). Para bloquearlas o excluirlas debe activar la línea correspondiente en el script (# JOIN LIST), aunque no se recomienda para evitar conflictos o falsos positivos
  • If you need to interrupt the execution of bwupdate.sh (ctrl + c) and it stopped at the DNS Loockup part, it will restart at that point. If you stop it earlier, you will have to start from the beginning or modify the script manually so that it starts from the desired point / Si necesita interrumpir la ejecución de bwupdate.sh (ctrl + c) y se detuvo en la parte de DNS Loockup, reiniciará en ese punto. Si lo detiene antes deberá comenzar desde el principio o modificar el script manualmente para que inicie desde el punto deseado.
  • If someone believes that any URL, included in allowurls.txt and blockurls.txt, should not be in these lists, can create an Issue and notify to remove it. / Si alguien considera que alguna URL, incluida en allowurls.txt y blockurls.txt, no debería estar en estas listas, puede crear un Issue y notificar para removerla.

SOURCES


BLOCKLISTS

Active

Inactive, Offline, Discontinued or Private

DEBUG LISTS

WORKTOOLS

REFERENCES


STARGAZERS


Stargazers

CONTRIBUTIONS


We thank all those who have contributed to this project. Those interested can contribute, sending us links of new lists, to be included in this project / Agradecemos a todos aquellos que han contribuido a este proyecto. Los interesados pueden contribuir, enviándonos enlaces de nuevas listas, para ser incluidas en este proyecto

Special thanks to: Jhonatan Sneider

SPONSOR THIS PROJECT


Image

LICENSES


GPL-3.0 License: CC BY-SA 4.0

DISCLAIMER


THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

OBJECTION


Due to recent arbitrary changes in computer terminology, it is necessary to clarify the meaning and connotation of the term blacklist, associated with this project: In computing, a blacklist, denylist or blocklist is a basic access control mechanism that allows through all elements (email addresses, users, passwords, URLs, IP addresses, domain names, file hashes, etc.), except those explicitly mentioned. Those items on the list are denied access. The opposite is a whitelist, which means only items on the list are let through whatever gate is being used.

Debido a los recientes cambios arbitrarios en la terminología informática, es necesario aclarar el significado y connotación del término blacklist, asociado a este proyecto: En informática, una lista negra, lista de denegación o lista de bloqueo es un mecanismo básico de control de acceso que permite a través de todos los elementos (direcciones de correo electrónico, usuarios, contraseñas, URL, direcciones IP, nombres de dominio, hashes de archivos, etc.), excepto los mencionados explícitamente. Esos elementos en la lista tienen acceso denegado. Lo opuesto es una lista blanca, lo que significa que solo los elementos de la lista pueden pasar por cualquier puerta que se esté utilizando.

Source Wikipedia

Therefore / Por tanto

blacklist, blocklist, blackweb, blackip, whitelist, etc.

are terms that have nothing to do with racial discrimination / son términos que no tienen ninguna relación con la discriminación racial.