Este artigo non cobre o axuste completo de DPI e todo o que está conectado, e o valor científico do texto é mínimo. Pero describe o xeito máis sinxelo de evitar o DPI, que moitas empresas non tiveron en conta.
Descargo de responsabilidade n.º 1: este artigo é de natureza investigadora e non anima a ninguén a facer nin usar nada. A idea baséase na experiencia persoal, e calquera semellanza é aleatoria.
Предупреждение №2: в статье не раскрываются тайны Атлантиды, поиска Святого Грааля и иные загадки вселенной, весь материал находится в свободном доступе и возможно не раз был описан на Хабре. (я не нашел, за ссылку буду признателен)
Para os que leron as advertencias, imos comezar.
Que é DPI?
DPI ou Deep Packet Inspection é unha tecnoloxía para acumular datos estatísticos, comprobar e filtrar paquetes de rede analizando non só as cabeceiras dos paquetes, senón tamén o contido completo do tráfico a niveis do modelo OSI a partir do segundo e superior, que permite detectar e bloquear virus, filtrar información que non cumpra os criterios especificados.
DPI conectado á rede do provedor en paralelo (non nun corte) ben a través dun divisor óptico pasivo, ben mediante a duplicación do tráfico procedente dos usuarios. Esta conexión non ralentiza a velocidade da rede do provedor en caso de rendemento de DPI insuficiente, polo que é utilizada polos grandes provedores. DPI con este tipo de conexión técnicamente só pode detectar un intento de solicitar contido prohibido, pero non detelo. Para eludir esta restrición e bloquear o acceso a un sitio prohibido, DPI envía un paquete HTTP especialmente elaborado ao usuario que solicita un URL bloqueado cunha redirección á páxina stub do provedor, coma se tal resposta fose enviada polo propio recurso solicitado (o remitente). O enderezo IP e a secuencia TCP están falsificados). Como o DPI está fisicamente máis preto do usuario que o sitio solicitado, a resposta falsificada chega ao dispositivo do usuario máis rápido que a resposta real do sitio.
DPI activo
DPI activo: DPI conectado á rede do provedor do xeito habitual, como calquera outro dispositivo de rede. O provedor configura o enrutamento para que DPI reciba o tráfico dos usuarios a enderezos IP ou dominios bloqueados, e entón DPI decide se permite ou bloquea o tráfico. DPI activo pode inspeccionar tanto o tráfico saínte como o entrante, non obstante, se o provedor usa DPI só para bloquear sitios do rexistro, a maioría das veces está configurado para inspeccionar só o tráfico saínte.
Non só a eficacia do bloqueo de tráfico, senón tamén a carga do DPI depende do tipo de conexión, polo que é posible non escanear todo o tráfico, senón só determinados:
DPI "Normal".
Un DPI "regular" é un DPI que filtra un determinado tipo de tráfico só nos portos máis comúns para ese tipo. Por exemplo, un DPI "regular" detecta e bloquea o tráfico HTTP prohibido só no porto 80, o tráfico HTTPS no porto 443. Este tipo de DPI non rastrexará contido prohibido se envía unha solicitude cun URL bloqueado a unha IP desbloqueada ou non. porto estándar.
DPI "completo".
A diferenza do DPI "regular", este tipo de DPI clasifica o tráfico independentemente do enderezo IP e do porto. Deste xeito, os sitios bloqueados non se abrirán aínda que esteas a usar un servidor proxy nun porto completamente diferente e un enderezo IP desbloqueado.
Usando DPI
Para non reducir a taxa de transferencia de datos, cómpre usar DPI pasivo "Normal", que che permite efectivamente? bloquear algún? recursos, a configuración predeterminada é a seguinte:
Filtro HTTP só no porto 80
HTTPS só no porto 443
BitTorrent só nos portos 6881-6889
Pero os problemas comezan se o recurso utilizará un porto diferente para non perder usuarios, entón terás que comprobar cada paquete, por exemplo podes dar:
HTTP funciona nos portos 80 e 8080
HTTPS nos portos 443 e 8443
BitTorrent en calquera outra banda
Debido a isto, terás que cambiar a DPI "Activo" ou usar o bloqueo mediante un servidor DNS adicional.
Bloqueo mediante DNS
Unha forma de bloquear o acceso a un recurso é interceptar a solicitude de DNS mediante un servidor DNS local e devolverlle ao usuario un enderezo IP "stub" en lugar do recurso necesario. Pero isto non dá un resultado garantido, xa que é posible evitar a suplantación de enderezos:
Opción 1: edición do ficheiro hosts (para escritorio)
O ficheiro hosts é parte integrante de calquera sistema operativo, o que che permite usalo sempre. Para acceder ao recurso, o usuario debe:
Descubra o enderezo IP do recurso necesario
Abre o ficheiro hosts para editalo (requírense dereitos de administrador), situado en:
Linux: /etc/hosts
Windows: %WinDir%System32driversetchosts
Engade unha liña co formato: <nome do recurso>
Gardar cambios
A vantaxe deste método é a súa complexidade e a necesidade de dereitos de administrador.
Opción 2: DoH (DNS sobre HTTPS) ou DoT (DNS sobre TLS)
Estes métodos permítenche protexer a túa solicitude de DNS contra a falsificación mediante o cifrado, pero a implementación non é compatible con todas as aplicacións. Vexamos a facilidade de configurar DoH para Mozilla Firefox versión 66 dende o lado do usuario:
Aínda que este método é máis complexo, non require que o usuario teña dereitos de administrador e hai moitas outras formas de protexer unha solicitude de DNS que non se describen neste artigo.
Opción 3 (para dispositivos móbiles):
Usando a aplicación Cloudflare para androide и IOS.
Probas
Para comprobar a falta de acceso aos recursos, comprouse temporalmente un dominio bloqueado na Federación Rusa:
Espero que este artigo sexa útil e que anime non só aos administradores a comprender o tema con máis detalle, senón que tamén dea a entender que os recursos estarán sempre do lado do usuario, e a busca de novas solucións debería ser unha parte integral para eles.
Adición fóra do artigoA proba de Cloudflare non se pode completar na rede do operador Tele2 e un DPI configurado correctamente bloquea o acceso ao sitio de proba.
PS Ata agora este é o primeiro provedor que bloquea correctamente os recursos.