Teoría sobre interconexión de redes

De MediaWiki
Ir a la navegación Ir a la búsqueda

Consideracións pedagóxicas

  • No módulo Servizos en rede do Ciclo Medio de Sistemas Microinformáticos e Redes
    • No "BC8. Interconexión de redes"
      • Pasarelas a nivel de aplicación. Almacenaxe en memoria caché.
      • Encamiñamento de tráfico entre interfaces de rede
      • Devasas (firewlls). Filtraxe do tráfico entre redes
      • Reenvío de portos
  • No módulo Redes locais do Ciclo Medio de Sistemas Microinformáticos e Redes
    • No "BC3. Interconexión de equipamentos en redes locais"
      • Adaptadores para redes con cables
      • Dispositivos de interconexión de redes
      • Adaptadores para redes sen fíos
      • Dispositivos de interconexión de redes sen fíos
      • Redes mixtas
    • No "BC4. Instalación e configuración dos equipamentos de rede"
      • Configuración dos adaptadores de rede en sistemas operativos libres e propietarios
      • Configuración básica dos dispositivos de interconexión de redes con cables
      • Configuración básica dos dispositivos de interconexión de redes sen fíos

Pasarelas

A nivel físico - O gateway

A pasarela ou porta de enlace (gateway) é un dispositivo, un computador o un programa que permite interconectar redes con protocolos e/o arquitecturas diferentes a todos os niveis de comunicación. É habitual a súa utilización para conectar redes LAN a redes WAN (internet).

A nivel de aplicación - O proxy

As pasarelas software a nivel aplicación son máis coñecidas coma proxy . Un proxy é un software intermediario nas comunicacións entre un cliente e un servidor necesario cando ambos se atopan en redes independentes que non permiten la comunicación directa.

O proxy realiza as peticións do cliente no seu nome ó servidor; e unha vez que recibe as respostas remítellas o cliente.

O firewall actúa na capa de transporte de red e por tanto manipula todos os paquetes; o proxy só retransmite un ou varios protocolos do nivel de aplicación (o máis común é o proxy HTTP).

A súa utilidade máxima é centralizar as conexións dunha rede:

  • cando so existe un único equipo ou router con conexión a internet
  • para forzar a todos os equipos a pasar por un servidor seguro (con SSL, antivirus, devesa, rexistros ou log de sucesos e toda medida de seguridade necesaria)
  • para aproveitar unha conexión proxy cache e así facer máis eficaz o uso de ancho de banda de varios equipos
  • para pasar por un único porto aberto
  • para evitar conexións a determinadas DNS, IP, páxinas web, etc. ou facer calquer outro filtrado de paquetes

O servidor proxy máis popular é Squid

Proxy directo e proxy inverso

Existen dúas modalidades: o proxy directo ou forward proxy, e o proxy inverso ou reverse proxy:

Diferenza entre proxy directo e inverso

Proxy directo

Un proxy directo ou forward proxy funciona coma un servidor para o cliente.

O cliente A comunícase co servidor proxy B e non co servidor de destino C; A non pode contactar con C directamente de ningún xeito por motivos de seguridade, control de accesos ou topoloxía da rede. O proxy B realiza as peticiones ó servidor C (frechas verdes) e unha vez obtidas as respostas retransmítellas o cliente A.

O proxy directo utilízase para:

  1. Controlar os accesos ó exterior: permitindo uns e impedindo outros dependendo do usuario de orixe e do servidor de destino solicitado.
  2. Optimizar a canle de saída a internet: repartindo equitativamente o ancho de banda entre todos os clientes locais ou azilizando as respostas mediante unha caché.
  3. Rexistrar a actividad dos usuarios: en previsión de auditorías futuras.
  4. Protexer os clientes: é máis fácil manter un proxy actualizado e protexido ante vulnerabilidades, que a todos e cada un dos clientes da rede local (aínda que sempre hai que pensar na seguridade en profundidade e por capas).

Conseguese todo isto configurando o proxy para que evalúe as peticións realizadas polos clientes baseándose nun conxunto de regras que definen a acción a realizar (aceptar ou rexeitar a petición).

Proxy inverso

Un proxy inverso ou reverse proxy colócase en fronte doutro servidor o que suplanta sen o coñocemento do cliente.

O cliente A comunícase co servidor B crendo que se está comunicando co servidor C. O proxy B reenvía de maneira transparente a petición ó servidor C e cando obten a resposta retransmitella de regreso ó cliente A.

