The Pi-hole_list es una iniciativa que pretende bloquear y asegurar toda la red a través de su propio hardware. En este repositorio, se instala a través de Docker®. Pi-hole® y Adguard Home® son sumideros DNS que protegen tus dispositivos de contenidos no deseados sin necesidad de instalar ningún software en los dispositivos cliente.
PROYECTO | ENLACE INSTALADOR | ENLACE DESARROLLADOR |
---|---|---|
Adguard Home® | INSTALLATION | DEVELOPER |
Pi-hole® | INSTALLATION | DEVELOPER |
Estas listas fueron creadas porque quería tener un poco más de control sobre lo que se bloquea. Muchas listas son de todo o nada. Nos propusimos crear listas con más control sobre lo que se bloquea, por eso te recomiendo mis listas, ya que están probadas y bloqueamos solo lo que es innecesario.
Versión original:
Todas las URL en esta versión están precedidas por una dirección IP en el archivo txt o de hosts:
0.0.0.0 ejemplo.com
– redirige el dominio ejemplo.com a la dirección 0.0.0.0 (pero no para sus subdominios).
127.0.0.1 ejemplo.com
– devolverá la dirección 127.0.0.1 para el dominio ejemplo.com (pero no para sus subdominios).
Versión sin IP a la izquierda:
Todas las URL en esta versión no están precedidas por una dirección IP en el archivo txt o de hosts:
ejemplo.com
Nuestros usuarios nos han informado que algunos dispositivos dan un error si la URL está precedida por una dirección IP.
Versión de AdGuard:
Todas las URL de esta versión de la lista de **AdGuard** aparecen en el archivo hosts de la siguiente manera:
||ejemplo.org^
– bloquea el acceso al dominio ejemplo.org
y todos sus subdominios
@@||ejemplo.org^
– desbloquea el acceso al dominio ejemplo.org
y todos sus subdominios.
/REGEX/
– bloquea el acceso a los dominios que coinciden con la expresión regular especificada. Por ejemplo, la regla /ejemplo.*/
bloqueará los hosts que coincidan con el ejemplo.*
$
– Este es el delimitador, que indica que el resto de la regla es un modificador. Los modificadores deben colocarse al final de la regla después del carácter y separados por comas. Por ejemplo, los modificadores deben colocarse al final de la regla después del carácter y separados por comas. ||ejemplo.org^$importante
.
$importante
– El modificador aplicado a una regla aumenta su prioridad sobre cualquier otra regla sin el modificador. Incluso por encima de las reglas de excepción básicas.
*
– el carácter comodín. Se utiliza para representar cualquier conjunto de caracteres. También puede ser una cadena vacía o una cadena de cualquier longitud.
^
– el carácter separador. A diferencia del bloqueo de anuncios del navegador, no hay nada que separar en un nombre de host, por lo que el único propósito de este carácter es marcar el final del nombre de host.
|
– un indicador del principio o final del nombre de host. El valor depende de la ubicación del carácter en la máscara. Por ejemplo, la regla ejemplo|^
corresponde a ejemplo.org
, pero no a ejemplo.org.com
. |ejemplo
corresponde a ejemplo.org
pero no a test.ejemplo.org
Las instrucciones son actuales a partir de AdGuard Home v0.107.41. AdGuard admite versiones más antiguas. Las instrucciones que admite AdGuard Home.
Comentarios sobre las listas:
Todas las urls de esta versión de la lista aparecen en el archivo hosts de la siguiente forma
# comentario
– sólo un comentario
! comentario
– sólo un comentario
Utilizar con Pi-Hole :
- Copia el enlace al formato de Pi-hole de la lista deseada (de la tabla correspondiente a continuación).
- Agrega la URL a las listas de bloqueo de tu Pi-hole (Inicio de sesión > Administración de grupos > Listas > Pega la URL de la lista en el campo "Dirección", agrega un comentario > Haz clic en "Agregar").
- Actualiza Gravity (Herramientas > Actualizar Gravity > Haz clic en "Actualizar").
Instrucciones actuales a partir de Pi-hole 5.2.4. Las instrucciones pueden ser ligeramente diferentes en la actualidad. Las instrucciones se actualizarán cuando se publique la versión 6.
Utilizar con AdGuard Home :
- Copie el enlace al formato de AdGuard correspondiente a la lista deseada (de la tabla correspondiente a continuación).
- Añada la URL a su lista de bloqueo de AdGuard (Inicio de sesión > Filtros > Listas de bloqueo DNS > Añadir lista de bloqueo > Añadir una lista personalizada > Introduzca el nombre > Pegue la URL del enlace copiado).
- La lista se activa automáticamente y está lista para empezar a bloquear.
Instrucciones actualizadas a partir de AdGuard Home v0.107.41
- Una de las recomendaciones, en los ajustes de AdGuard, Configuración general, Intervalo de actualización de filtros en 1 hora. Actualizará las reglas cada hora.
Para cambiar la contraseña en Adguard podemos acceder a estas webs y crear un usuario y contraseña:
Creamos el usuario y la contraseña. Una vez creado, tiene este formato:
user:$apr1$x4gcjzrl$qSvcJK46C2rQUGRl4z1kl0
Una vez creado el usuario y la contraseña, procedemos a acceder al fichero de configuración de adguard, AdGuardHome.yaml
.
Buscamos la siguiente línea en el fichero de configuración y sustituimos los datos creados.
- Para el
user
: user - Para el
password
: $qSvcJK46C2rQUGRl4z1kl0
users:
- name: user
password: $apr1$x4gcjzrl$qSvcJK46C2rQUGRl4z1kl0
Una vez modificados los datos, reinicie adguard.
En la configuración de AdGuard, Configuración DNS:
- Upstream DNS servers, copie una de estas URLs:
For Cloudfare DoH-DoT:
https://dns.cloudflare.com/dns-query
tls://1dot1dot1dot1.cloudflare-dns.com
For DoH-DoT de Quad9:
https://dns.quad9.net/dns-query
tls://dns.quad9.net
y marque la opción "Balanceo de carga", por defecto esta opción está marcada.
- Arrancar servidores DNS, ponemos los DNS de nuestra elección:
Cloudflared tanto en IPv4 como en IPv6:
1.1.1.1
1.0.0.1
2606:4700:4700::1111
2606:4700:4700::1001
Quad9 in both IPv4 and IPv6:
9.9.9.9
149.112.112.112
2620:fe::fe
2620:fe::fe:9
- Configuración del servidor DNS, marque la opción "Habilitar DNSSEC".
Crear el certificado personal autofirmado con Let's Encrypt:
Instalar un certificado SSL gratuito con CertBot:
1️⃣ We update the list of packages.
sudo apt update && sudo apt upgrade
2️⃣ Instalar el paquete Certbot
sudo apt install certbot
3️⃣ En esta sección vamos a ver las opciones más importantes del comando. Puedes elegir las opciones que consideres más convenientes.
👉 3.1 You can add as many domains as you wish with the --domain
variable. Example:
Description | example |
---|---|
--domain | --domain example.com --domain example.org |
--domain | --domain example.org,www.example.org |
-d | -d example.com -d example.org |
-d | -d example.org,www.example.org |
👉 3.2 You can change the variable --rsa-key-size
to the size:
Bit size | Description |
---|---|
512 | Insecure |
1024 | Basic security |
2048 | Recommended security |
4096 | Increased security |
8192 | Maximum security |
👉 3.3. --csr
La variable csr y un archivo .cnf
pueden realizar las siguientes funciones. Actualmente --csr sólo funciona con el subcomando certonly
.
👉 3.4. --config-dir
Se puede configurar el fichero de configuración con la variable.
- Las opciones de configuración específicas del certificado deben establecerse en el
.conf
y adjunto un ejemplo:
👉 3.5. --test-cert, --staging
Utilizar el servidor de preparación de Let's Encrypt para obtener o revocar certificados de prueba (no válidos); equivalente a --server acme-staging
👉 3.6. --hsts
Añada la cabecera Strict-Transport-Security a cada respuesta HTTP. Obliga al navegador a utilizar siempre SSL para el dominio.
👉 3.7. --key-type {rsa,ecdsa}
. Tipo de clave privada generada. Solo se puede proporcionar UNA por invocación en este momento.
👉 3.8. --quiet
Silencia todas las salidas excepto los errores.
👉 3.9. --cert-name
Nombre del certificado a aplicar. Este nombre es utilizado por Certbot para el mantenimiento y en las rutas de archivo; no afecta al contenido del certificado en sí.
👉 3.10 --debug
Mostrar seguimiento en caso de error
👉 3.11. --server
Elija el URI de recursos de directorio ACME para su servidor.
Description | Server |
---|---|
Certificado para el servidor de producción | https://acme-v02.api.letsencrypt.org/directory |
Certificado para el servidor de ensayo | https://acme-staging-v02.api.letsencrypt.org/directory |
👉 3.12. --elliptic-curve
(default: secp256r1) The SECG elliptic curve name to use.
Type algorithm | Bit size | Description |
---|---|---|
secp192r1 | 192 | Insecure |
secp224k1 | 224 | Basic security |
secp224r1 | 224 | Basic security |
secp256k1 | 256 | Recommended security |
secp256r1 | 256 | Recommended security |
secp283k1 | 283 | Basic security |
secp283r1 | 283 | Basic security |
secp384r1 | 384 | Recommended security |
secp409r1 | 409 | Maximum security |
secp409k1 | 409 | Maximum security |
secp521r1 | 521 | Maximum security |
secp571r1 | 571 | Maximum security |
secp571k1 | 571 | Maximum security |
Para la elección de la clave a elegir, la diferencia en la definición del punto base tiene dos consecuencias importantes:
- La curva secpXXXk1 tiene una mayor eficiencia computacional que la curva secpXXXr1. Esto se debe a que el punto base de la curva secpXXXk1 es un punto de generación, lo que significa que puede utilizarse para generar todos los demás puntos de la curva. En cambio, el punto base de la curva secpXXXr1 no es un punto de generación, por lo que es necesario calcular más operaciones para generar todos los demás puntos de la curva.
- La curva secpXXXr1 tiene mayor seguridad que la curva secpXXXk1. Esto se debe a que el punto base de la curva secpXXXr1 es un punto más aleatorio que el punto base de la curva secpXXXk1. Esto hace que sea más difícil para los atacantes encontrar puntos de la curva que no estén en el conjunto de puntos de generación. En general, la curva secpXXXXk1 es una buena elección para aplicaciones que requieren eficiencia computacional, mientras que la curva secpXXXr1 es una buena elección para aplicaciones que requieren seguridad.
Ejemplos de aplicaciones que podrían utilizar cada curva:
Característica | secpXXXk1 | secpXXXr1 |
---|---|---|
Punto base: Más bajo, más alto. | ||
Tipo Computacional Seguridad | ||
Eficiencia computacional Superior Básico | ||
Seguridad | Básica | Superior |
Usos comunes | Firma digital, Criptodivisas, cifrado de claves públicas | Cifrado de claves públicas para aplicaciones críticas, cifrado, Infraestructura de Clave Pública (PKI) |
Ejecute el siguiente comando modificando el correo electrónico válido y las opciones que considere oportunas para su ejemplo.
Este ejemplo es para adquirir un certificado Wildcard:
certbot certonly --manual --preferred-challenges=dns --rsa-key-size 4096 --email [email protected] --agree-tos
--server https://acme-v02.api.letsencrypt.org/directory -d "*.your_domain"
4️⃣ Por último, nos pedirá que hagamos un registro _acme-challenge
TXT en nuestro proveedor de servidor de nombres con el contenido que nos indique:
Con cerbot, al utilizar el desafío dns, certbot nos pedirá que coloquemos un registro TXT DNS
con un contenido específico bajo el nombre de dominio consistente en el nombre de host para el que queremos que se emita un certificado, anteponiendo _acme-challenge
.
Por ejemplo, para el dominio ejemplo.com
, una entrada en el archivo de zona tendría el siguiente aspecto:
_acme-challenge.example.com. 300 IN TXT "gfj9Xq...Rg85nM"
Crea los siguientes archivos, en el directorio /etc/letsencrypt/live/
:
fullchain.pem
– su certificado SSL cifrado en PEM.privkey.pem
– tu clave privada encriptada en PEM.
To check if the certificate will self-renew:
- Prueba de renovación (simulación):
certbot renew --dry-run
- Compruebe el estado del servicio de temporizador de Certbot:
systemctl status certbot.timer
- Para renovar un certificado:
certbot renew
- Para forzar la autorrenovación:
--force-renewal
- Para forzar la autorrenovación:
- Para listar trabajos:
systemctl list-timers --all
Debe aparecer el siguiente configurado para la renovación automática:certbot.timer - certbot.service
- Certificados de cotización:
certbot certificates
Para revocar un certificado:
- Eliminar un certificado por completo:
certbot delete --cert-name example.com --reason keycompromise
- De la cuenta para la que se emitió el certificado:
certbot revoke --cert-path /etc/letsencrypt/archive/${YOUR_DOMAIN}/cert1.pem --reason keycompromise
- Utilizando la clave privada del certificado:
certbot revoke --cert-path /PATH/TO/cert.pem --key-path /PATH/TO/key.pem --reason keycompromise
Si no desea seguir todos estos pasos, puede obtener el certificado con ZeroSSL
, pero se carga el certificado comodín.
Crear el certificado personal autofirmado:
Pasos que puedes seguir para crear un certificado RSA autofirmado usando OpenSSL con SHA-512 y Subject Alternative Names (SAN).
Para saber más sobre comandos openssl útiles para certificados:
- Actualizamos la lista de paquetes.
sudo apt update && sudo apt upgrade
- Asegúrese de que tiene OpenSSL instalado en su sistema antes de continuar. Instale el paquete openssl:
sudo apt install openssl
- Cree el directorio donde queremos almacenar los certificados:
mkdir certs &&\
cd certs/
-
Cree el certificado con el siguiente comando, cambiando la ruta del certificado o deje el nombre de la
.key
y el.crt
para almacenarlo en el directorio:4.1 Generar una clave privada RSA:
openssl genpkey -algorithm RSA -out privkey.key -pkeyopt rsa_keygen_bits:2048
4.2 A continuación, crearemos una solicitud de certificado (CSR) que contendrá la información del certificado:
vi csrconfig.cnf
[req] distinguished_name = req_distinguished_name req_extensions = v3_req [req_distinguished_name] commonName = your website domain name organizationName = Your Company Name countryName = ES [v3_req] subjectAltName = @alt_names [alt_names] DNS.1 = example.com DNS.2 = www.example.com
4.3 Generamos el certificado autofirmado con los datos de la CSR:
openssl req -new -key privkey.key -out chain.csr -sha512 -config csrconfig.cnf
4.4 Crear certificado autofirmado en formato PEM:
openssl x509 -req -in chain.csr -signkey privkey.key -out fullchain.pem -sha512 -days 365 -extfile csrconfig.cnf -extensions v3_req
4.5 Después de crear el certificado autofirmado, podemos verificar el contenido del certificado si se ha creado correctamente:
openssl x509 -in fullchain.pem -text -noout
- Abre la interfaz web de AdGuard Home y ve a configuración.
- Desplázate hacia abajo en el menú hasta
Configuración de encriptación
. - Habilita la casilla
Habilitar encriptación
(HTTPS, DNS a través de HTTPS y DNS a través de TLS). - Habilita
Redireccionar automáticamente a HTTPS
. - Ingresa tu nombre de dominio en
Nombre del servidor
. Si estás ingresando un comodín, introduce solo el nombre de dominioejemplo.com
. - Copia/pega el contenido del archivo
fullchain.pem
enCertificados
. - Copia/pega el contenido del archivo
privkey.pem
enClave privada
. - Haz clic en
Guardar configuración
.
Para crear una zona en tu dominio y habilitar clientes, sigue estos pasos:
- Principalmente, en la sección de encriptación de AdGuard, debes habilitar el dominio
ejemplo.org
. - Tienes el certificado comodín
*.example.org
creado.
- Inicia sesión en el panel de control de tu proveedor de alojamiento web o registrador de dominios donde compraste el nombre de dominio.
- Busca la opción
Zonas DNS
. - Crea una nueva entrada de
Zonas DNS
. Para agregar la entrada para cada cliente, por ejemplo,one.example.org
. Esto permitirá que el cliente creado en el panel deConfiguración de clientes
se conecte. - Configura
Configuración/Configuración del cliente/Clientes persistentes
. Haz clic enAgregar clientes
y bajoIdentificador
, crea un nombre.
Instrucciones actuales en la documentación del desarrollador documentación.
Lista | Link | Descripción |
---|---|---|
safelist repository | safelist JuanRodenas | |
safelist hagezi | safelist hagezi (No comprobada) |
Columna Link: Pi-hole® | Adguard Home®.
Lista | Link | Descripción |
---|---|---|
List oisd | | | To Block host Adguard and domains dbl.oisd |
The big list | | | The big list oisd |
urlhaus-filter-domains | | | urlhaus-filter DEV Link |
everything | | | To Block everything |
energized pro | | | To Block energized |
d3ward | | | d3ward popular list |
Lista | Link | Descripción |
---|---|---|
The NSFW list | | | The NSFW list oisd |
Gambling-porn | | | To Block Gambling and porn |
Malware | | | To Block malware |
Ransomware | | | To Block ransomware |
phishing | To Block phishing |
Lista Tracking/Ads | Link | Descripción |
---|---|---|
SmartTV | | | To Block SmartTV |
WindowsSpyBlocker | To Block WindowsSpyBlocker | |
GoodbyeAds-Ultra | | | To Block hagezi and jerryn70 |
ads-and-tracking-extended | To Block ads-and-tracking-extended | |
Adblock_Plus | | | To Block Tracking AdBlock |
Android tracking | Android tracking for AdGuard Home | |
Disconnect.me | | | To Block disconnect.me |
Lista | Link | Link dev | Descripción |
---|---|---|---|
uBlock filters | Link DEV | uBlock filters | |
Badware risks | Link DEV | uBlock filters – Badware risks | |
Privacy | Link DEV | uBlock filters – Privacy | |
Quick fixes list | Link DEV | Quick fixes list | |
Resource abuse | Link DEV | uBlock filters – Resource abuse | |
Unbreak | Link DEV | uBlock filters – Unbreak | |
i-dont-care-about-cookies | Link DEV | i-dont-care-about-cookies | |
urlhaus-filter | Link DEV | urlhaus-filter |
Se ha añadido una pestaña para AdGuard con listas adaptadas a su formato.
Cloudflare:
Página para comprobar el cifrado de Cloudflare
- Secure DNS: una tecnología que cifra las consultas DNS e incluye DNS-over-TLS y DNS-over-HTTPS.
- DNSSEC: una tecnología diseñada para verificar la autenticidad de las consultas DNS.
- TLS 1.3: la última versión del protocolo TLS que incluye muchas mejoras y cierra agujeros de seguridad de versiones anteriores.
- Encrypted SNI: significa encriptación de Server Name Indication que revela el nombre del servidor durante una conexión TLS. Esta tecnología tiene como objetivo asegurar que solo se pueda filtrar la dirección IP.
El único navegador que admite las cuatro tecnologías es Firefox.
network.security.esni.enabled
- pulsamos en el +
y se ponga en true
.
network.trr.mode
– (valor 2)
network.trr.uri
– valor en la web Mozilla.
HTTPS-Only Mode
- pulsamos en el +
y se ponga en true
.
Enlace al desarrollador de la aplicación:
Todos y cada uno de los derechos y responsabilidades correspondientes seguirán siendo propiedad del promotor respectivo.
Si quieres contribuir a mejorar las listas, abre un issue
aquí:
Este repositorio está hecho con todo mi amor y cariño.
Estos archivos/textos se proporcionan "TAL CUAL", sin garantías de ningún tipo, expresas o implícitas, incluidas, entre otras, las garantías de comerciabilidad, idoneidad para un fin determinado y no infracción. En ningún caso los autores o titulares de los derechos de autor serán responsables de reclamaciones, daños u otras responsabilidades derivadas o relacionadas con los archivos o el uso de los mismos.
Iré actualizando con información y añadiendo procedimientos en mi tiempo libre. El contenido está bajo la licencia Creative Commons Reconocimiento - No comercial - Sin obras derivadas (by-nc-nd). Para más información sobre Creative Commons licensing, visite la link to Creative Commons página.
El autor del contenido es JuanRodenas. Puedes contactar conmigo en mailto y el sitio web del autor es website.
Todas y cada una de las marcas registradas son propiedad de sus respectivos dueños.