diff options
Diffstat (limited to 'documentation/content/es/articles/ipsec-must/_index.adoc')
-rw-r--r-- | documentation/content/es/articles/ipsec-must/_index.adoc | 50 |
1 files changed, 26 insertions, 24 deletions
diff --git a/documentation/content/es/articles/ipsec-must/_index.adoc b/documentation/content/es/articles/ipsec-must/_index.adoc index e584b3d893..94bc14311f 100644 --- a/documentation/content/es/articles/ipsec-must/_index.adoc +++ b/documentation/content/es/articles/ipsec-must/_index.adoc @@ -1,8 +1,11 @@ --- -title: Verificación independiente de la funcionalidad de IPsec en FreeBSD authors: - - author: David Honig + - + author: 'David Honig' email: honig@sprynet.com +description: 'Verificación independiente de la funcionalidad de IPsec en FreeBSD' +tags: ["IPsec", "verification", "FreeBSD"] +title: 'Verificación independiente de la funcionalidad de IPsec en FreeBSD' trademarks: ["freebsd", "opengroup", "general"] --- @@ -40,62 +43,61 @@ endif::[] [.abstract-title] Resumen -Instaló IPsec y parece estar funcionando. ¿Cómo lo sabe? Describo un método para verificar de forma experimental que IPsec está funcionando. +Has intalado IPsec y parece estar funcionando. ¿Cómo lo sabes? Describo un método para verificar de forma experimental que IPsec está funcionando. ''' toc::[] [[problem]] -== El problema +== El Problema -Primero, asumamos que ha <<ipsec-install>>. ¿Cómo sabe que está <<caveat>>? Claro, su conexión no funcionará si está mal configurada, y funcionará cuando finalmente lo haga bien. man:netstat[1] la listará. ¿Pero puede confirmarlo de forma independiente? +Primero, asumamos que has <<ipsec-install>>. ¿Cómo sabes que está funcionando? (<<caveat>>) Claro, tu conexión no funcionará si está mal configurado y funcionará cuando finalmente lo hagas bien. man:netstat[1] lo mostrará. ¿Pero puedes confirmarlo de forma independiente? [[solution]] -== La solución +== La Solución Primero, alguna información teórica relevante sobre criptografía: . Los datos cifrados se distribuyen uniformemente, es decir, tienen una entropía máxima por símbolo; . Los datos sin procesar y sin comprimir suelen ser redundantes, es decir, tienen una entropía submáxima. -Suponga que usted pudiera medir la entropía de los datos que van hacia -y desde- su interfaz de red. Entonces podría ver la diferencia entre los datos no cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos en "modo cifrado" no lo estuvieran---ya que el encabezado IP más externo debe estarlo para que el paquete sea enrutable. +Imagina que pudieras medir la entropía de los datos que van hacia -y desde- tu interfaz de red. Entonces podrías ver la diferencia entre los datos no cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos en "modo cifrado" no lo estuvieran---ya que el encabezado IP más externo debe estarlo para que el paquete sea enrutable. [[MUST]] === MUST -El "Universal Statistical Test for Random Bit Generators" (https://web.archive.org/web/20011115002319/http://www.geocities.com/SiliconValley/Code/4704/universal.pdf[MUST]) de Ueli Maurer mide rápidamente la entropía de una muestra. Utiliza un algoritmo de compresión. <<code>> para una variante que mide partes sucesivas (~cuarto de megabyte) de un archivo +Ueli Maurer's "Universal Statistical Test for Random Bit Generators"(https://web.archive.org/web/20011115002319/http://www.geocities.com/SiliconValley/Code/4704/universal.pdf[MUST]) calcula rápidamente la entropía de una muestra. Utiliza un algoritmo de tipo compresión. <<code>> para una variante que mide trozos sucesivos (~ un cuarto de megabyte) de un fichero. [[tcpdump]] === Tcpdump -También necesitamos una forma de capturar los datos de red sin procesar. Un programa llamado man:tcpdump[1] le permite hacerlo, si tiene habilitada la interfaz de _Berkeley Packet Filter_ en el <<kernel>>. +También necesitamos una forma de capturar datos de red en crudo. Un programa llamado man:tcpdump[1] te permite hacer esto si tienes configurado el interfaz _Berkeley Packet Filger_ en tu <<kernel>>. El comando: -[source,shell] +[source, shell] .... tcpdump -c 4000 -s 10000 -w dumpfile.bin .... -capturará 4000 paquetes sin procesar en el fichero _dumpfile.bin_. En este ejemplo se capturarán hasta 10.000 bytes por paquete. +capturará 4000 paquetes en crudo y los guardará en _dumpfile.bin_. Se capturarán hasta 10,000 bytes por cada paquete en este ejemplo. [[experiment]] -== El experimento +== El Experimento Aquí está el experimento: [.procedure] ==== -. Abra una ventana a un host IPsec y otra ventana a un host inseguro. -. Ahora empiece a <<tcpdump>>. -. En la ventana "segura", ejecute el comando UNIX(R) man:yes[1], que transmitirá el carácter `y`. Después de un rato, detenga el comando. Cambie a la ventana insegura, y repita. Espere un poco, detenga el comando. -. Ahora ejecute <<code>> en los paquetes capturados. Debería ver algo como lo siguiente. Lo importante a tener en cuenta es que la conexión segura tiene un 93% (6,7) del valor esperado (7,18), y la conexión "normal" tiene un 29% (2,1) del valor esperado. +. Abre una ventana a un host IPsec y otra ventana a un host inseguro. +. Ahora arranca <<tcpdump>>. +. En la ventana "segura", arranca el comando UNIX(R) man:yes[1], que mostrará continuamente el carácter `y`. Después de un rato, páralo. Cambia a la ventana insegura y ejecútalo de nuevo. Después de un rato, páralo. +. Ahora ejecuta <<code>> en los paquetes capturados. Deberías ver algo como lo que se muestra a continuación. El punto importante en que fijarse es que la conexión segura tiene un 93% (6.7) de los valores esperados (7.18) y que la conexión "normal" tiene un 29% (2.1) de los valores esperados. + -[source,shell] +[source, shell] .... % tcpdump -c 4000 -s 10000 -w ipsecdemo.bin - % uliscan ipsecdemo.bin Uliscan 21 Dec 98 L=8 256 258560 @@ -114,7 +116,7 @@ Expected value for L=8 is 7.1836656 [[caveat]] == Advertencia -Este experimento muestra que IPsec _parece_ estar distribuyendo los datos de la carga útil __uniformemente__, como debe hacerlo el cifrado. Sin embargo, el experimento aquí descrito _puede no_ detectar muchas de las posibles fallas del sistema (para las cuales no tengo evidencias). Esto incluye la generación o intercambio de claves deficientes, datos o claves visibles para otros, uso de algoritmos débiles, subversión del kernel, etc. Estudie el código; conozca el código. +Este experimento muestra que IPsec _parece_ estar distribuyendo los datos de la carga útil _uniformemente_, como debe hacerlo el cifrado. Sin embargo, el experimento aquí descrito _no puede_ detectar muchas de las posibles fallos del sistema (para los cuales no tengo evidencias). Esto incluye la generación o intercambio de claves deficientes, datos o claves visibles para otros, uso de algoritmos débiles, subversión del kernel, etc. Estudia el código; conoce el código. [[IPsec]] == IPsec---Definición @@ -124,14 +126,14 @@ Extensiones de seguridad del Protocolo de Internet para IPv4; requerido para IPv [[ipsec-install]] == Instalando IPsec -La mayoría de las versiones modernas de FreeBSD soportan IPsec en su código base. Por lo tanto, deberá incluir la opción `IPSEC` en la configuración de su kernel y, después de recompilar y reinstalar el kernel, configure las conexiones de IPsec usando el comando man:setkey[8]. +La mayoría de las versiones modernas de FreeBSD tienen soporte para IPsec en su código fuente. Así que tendrás que incluir la opción `IPSEC` en la configuración del kernel y después de recompilar y reinstalar, configurar conexiones IPsec utilizando el comando man:setkey[8]. -En el extref:{handbook}security[Manual de FreeBSD, ipsec] se proporciona una guía completa sobre cómo ejecutar IPsec en FreeBSD. +En el extref:{handbook}[FreeBSD Handbook, ipsec] se proporciona una guía completa sobre cómo ejecutar IPsec en FreeBSD. [[kernel]] == src/sys/i386/conf/KERNELNAME -Esto debe estar presente en el archivo de configuración del kernel para capturar datos de red con man:tcpdump[1]. Asegúrese de ejecutar man:config[8] después de agregar esto, recompilar y reinstalar. +Esto necesita estar en el fichero de configuración del kernel para poder capturar datos de red con man:tcpdump[1]. Asegúrate de ejecutar man:config[8] después de añadir esto y recompilar y reinstalar. [.programlisting] .... @@ -141,7 +143,7 @@ device bpf [[code]] == Maurer's Universal Statistical Test (tamaño de bloque=8 bits) -Puede encontrar el mismo código fuente en https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt[este enlace]. +Puedes encontrar el mismo código en https://web.archive.org/web/20031204230654/http://www.geocities.com:80/SiliconValley/Code/4704/uliscanc.txt[este enlace]. [.programlisting] .... @@ -152,7 +154,7 @@ Puede encontrar el mismo código fuente en https://web.archive.org/web/200312042 1 Dec 98 21 Dec 98 uliscan.c derived from ueli8.c - This version has // comments removed for Sun cc + En esta versión se han quitado // comentarios por el cc de Sun This implements Ueli M Maurer's "Universal Statistical Test for Random Bit Generators" using L=8 |