Nun proxy directo, o cliente está obrigado a realizar as súas solicitudes a través do proxy, é decir, o cliente coñece a existencia do servidor proxy e sabe que ten que realizarlle a él as peticións. En cambio, na modalidade de proxy inverso, os clientes non teñen coñecemento de que para chegar ó servidor de destino van atravesar un proxy.

Os proxies inversos utilízanse normalmente para acceder a varios servidores ubicados na mesma rede conseguindo así:

  1. Seguridade: o proxy supón unha capa de seguridade previa ós servidores ós que protexe.
  2. Cifrado: a comunicación cliente‑proxy (frechas vermellas) pode ser cifrada, mientras que a comunicación interna (frechas verdes) non é preciso recargala con esta capa de seguridade.
  3. Aceleración: ó igual que cos proxies directos, os proxies inversos poden devolver moi rápidamente contido estático os clientes, gardándoo na caché.
  4. Balanceo de carga: en escenarios de alta disponibilidade pódese repartir a carga de traballo entre varios servidores replicados, redundando nuns mellores tempos de resposta.

Porén os proxies inversos están máis relacionados coa alta disponibilidade.

A palabra proxy en solitario fai referencia a un proxy directo ou forward proxy; é necesario usar explícitamente as expresións proxy inverso ou reverse proxy para a outra modalidade.

Privacidade e implicacións legáis

A análise e rexistro das conexións dos usuarios realizada cun proxy entra en conflito coa súa privacidade xa que ese tipo de información pode ser utilizada para indagar na intimidade dos usuarios ou para a elaboración de perfís sociológicos.

Porén, en cumplimento da lexislación nacional sobre protección de datos persoais e o RGPD europeo (Reglamento General de Protección de Datos) o uso dun proxy debe ser sempre realizado trala debida información ós usuarios da existencia deste software e as súas implicacións.

Configuración dos clientes

Ademáis da aceleración por cache, a nivel de seguridade podemos mellorar non permitindo ou restrinxindo o acceso:

  • a webs perigosas polo seu contido (malware, pornografía, violencia, ...).
  • a webmails distintos ó corporativo.
  • a servidores con IP que pertenza a algunha lista negra.
  • a certas webs só durante determinados momentos do día.
  • a certas webs dependendo di usuario usando listas de control de accesos (ACL).

E en todo caso con fins de auditoría rexistrar qué usuarios acceden a qué webs en qué momentos.

O proxy directo é usado principlamente nas conexións web (HTTP ou HTTPS); pero existen outros protocolos configurables a través do proxy coma pode ser FTP.

O cliente debe ser configurado expresamente para realizar as súas conexións (de un ou varios protocolos) a través do proxy.

A configuración faise:

Saberías configurar o uso de proxy en Ubuntu por terminal e interfaz gráfica?

Manual

Para a configuración do proxy no cliente é preciso indicar a ip e o porto; e estándar o uso do porto 8080 (mais o 3128 utilizado por defecto no Squid é tamén moi habitual). É tamén posible usar diferentes servidores proxy para cada protocolo ou o mesmo para todos.

Qué é o protocolo SOCKS? 
Os proxies naceron para facer de intermediarios na navegación web co protocolo HTTP pero fóronse adaptando a outros protocolos coma HTTPS e FTP. Porén decidíuse crear un protocolo especial chamado SOCKS para que calquera protocolo TCP (ou UDP desde SOCKS v5) puidera ser enviado a través dun proxy. Gracias a SOCKS é posible usar un proxy para calquera tipo de comunicación co exterior (por exemplo SMTP ou DNS),

Configuración automática

Para evitar ter que configurar todolos equipos dunha rede local co enderezo IP e o porto do servidor proxy existe unha forma de almacenar toda a información nun ficheiro especial con extensión PAC (Proxy Auto-Configuration).

Así os equipos acceden o ficheiro PAC ubicado de xeito accesible por todos e con el se configuran automáticamente; simplifica reconfiguracións porque só e necesario actualizar o ficheiro PAC cando se produce algún cambio. E coma eses ficheiros son programas JavaScript e moi sinxelo implementar distintas decisións coa URL á que se desexa acceder configurando a función FindProxyForURL.

Un exemplo de ficheiro PAC:

function FindProxyForURL(url, host)
{
   if (shExpMatch(url, "https://finanzas.miempresa.es/*"))
      return "PROXY 192.168.3.1:8080"; 
   else 
      return "SOCKS 192.168.3.2:8888";
}

O navegador utiliza a función FindProxyForURL definida no ficheiro PROXY.PAC para cada URL que o usuario desexa visitar e decide cómo acceder. No exemplo anterior todas as URL que comecen por “https://finanzas.miempresa.es” serán redirixidas ó proxy con enderezo 192.168.3.1 e o resto das URL serán accedidas a través doutro proxy SOCKS con enderezo 192.168.3.2 e puerto 8888.

Cando nun equipo utilizamos a opción Autodetectar la configuración del proxy para esta red estamoslle dicindo que busque o ficheiro PAC:

  1. Se o atopa actuará coa información dese ficheiro PAC
  2. Se non o atopa funcionará coma na opción Sin proxy

Onde busca o ficheiro PAC? O Web Proxy Autodiscovery Protocol (WPAD) (Protocolo de autodescubrimiento de Proxy Web) é un método utilizado polos clientes para atopar a URL dun archivo de configuración utilizando métodos de descubrimiento de DHCP e/ou DNS

Os pasos que vai seguindo secuencialmente (parando co primeiro que atope o ficheiro) é:

  1. Se coñece a ubicación do ficheiro PAC dunha eeecución anterior,usa ese ficheiro.
  2. Pregúntalle ó servidor DHCP que pode responder coa URL completa do ficheiro PAC.
  3. Pregúntalle ó servidor DNS cál e o equipo con nome ou alias wpad; se existe solicítaselle a este o ficheiro wpad.dat que é o nome que debe ter o ficheiro PROXY.PAC.
  4. Próbanse (en contornas Windows) outros métodos similares a DNS coma LLMNR ou NBT‑NS (aínda que por motivos de seguridade isto xa non é moi recomendable na actualidade).

Proxy transparente

A utilización dun proxy transparente facilita a configuración dos equipos cliente xa que de feito non precisan configuración; cren que están accedendo ó exterior de xeito normal cando é o gateway da rede (o router frontera) quen intercepta o tráfico saínte e reenviallo ó proxy; este revisa, interpreta e realiza as peticións exteriores en nome dos clientes.

Encamiñamento de tráfico entre interfaces de rede

A interconexión entre redes faise cun dispositivo chamado router; este dispositivo consulta a súa táboa de enrutamento e decide por onde debe dirixir os paquetes de datos escollendo a ruta máis axeitada.

Os compoñentes dunha táboa de enrutamento son:

  • Red de destino: corresponde á rede de destino onde deberá ir o paquete de datos.
  • Máscara de subrede: é a máscara da rede destino. A máscara de rede xunto coa rede destino definen o conxunto de nodos os que se dirixe á ruta.
  • Seguinte salto: enderezo de IP da interfaz de rede por onde viaxará o paquete de datos seguindo o seu camino ata o destino final.
  • Interfaz de saída: interfaz de rede por onde deben saír os paquetes
  • Métricas: utilizadas polos diferentes algoritmos de enrutamento para tomar decisións preioriznado unha ruta sobre outra; algunhas posibilidades son indicar o número mínimo de saltos ata a rede de destino ou o custe para chegar ata a rede de destino.

Os tipos de rutas que se poden almacenar na táboa de enrutamento son:

  • Conectadas directamente
  • Rutas remotas
  • De host
  • Rutas por defecto
  • O destino

O ruteo, a función do router na rede, consiste en:

  1. Recibe o paquete de datos.
  2. Busca cál é o enderezo de destino.
  3. Verifica a táboa de enrutamiento que ten configurada.
  4. Procede a enviar o paquete a destino pola mellor ruta.

Para ver a táboa de enrutamento:

  • do noso router podemos acceder al perfil de administración que poseen os router. Nun router Cisco IOS pódese utilizar o comando show ip route
  • do noso equipo Windows co comando route print ou netstat -r desde o cmd.exe
  • do noso equipo Linux co comando route -n ou ip route show

Devesas (firewalls)

Unha devesa (cortafuegos ou firewall) é unha parte dun sistema ou rede deseñado para bloquear o acceso non autorizado.

Trátase dunha aplicación, parte dun sistema operativo, dispositivo hardware, ou unha combinación dos anteriores, configurados para filtrar, permitir, limitar ou cifrar o tráfico entre interfaces, terminais e redes en base a unhas normas e criterios (IP, DNS, paquetes, portos, aplicacións, procesos, etc.).

DMZ con doús firewall

Devesas integradas

Windows ten unha devesa integrada desde a súa versión XP (Firewall ou Defender de Windows). Hai máis opcións, coma entre outras:

Outra alternativa son as suites de seguridade (Internet Security) que conteñen antivirus, devesa, antiespías, antimalware, antispam, antifraude, antimarcadores, escaneadores de portos, etc., coma son as dos segintes proveedores:

O seu inconvinte e que ralentizan o funcionamento dos equipos para acadar a súa función.

IMPORTANTE. As devesas, do mesmo modo que os antivirus, non deben instalarse e activarse a pares, porque posiblemente se bloqueen entre eles e penalicen moito máis o rendemento da máquina.

Devesa perimetral

Como dicíamos, unha devesa en cada equipo é unha solución que ralentiza en exceso, sin contar co coste de licenzas; por iso unha boa solución sería instalar devesas en servidores proxy de acceso a internet ou configuralos nos propios puntos de acceso ou enrutadores.

Son imprescindibles nas empresas onde é habitual conectar á devesa unha terceria rede, coñecida coma zona desmilitarizada o DMZ (DeMilitarized Zone). Nela ubicanse os servidores accesibles desde o exterior, quedando a LAN protexida, pero con funcionalidade de intranet ou extranet.

Devesas software

Calquera equipo con dúas ou máis interfaces de red que enrute tráfico de rede pode facer as funciones de devesa co software axeitado. Hai moitas solucións de devesa open source. Entre outras:

Podes ler un pequeno resumo comparativo.

Devesas hardware

Son routers que adoitan ter entre 4 e 24 interfaces de red e cun firmware que permite especificar con todo detalle as regras da devesa. Son dispositivos de fabricantes coma Mikrotik, WatchGuard, ou Cisco.

A case totalidade dos firewall hardware están baseados nalgunga distribución UNIX/Linux xa que o seu kernel está deseñado para o enrutamento e filtrado de paquetes.

Algunhas marcas de cortafuegos profesionais teñen unha demo do seu software de xeito que é posible probar o produto antes de adquirilo:

Políticas

As normas da devesa comunmente agrupanse en dúas políticas básicas de configuración:

Política restrictiva
denegase todo o tráfico excepto o explícitamente permitido; debemos ir habilitando os servizos necesarios. Esta é a política máis aconsellable por ser preventiva.
Política permisiva 
Permítese todo o tráfico excepto o explícitamente denegado. Este método é correctivo e precisa dunha continua "educación" ou reconfiguración.

Posibilidades

Servidor proxy

É normal nas empresas usar un servidor proxy devesa (L7). Como dicíamos, unha das solucións máis utilizadas e Squid.

Filtraxe do tráfico entre redes

Os novos routers teñen capacidade de devesa de portos (L4), IP (L3) ou incluso direccions MAC (L2).

Reenvío de portos (port forwarding)

O reenvío de portos (port forwarding) ou redireccionamiento de tráfico é unha técnica necesaria se usamos proxy ou servidor NAT para que accedan desde fóra equipos da rede. É unha forma de traducir os enderezos de paquetes entrantes.

O reenvío de portos fai posible que queden abertos; mais non debemos deixar abertos estos buratos da devesa a non ser que sexa estrictamente necesario. O ideal e habitual é que os servidores estén nunha terceira rede coñecida coma DMZ.

Unha forma moi habitual de facer este redireccionamente é mediante iptables; ou máis recentemente con nftables, o proxecto que o vai sustituir.

En entornos Windows, é posible configurar o reenvío de portos. A través de interface, e para Windows 10, estes son os pasos:

PfSense: un firewall perimetral

PfSense é unha distribución baseada en UNIX FreeBSD adaptada para funcionar como firewall de rede ou como router.

Entre as funcionalidades máis salientables de pfSense están:

  • Stateful firewall baseado en PF (The OpenBSD Packet Filter).
    • Permite filtrar por:
      • IP orixe/destino
      • Porto tcp/udp orixe/destino
      • Sistema operativo que inicia a conexión
      • ...
    • Permite rexistrar (log) ou non o tráfico afectado polas regras
    • Permite definir políticas:
      • de enrutamento para ter balanceo de carga (load balancing()
      • tolerancia a fallos (failover)
      • varias saídas a Internet (multiple WAN)
      • ...
    • Permite usar alias para construír xogos de regras complexos pero lexibles.
    • Deshabilitando o filtrado convértese nun router puro.
  • Táboa de Estado: Mantén a información das conexións abertas permitindo ademais:
    • axustar o seu tamaño en función do hardware do equipo.
    • elixir entre varias políticas de xestión para optimizar o seu funcionamento sobre a base das características dos enlaces (p. ex. para liñas de satélite con alta latencia as entradas asociadas a conexións inactivas consérvanse durante máis tempo do normal).
    • poder controlar en cada regra o n.º de conexións simultáneas n.º de novas conexións por segundo...
  • Redundancia: usando CARP dous ou máis firewalls pódense configurar para formar un failover group. Se unha interface falla no principal ou o principal cae totalmente, o secundario pasa a estar activo.
    • PfSense proporciona sincronización para que os cambios de configuración no principal se teñan en conta no secundario. Ademais sincronízase tamén a táboa de estado o que permite o mantemento das conexións establecidas en caso de fallo.
  • Balanceo de carga (Load Balancing): pfSense permite balancear tanto as conexións saíntes coma entrantes:
    • Outbound Load Balancing: permite usar varias conexións WAN, mellorando o rendemento ademais de proporcionar failover. Por exemplo, se hai tres conexións a Internet, pfSense reparte o tráfico saínte da organización entre as tres saídas. No caso de que unha das saídas caia, automáticamente pfSense deixa de enviar paquetes por ela, empregando unicamente as saídas que funcionan. Cando detecte que esa saída volve estar operativa, comezará a enviar paquetes novamente por ela.
    • Inbound Load Balancing: permite distribuír a carga entre varios servidores. Por exemplo, pódese montar tres servidores web coa mesma información e cando pfSense reciba unha solicitude procederá a enviala o primeiro servidor, a seguinte ó segundo e así sucesivamente.
  • NAT (Network Address Translation): tradución de enderezos públicos-privados para permitir:
    • a saída a Internet a equipos de organizacións que empregan direccionamento privado na intranet.
    • o acceso dende Internet a servidores ubicados dentro da organización e que empregan direccionamento privado.
  • Portal Cautivo (captive portal): para forzar a autenticación ou a aceptación de condicións antes de poder navegar, permitindo ademais:
    • Controlar o número máximo de conexións concorrentes por cliente.
    • Desconectar clientes ao cabo de certo tempo de uso ou de inactividade.
  • DDNS (Dynamic DNS): permite a actualización en tempo real da información dns. Usado habitualmente para asignar un nome de dominio a un equipo cunha ip variable (asignada por dhcp).
  • VPN (Virtual Private Network): as redes privadas virtuais permiten que equipos situados no exterior poidan traballar coma si estivesen dentro da intranet da organización dun xeito seguro, grazas ó estabrecemento de tuneis cifrados.
  • Servizos básicos de rede coma:
    • servidor DHCP
    • axente de retransmisión DHCP (dhcp relay)
    • servidor DNS
    • ....
  • Sistema de paquetes: permite ampliar as funcionalidades da instalación inicial coa instalación e configuración vía web de paquetes coma
    • squid e squidguard para converter pfSense nun proxy caché con filtrado de contidos
    • HAVP para detección de virus en http
    • Snort para converter pfSense nun sensor IDS/IPS
    • pfBlocker-NG
    • postfix forwarder
    • FreeRADIUS
    • ...

pfSense pode considerarse un exemplo do concepto UTM (Unified Threat Management) ou Xestión Unificada de Ameazas que a día de hoxe a industria da seguridade informática está a impulsar. Trátase de dispositivos 'todo nun', que engloban múltiples funcionalidades:

  • network level firewall
  • proxy http-smtp-pop-imap
  • filtro anti-spam
  • antivirus-antispyware
  • filtro de contidos
  • IDS/IPS
  • autenticación de usuarios
  • Virtual Private Networks (VPN)
  • Hotspot'
  • portal cautivo (captive portal)
  • alta disponibilidade
  • ...

Filtrado e regras

Os firewalls á hora de filtrar paquetes poden combinar distintas técnicas:

  • Xogo de regras (ruleset): tamén chamado ACL (listas de control de acceso) en moitos dispositivos. Posteriormente falarase con mais detalle dos ruleset.
  • Filtrado de camiño inverso (Reverse Path Filtering - RPF): permite verificar todo o tráfico de entrada dun interface, comprobando que as direccións de orixe son coñecidas mediante a táboa de enrutamiento (Routing Information Base - RIB). Verifícase cada paquete coa táboa de rutas e se a conexión procede dunha IP e interface onde se sabe que non reside a rede, o paquete descártase directamente (p.e. un paquete procedente da WAN con IP da nosa organización). É un filtrado baseado en direccións IP de orixe.
  • Rutas de descarte (null routes): permite enviar o tráfico especificado a unha interface virtual de descarte. Impleméntase modificando a táboa de enrutamiento. É polo tanto un filtrado baseado na dirección IP de destino.

En moitos firewalls perimetrais adoita aplicarse un filtrado coñecido como de entrada/saída (ingress/egress) de maneira que sexan o primeiro punto de control do tráfico. Para un rendemento óptimo, o habitual é filtrar no interface máis próximo; é dicir, o tráfico de saída cara a Internet filtralo no interface interno e o tráfico de entrada de Internet filtralo no interface externo.

ingress/egress

Á hora de decidir que facer cun paquete os firewalls adoitan adoptar algunha estas accións:

PASS: o paquete é aceptado e continúa a súa marcha.
DROP: o paquete é descartado silenciosamente.
REJECT: o paquete é descartado pero infórmase o remitente:
Se é unha conexión tcp, envíase ao remitente unha mensaxe TCP RST (reset).
Se é unha conexión udp, envíase ao remitente unha mensaxe ICMP Porto inaccesible.
Utilizar DROP en vez de REJECT, permitirá manter oculto o firewall dificultando a tarefa de descubrir a política de seguridade implantada. Coma contrapartida, descartar paquetes usando DROP provoca que non se envíe ningunha información de diagnóstico. Con isto, posiblemente a mellor opción para filtrado dentro de redes internas sexa utilizar Reject e para tráfico externo drop.

Boas prácticas no deseño de firewalls

A continuación indícanse unha serie de boas prácticas á hora de crear regras para configurar un firewall:

  • Denegar por defecto (CleanUp Rule): permítese unicamente o tráfico requirido polas necesidades da rede e rexeitase o resto. Todo tráfico non autorizado nas regras será eliminado; polo que, para permitilo habería que contactar co administrador do firewall e que éste procedese a autorizalo.

Aínda que a opción de Permitir por defecto é máis cómoda e vén activada por defecto en moitos routers e firewalls, non é a máis segura. Hai que crear regras para bloquear o tráfico non desexado. É moi cómodo, pero non é o máis seguro xa que pode haber tráfico non desexado atravesando o firewall (se o administrador esqueceu crear a regra correspondente para bloquealo).

  • Sinxeleza e claridade: á hora de crear o ruleset hai que pensar e planificar para que sexa o máis claro e sinxelo. Conxuntos de regras moi longos, desorganizados ou excesivamente complexos facilitan que os administradores cometan erros permitindo ou bloqueando tráfico que non corresponde. Hai que seguir o principio KISS (Keep It Simple).

Sempre que o dispositivo o permita é recomendable empregar alias para facilitar a comprensión e o mantemento das regras. Por exemplo, usando un alias de nome IP_admin asociado á dirección IP do equipo do administrador, facilítase a interpretación das regras. Ademais, no caso de que o equipo do administrador cambiase de dirección, poderíamos actualizar o valor do alias á nova dirección, actualizándose todas as regras onde apareza, sen necesidade de reemplazar un a un o valor en todas as regras do firewall.

  • Enderezos marciáns (martians): denega a entrada e saída de direccións marcianas. As direccións marcianas son todas aquelas que pola súa asignación non poden xerar tráfico Internet válido (e, polo tanto, seguramente enmascaran tráfico ilícito). As direccións a bloquear serían:
Enderezos reservados pola IANA:
0.0.0.0/8, 10.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.0.2.0/24, 192.88.99.0/24, 198.18.0.0/15, 192.168.0.0/16, 224.0.0.0/4, 240.0.0.0/4.

Enderezos recollidos no RFC 3232: 
este documento establece unha base de datos online e en continuo cambio como referencia obrigada para a asignación dos rangos de direccións IP por IANA.

No caso de firewalls que están dentro de organizacións que usan direccionamento privado, habería que analizar cales destas redes están en uso para permitir o seu tráfico, bloqueando o resto.
  • Enderezos non asignados (unallocated): denega a entrada e saída de tráfico orixinado en direccións válidas pero que non están en uso.
  • Regras Antispoofing: denega a entrada de tráfico coas túas direccións e a saída de tráfico non orixinado coas túas direccións; é dicir, tráfico cuxa IP de orixe non se corresponde co segmento de rede do que procede. Non ten sentido que o firewall reciba dende a Intranet paquetes con IP orixe unha IP que non é da Intranet e do mesmo xeito, non ten sentido que o firewall reciba paquetes dende Internet con IP orixe unha IP da Intranet da organización.
  • Permite explícitamente tráfico lexítimo: o tráfico de retorno cara ós teus enderezos e de saída orixinado desde os teus enderezos.
  • Xestión do firewall: prohibe o acceso non autorizado ós firewalls. Para facelo correctamente debería haber dous grupos de regras:
En primeiro lugar, garantir o acceso dende equipos autorizados (anti Lockdown Rule).
En segundo lugar, prohibir o acceso ó resto (Lockdown Rule ou Stealth Rule).
  • Tráfico de xestión e monitorización: unicamente permite o tipo de tráfico de xestión e monitorización necesario e estrcitcamete ós equipos implicados.
  • Permite o tráfico dos protocolos de enrutamiento e de rede necesarios, coma os servizos ofrecidos pola organización:
    • Permitir unicamente o acceso ós portos/servizos ofrecidos pola organización. Normalmente estes servizos correrán en servidores ubicados nunha rede especial chamada DMZ.
    • Denegar o tráfico de saída aos servidores da DMZ (Sneaky Rule): os servidores recibirán peticións e responderán ós clientes. É dicir, a conexión é iniciada por un cliente e autorizada polo firewall, polo que as respostas dos servidores estarán autorizadas para saír. O que se está a impedir con esta regra é que os servidores inicien conexións hacia fóra, que normalmente non son necesarias para desempeñar ás súas funcións.

Un aspecto moi importante nun sistema de seguridade é a monitorización e os rexistros. O administrador debe poder saber o estado do firewall e que tráfico é/foi autorizado ou bloqueado. É recomendable:

  • Rexistrar o tráfico denegado (Log Denied Rule).
  • Rexistar e alertar en caso de tráfico dende unha zona DMZ.
  • Non rexistrar o tráfico ruidoso pero necesario como o broadcast (No Logging Rule).
  • Centralización dos rexistros nunha máquina onde se faga unha análise automática de rexistros. Para isto existen ferramentas específicas coñecidas como SIM (Security Information Management) e SIEM (Security Information and Event Management).

Outro punto de especial importancia é documentar a configuración:

  • Comentar as regras para facilitar comprender a súa finalidade e facilitar o seu mantemento. Hai que pensar que pode pasar tempo dende que se crearon unhas regras ata o día en que hai que cambiar o ruleset do firewall ou que o firewall sexa revisado por outra persoa diferente á que creou as regras.
  • En ámbitos grandes débese manter unha documentación detallada describindo a configuración. Debido ao sensible desta documentación, debe estar protexida.

Outras ferramentas

Para Linux existen :

En todo caso quizais a mellor opción sexa a que leva integrada Linux (iptables, netfilter), xa que posiblemente é o mellor filtro de red para DMZ; e realmente a maioría de devesas de Linux son entornos gráficos de manipulación de iptables.

VPN - Virtual Private Network

Unha rede privada virtual ou VPN é unha tecnoloxía de rede que permite extender o alcance dunha rede LAN a través das infraestructuras de rede pública (Internet).

Esquema VPN

Con isto elimínase a necesidade de que os integrantes da comunicación estén físicamente conectados entre sí xa que esta conexión realizase a través de Internet; isto e, os dispositivos ubicados na LAN poderán transferir datos sobre a rede públiac coma se se atopasen na rede privada sen límites no referente a funcionalidade e seguridade.

Para poder implementar este tipo de tecnoloxía é preciso o establecemento dunha conexión virtual punto a punto mediante o uso de conexións dedicadas, cifrado ou a combinación das dúas.

Protocolos

A conexión VPN (servidor e clientes) debe utilizar o mesmo protocolo nos extremos para establecer o túnel cifrado. Existen varios protocolos: xeralmente canto máis seguro é un protocolo máis lenta é a transferencia de datos pola sobrecarga que supón o cifrado.

Os sistemas operativos incorporan librerías que permiten crear conexións VPN usando un ou varios destes protocolos; e tamén é posible usar software específico coma OpenVPN, que ofrece unha configuración sinxela.

Son opcións:

PPTP (Point to Point Tunneling Protocol)
Creado por Microsoft nos anos noventa. Non é aconsellado pola vulnerabilidade coñecida no seu algoritmo de autenticación MSCHAP
L2TP/IPsec (Layer 2 Tunneling Protocol / Internet Protocol Security)
L2TP é o protocolo para crear túneles entre dous extremos. Non reviste especial seguridade polo que adoita usarse combinado con IPsec, o protocolo encargado do cifrado do caudal de datos que atravesa o túnel L2TP. IPsec é un protocolo moi seguro e non é complicado de configurar.
SSTP (Secure Socket Tunneling Protocol)
Creado por Microsoft, internamente utiliza o mesmo cifrado SSL/TLS que se usa en HTTPS; o problema é que só está disponible en contornas Windows.
IKEv2 (Internet Key Exchange version 2)
Protocolo baseado en IPsec creado por Microsoft e Cisco. Realiízase un dobre intercambio de chaves (autenticación de dous pasos), polo que é necesario que o cliente teña un segundo dispositivo onde recibir un código (normalmente un móvil). É moi seguro, pero complexo na súa configuración; coma diferenza é o único protocolo capaz de manter unha sesión VPN ó cambiar de rede (por exemplo cando un móvil salta de rede WiFi a rede 4G), polo que é axeitado para smartphones.
SSH (Secure SHell)
Non é propiamente un protocolo VPN; é un protocolo para iniciar sesións remotas de consola de xeito seguro (utilizando o cifrado SSL). Incorpora características adicionais entre as que se atopa a posibilidade de crear túneles cifrados con redirección de portos o que posibilita o seu uso para navegación segura. As veces refírese a SSH coma VPN a nivel de aplicación, en contraposición ó resto de protocolos, que se definen como VPN a nivel de rede.
DirectAccess
Creado por Microsoft para unir ordenadores remotos a dominios Active Directory facendo uso de protocolos de cifrado. Se diferencia de las demás VPN en que el cliente no necesita iniciar (o detener) la cone‑ xión manualmente, como ocurre con todos los demás tipos, sino que el equipo cliente crea la conexión al arrancar, en cuanto está disponible el acceso a internet. Es, por tanto, una solución solo disponible en Windows Server (como servidor) y Windows 10 (como equipo cliente, siempre y cuando esté unido a un dominio). Es la mejor opción en estos entornos (y solo en estos), aunque para su funcionamiento requiere IPv6 en la red local.
OpenVPN
Software de código abierto moi utilizado especialmente en arquitecturas Linux onde multitud de soluciións baseanse internamente en él. É facil de configurar e seguro (SSL/TLS), posibilitando atravesar firewall. Existe versión comercial denominada OpenVPN Access Server que engade unha interfaz web de administración e clientes simplificados para diversos sistemas operativos e versión aberta para servidor e cliente para arquitecturas Linux e Windows.

Clientes

A conexión dende un cliente a un servicio VPN depende do sistema operativo que se esté utilizando.

Android

Acccemos a:

Ajustes -> Wi-Fi y redes -> Más.

Desde ahí, no apartado VPN, seleccionamos a opción Añadir VPN para lanzar o asistente de creación de conexión VPN, onde introduciremos:

  • O nome da conexión
  • O tipo de VPN
  • o enderezo do servidor
  • as credencias do usuario

Unha vez introducidos, quedarán gardados e a conexión VPN aparecerá na lista de conexións.

A conexión e desconexión realizarase a través do botón de activar VPN.

NOTA. Os pasos exactos dependerán da versión de Android concreta mais serán semellantes

W10

Dende unha conta con privilexios de administrador accedemos a:

Inicio -> Configuración -> Red e Internet -> VPN

Pulsamos en Agregar una conexión VPN e no asistente introducimos:

  • O nome da conexión
  • O nome ou enderezo do servidor

Para conectar mediante a VPN faremos clic na icona que se crea (tamén accesible desde o menú desplegable da opción Red da área de notificación) e en el menú que aparece facer clic no botón Conectar introducindo as credenciais de usuario.

Ubuntu

Desde un terminal deben instalarse os paquetes network-manager-vpnc e network-manager-vpnc-gnome:

$sudo apt-get update -y
$sudo apt-get install network-manager-vpnc -y
$sudo apt-get install network-manager-vpnc-gnome -y

Unha vez instalados, faremos clic na icona Configuración (debuxada cunha chave inglesa e desparafusador) do menú do área de notificación da parte superior dereita.

Na fiestra de configuración acceder á sección Red e desde ahí pulsar no botón co símbolo + do apartado VPN e no asistente;

  • seleccionar o tipo de VPN
  • Na lapela Identidad introducir o nome da conexión, a pasarela e os credenciais de acceso.

Cando pulsemos o botón Añadir quedarán os datos almacenados.

Para utilizar a VPN debese facer clic sobre o botón deslizar que hai na fiestra de configuración ou ben na opción Conectar que hai dentro da sección VPN que se atopa na área de notificación.

Tarefas

Ampliación

Bibliografía

Referencias

  • Teoría do CIFP de aprendizaxes virtuais e dixitalizados
  • Banco de recursos de FP da Xunta de Galicia. Autor: Manuel González Regal. Creative Commons BY-NC-SA
  • Táboas de enrutamento

Créditos