<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>El hilo del laberinto (Publicaciones sobre Configuración)</title><link>https://blog.jcea.es/</link><description></description><atom:link href="https://blog.jcea.es/categories/configuracion.xml" rel="self" type="application/rss+xml"></atom:link><language>es</language><lastBuildDate>Tue, 24 Mar 2026 14:02:11 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Thunderbird "habla demasiado" (respecto a tu configuración)</title><link>https://blog.jcea.es/posts/20241113-version_thunderbird.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;El otro día estaba mirando las &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Protocolo_para_transferencia_simple_de_correo#Formato_del_mensaje"&gt;cabeceras SMTP&lt;/a&gt; de mis correos
electrónicos y me he llevado una sorpresa:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
            Thunderbird/102.15.1
&lt;/pre&gt;
&lt;p&gt;Mi cliente de correo, &lt;a class="reference external" href="https://www.mozilla.org/thunderbird/"&gt;Thunderbird&lt;/a&gt;, filtra la versión que estoy
utilizando y que estoy usando &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Linux"&gt;Linux&lt;/a&gt; sobre &lt;a class="reference external" href="https://es.wikipedia.org/wiki/X86-64"&gt;x86-64&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Y esto no lo hace solo en los correos electrónicos salientes sino
también en las conexiones &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Protocolo_de_transferencia_de_hipertexto"&gt;HTTP&lt;/a&gt; que se generen al visualizar
mensajes en formato &lt;a class="reference external" href="https://es.wikipedia.org/wiki/HTML"&gt;HTML&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Esto me parece algo innecesario y un peligro de privacidad y de
seguridad.&lt;/p&gt;
&lt;p&gt;Afortunadamente podemos irnos al editor de configuración de
&lt;a class="reference external" href="https://www.mozilla.org/thunderbird/"&gt;Thunderbird&lt;/a&gt; y editar (o crear, si no existe) la preferencia
&lt;span class="kbd"&gt;general.useragent.override&lt;/span&gt;. Ahí ponemos el texto que nos de
la gana.&lt;/p&gt;
&lt;p&gt;En versiones modernas de &lt;a class="reference external" href="https://www.mozilla.org/thunderbird/"&gt;Thunderbird&lt;/a&gt; podemos indicarle
directamente al programa que sólo envie &lt;span class="kbd"&gt;Thunderbird&lt;/span&gt; como
identificación, sin referencias de plataforma o versiones. Para
ello hay que entrar en el editor de configuración y poner (o
crear) la preferencia &lt;span class="kbd"&gt;mailnews.headers.useMinimalUserAgent&lt;/span&gt;
a &lt;strong&gt;True&lt;/strong&gt;. Si no queremos enviar una identificación de usuario en
absoluto, podemos poner a &lt;strong&gt;False&lt;/strong&gt; la preferencia
&lt;span class="kbd"&gt;mailnews.headers.sendUserAgent&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Podeis ver los detalles por vosotros mismos en el &lt;a class="reference external" href="https://hg-edge.mozilla.org/comm-central/rev/627eda4cbefc"&gt;código fuente&lt;/a&gt; de
&lt;a class="reference external" href="https://www.mozilla.org/thunderbird/"&gt;Thunderbird&lt;/a&gt;, en su servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Mercurial"&gt;Mercurial&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;</description><category>Configuración</category><category>Privacidad</category><category>Thunderbird</category><guid>https://blog.jcea.es/posts/20241113-version_thunderbird.html</guid><pubDate>Wed, 13 Nov 2024 22:07:00 GMT</pubDate></item><item><title>Elegir la identidad SSH que presenta un cliente al servidor</title><link>https://blog.jcea.es/posts/20231203-identidad_ssh.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Cuando un cliente se conecta a un servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt;, normalmente le
propondrá todas las identidades &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; presentes en el servicio &lt;a class="reference external" href="https://es.wikipedia.org/wiki/SSH-Agent"&gt;SSH
Agent&lt;/a&gt;. Esto no está necesariamente mal, pero tiene algunos
problemas:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;El servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; puede tener un número de reintentos limitado y
nosotros podemos tener muchas identidades &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; que ofrecer.&lt;/li&gt;
&lt;li&gt;A veces queremos tener nuestras personalidades online separadas
y es preferible ofrecer al servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; una identidad concreta
controlada en vez de informarle de todas nuestras identidades
disponibles para que elija la que le sirva. Un servidor
malicioso podría vincular personalidades &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; e identificarnos
como la misma persona física en diferentes entornos que
preferimos mantener separados.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Los pasos a seguir con &lt;a class="reference external" href="https://es.wikipedia.org/wiki/OpenSSH"&gt;OpenSSH&lt;/a&gt; son sencillos:&lt;/p&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;&lt;p class="first"&gt;Creamos una nueva identidad &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; para un servicio concreto.
Para eso se usa el comando &lt;span class="kbd"&gt;ssh-keygen&lt;/span&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;Configuramos en &lt;span class="kbd"&gt;~/.ssh/config&lt;/span&gt; un perfil para ese
servicio con estos parámetros:&lt;/p&gt;
&lt;pre class="literal-block"&gt;
# "IdentitiesOnly yes" indica que solo debemos ofrecer
# esa personalidad, aunque el SSH-Agent tenga más.
IdentitiesOnly yes
IdentityFile PATH_A_LA_IDENTIDAD_SSH
&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Cuando nos conectemos al servidor usando ese perfil, el cliente
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; solo ofrecerá esa identidad.&lt;/p&gt;
&lt;p&gt;Podemos verificar que todo está funcionando bien conectando a ese
servicio con &lt;span class="kbd"&gt;ssh -v&lt;/span&gt; y viendo qué identidades estamos
ofreciendo al servidor.&lt;/p&gt;
&lt;div class="admonition warning"&gt;
&lt;p class="first admonition-title"&gt;Advertencia&lt;/p&gt;
&lt;p&gt;La configuración propuesta ofrece una única identidad &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; a un
servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; concreto, pero ofrecerá esa personalidad &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; a
otros servidores &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt;. Si queremos aislamiento total, debemos
tener configuraciones similares para todos nuestros servidores
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; (se puede utilizar el &lt;strong&gt;comodín&lt;/strong&gt; para definir una
configuración por defecto) o bien añadir esa identidad &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt;
solo a un servicio &lt;a class="reference external" href="https://es.wikipedia.org/wiki/SSH-Agent"&gt;SSH Agent&lt;/a&gt; concreto y separado.&lt;/p&gt;
&lt;p class="last"&gt;Recuerda que puedes indicar qué servicio &lt;a class="reference external" href="https://es.wikipedia.org/wiki/SSH-Agent"&gt;SSH Agent&lt;/a&gt; debe
utilizar tu cliente &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Shell"&gt;SSH&lt;/a&gt; utilizando la variable de entorno
&lt;span class="kbd"&gt;SSH_AUTH_SOCK&lt;/span&gt;.&lt;/p&gt;
&lt;/div&gt;&lt;/div&gt;</description><category>Configuración</category><category>OpenSSH</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20231203-identidad_ssh.html</guid><pubDate>Sun, 03 Dec 2023 14:12:00 GMT</pubDate></item><item><title>Cómo cambiar el tamaño del espacio de intercambio (SWAP) en SmartOS</title><link>https://blog.jcea.es/posts/20230112-resize_swap_SmartOS.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;div class="admonition note"&gt;
&lt;p class="first admonition-title"&gt;Nota&lt;/p&gt;
&lt;p class="last"&gt;En este documento voy a usar los términos &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;SWAP&lt;/a&gt; y &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;espacio de
intercambio&lt;/a&gt; de forma indistinta.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;Cuando se realiza una instalación nueva, &lt;a class="reference external" href="https://es.wikipedia.org/wiki/SmartOS"&gt;SmartOS&lt;/a&gt; crea un &lt;a class="reference external" href="https://es.wikipedia.org/wiki/ZFS_(sistema_de_archivos)#Sistemas_de_ficheros_ligeros_(dataset)"&gt;dataset&lt;/a&gt;
de &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;SWAP&lt;/a&gt; del mismo tamaño que la memoria &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Memoria_de_acceso_aleatorio"&gt;RAM&lt;/a&gt; del ordenador. Esto
puede ser apropiado para máquinas grandes, pero cuando vamos
escasos de memoria un &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;SWAP&lt;/a&gt; tan pequeño es problemático porque
bajo &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Illumos"&gt;Illumos&lt;/a&gt; (&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Solaris_(sistema_operativo)"&gt;Solaris&lt;/a&gt;) no existe el concepto de &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Memory_overcommitment"&gt;overcommit&lt;/a&gt; de
memoria como en &lt;a class="reference external" href="https://es.wikipedia.org/wiki/GNU/Linux"&gt;Linux&lt;/a&gt;. Es decir, un &lt;a class="reference external" href="https://es.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3%A1tica)"&gt;kernel&lt;/a&gt; &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Illumos"&gt;Illumos&lt;/a&gt; limita el
espacio de direccionamiento disponible para los programas a la
suma de la memoria &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Memoria_de_acceso_aleatorio"&gt;RAM&lt;/a&gt; y el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;espacio de intercambio&lt;/a&gt; (&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;SWAP&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Por tanto, en &lt;a class="reference external" href="https://es.wikipedia.org/wiki/SmartOS"&gt;SmartOS&lt;/a&gt; es común ampliar el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;espacio de
intercambio&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Una de mis máquinas tiene solo 8GB de &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Memoria_de_acceso_aleatorio"&gt;RAM&lt;/a&gt; y veo lo siguiente:&lt;/p&gt;
&lt;pre class="code console"&gt;&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;[root@X ~]#&lt;/span&gt; swap -s
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-2"&gt;&lt;/a&gt;&lt;span class="go"&gt;total: 3928724k bytes allocated + 221992k reserved = 4150716k used, 8223728k available&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-3"&gt;&lt;/a&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-4"&gt;&lt;/a&gt;&lt;span class="gp"&gt;[root@X ~]#&lt;/span&gt; zfs get all zones/swap
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-5"&gt;&lt;/a&gt;&lt;span class="go"&gt;NAME        PROPERTY              VALUE                    SOURCE&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-6"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  type                  volume                   -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-7"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  creation              vie. dic.  2  8:38 2022  -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-8"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  used                  8,22G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-9"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  available             614G                     -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-10"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  referenced            3,71G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-11"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  compressratio         2.18x                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-12"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  reservation           none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-13"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  volsize               7,97G                    local&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-14"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  volblocksize          8K                       default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-15"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  checksum              on                       default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-16"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  compression           lz4                      inherited from zones&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-17"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  readonly              off                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-18"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  createtxg             92                       -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-19"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  copies                1                        default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-20"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  refreservation        8,22G                    local&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-21"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  guid                  1242262060458694733      -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-22"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  primarycache          all                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-23"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  secondarycache        all                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-24"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  usedbysnapshots       0                        -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-25"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  usedbydataset         3,71G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-26"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  usedbychildren        0                        -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-27"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  usedbyrefreservation  4,52G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-28"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  logbias               latency                  default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-29"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  dedup                 off                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-30"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  mlslabel              none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-31"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  sync                  standard                 default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-32"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  refcompressratio      2.18x                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-33"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  written               3,71G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-34"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  logicalused           8,01G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-35"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  logicalreferenced     8,01G                    -&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-36"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  snapshot_limit        none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-37"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  snapshot_count        none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-38"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  redundant_metadata    all                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-39"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  encryption            off                      default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-40"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  keylocation           none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-41"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  keyformat             none                     default&lt;/span&gt;
&lt;a name="rest_code_b19195b0c1ab479fb078b5dfc8cf9708-42"&gt;&lt;/a&gt;&lt;span class="go"&gt;zones/swap  pbkdf2iters           0                        default&lt;/span&gt;
&lt;/pre&gt;&lt;p&gt;Por necesidades de servicio, requiero ampliar bastante el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Espacio_de_intercambio"&gt;espacio
de intercambio&lt;/a&gt; que, como he dicho, limita el espacio de
direccionamiento total disponible para todos los programas.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20230112-resize_swap_SmartOS.html"&gt;Leer más…&lt;/a&gt; (quedan 4 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>Configuración</category><category>Illumos</category><category>Sistemas Operativos</category><category>SmartOS</category><category>Solaris</category><category>ZFS</category><guid>https://blog.jcea.es/posts/20230112-resize_swap_SmartOS.html</guid><pubDate>Wed, 11 Jan 2023 23:54:00 GMT</pubDate></item><item><title>Creación e instalación de un perfil OpenVPN en iOS</title><link>https://blog.jcea.es/posts/20220929-openvpn_en_ios.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Hace tiempo la cosa era más complicada, pero hoy en día crear y
activar un perfil &lt;a class="reference external" href="https://es.wikipedia.org/wiki/OpenVPN"&gt;OpenVPN&lt;/a&gt; para &lt;a class="reference external" href="https://es.wikipedia.org/wiki/IOS"&gt;iOS&lt;/a&gt; es bastante trivial.&lt;/p&gt;
&lt;div class="section" id="creacion-de-un-fichero-de-configuracion-openvpn"&gt;
&lt;h2&gt;Creación de un fichero de configuración &lt;a class="reference external" href="https://es.wikipedia.org/wiki/OpenVPN"&gt;OpenVPN&lt;/a&gt;&lt;/h2&gt;
&lt;ol class="arabic"&gt;
&lt;li&gt;&lt;p class="first"&gt;Creamos un par de claves públicas y privadas para el usuario.
Esas claves deben ir firmadas por la entidad de certificación
asociada al servidor &lt;a class="reference external" href="https://es.wikipedia.org/wiki/OpenVPN"&gt;OpenVPN&lt;/a&gt; y tienen una caducidad
determinada (por defecto, un año).&lt;/p&gt;
&lt;p&gt;Si usamos &lt;span class="kbd"&gt;easy-rsa&lt;/span&gt;, los comandos a ejecutar son:&lt;/p&gt;
&lt;pre class="code console"&gt;&lt;a name="rest_code_22e018ae431b42a7b561fee0044de1fb-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;jcea@OpenVPN_Server:~$&lt;/span&gt; &lt;span class="nb"&gt;cd&lt;/span&gt; /etc/openvpn/easy-rsa/2.2.2/
&lt;a name="rest_code_22e018ae431b42a7b561fee0044de1fb-2"&gt;&lt;/a&gt;&lt;span class="gp"&gt;jcea@OpenVPN_Server:/etc/openvpn/easy-rsa/2.2.2$&lt;/span&gt; &lt;span class="nb"&gt;source&lt;/span&gt; vars
&lt;a name="rest_code_22e018ae431b42a7b561fee0044de1fb-3"&gt;&lt;/a&gt;&lt;span class="go"&gt;NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/2.2.2/keys&lt;/span&gt;
&lt;a name="rest_code_22e018ae431b42a7b561fee0044de1fb-4"&gt;&lt;/a&gt;&lt;span class="gp"&gt;jcea@OpenVPN_Server:/etc/openvpn/easy-rsa/2.2.2$ echo $&lt;/span&gt;KEY_EXPIRE
&lt;a name="rest_code_22e018ae431b42a7b561fee0044de1fb-5"&gt;&lt;/a&gt;&lt;span class="go"&gt;365&lt;/span&gt;
&lt;/pre&gt;&lt;p&gt;Lo anterior inicializa &lt;span class="kbd"&gt;easy-rsa&lt;/span&gt;. Podemos ver que la
expiración por defecto es de 365 días. Podemos modificarla si
así lo deseamos.&lt;/p&gt;
&lt;p&gt;Lo normal ahora sería generar el certificado &lt;a class="reference external" href="https://es.wikipedia.org/wiki/OpenVPN"&gt;OpenVPN&lt;/a&gt; para el
usuario, sin más. Sin embargo la versión 2.2.2 de
&lt;span class="kbd"&gt;easy-rsa&lt;/span&gt; no permite crear una clave nueva para un
usuario ya existente, &lt;strong&gt;AUNQUE LA CLAVE ANTIGUA HAYA
CADUCADO&lt;/strong&gt;. En mi opinión, esto es un bug.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20220929-openvpn_en_ios.html"&gt;Leer más…&lt;/a&gt; (quedan 5 minutos de lectura)&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;</description><category>Configuración</category><category>iOS</category><category>OpenVPN</category><category>Redes</category><category>X.509</category><guid>https://blog.jcea.es/posts/20220929-openvpn_en_ios.html</guid><pubDate>Wed, 28 Sep 2022 22:31:00 GMT</pubDate></item><item><title>DNSSEC: Migración de "jcea.es" a ECDSAP256SHA256</title><link>https://blog.jcea.es/posts/20220620-dnssec_ecdsap256sha256.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;La experiencia de migrar algunos de mis subdominios &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; de uso
privado a &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt; en 2020, tal y como describo en
&lt;a class="reference external" href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html"&gt;DNSSEC: Migración a ECDSAP256SHA256 en algunos de mis dominios&lt;/a&gt;, ha sido muy
indolora y positiva. Sin embargo a la hora de migrar el dominio
DNS &lt;span class="kbd"&gt;jcea.es&lt;/span&gt; entero, el tema de la compatibilidad
sigue sobre la mesa.&lt;/p&gt;
&lt;p&gt;Hay novedades recientes documentadas en
&lt;a class="reference external" href="https://blog.jcea.es/posts/20220611-dnssec_docs.html"&gt;DNSSEC: enlaces interesantes (20220611)&lt;/a&gt;, como que la mitad de los dominios
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; protegidos por &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; en Holanda usan ya
&lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;, o que el registrador francés &lt;span class="kbd"&gt;.fr&lt;/span&gt;
acaba de migrar a &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Parece que hay consenso en que usar &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt; en
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; es el estado del arte actual y que debería funcionar en
cualquier cosa que tenga menos de diez años (si tiene más de diez
años, o no soporta &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; en absoluto o, sencillamente, dejará de
validar &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt;, como si el dominio no estuviese firmado).&lt;/p&gt;
&lt;p&gt;Para migrar &lt;span class="kbd"&gt;jcea.es&lt;/span&gt; a &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt; voy a seguir
básicamente los pasos descritos en
&lt;a class="reference external" href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html"&gt;DNSSEC: Migración a ECDSAP256SHA256 en algunos de mis dominios&lt;/a&gt;. Ls diferencia
fundamental es que quiero editar los registros &lt;span class="kbd"&gt;DS&lt;/span&gt; solo una
vez, porque quiero interactuar con mi registrador &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; lo mínimo
posible.&lt;/p&gt;
&lt;p&gt;Es decir, en &lt;a class="reference external" href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html"&gt;DNSSEC: Migración a ECDSAP256SHA256 en algunos de mis dominios&lt;/a&gt; añado
las claves &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;KSK&lt;/a&gt; y &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;ZSK&lt;/a&gt; nuevas, manteniendo las claves viejas y
añadiendo registros &lt;span class="kbd"&gt;DS&lt;/span&gt; nuevos de forma que se admitan las
claves &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;KSK&lt;/a&gt; viejas y nuevas. Una vez que se propagan los cambios,
puedo eliminar los registros &lt;span class="kbd"&gt;DS&lt;/span&gt;, y las claves &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;KSK&lt;/a&gt; y &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;ZSK&lt;/a&gt;
antiguos.&lt;/p&gt;
&lt;p&gt;Ahora solo quiero hacer un cambio en los registro &lt;span class="kbd"&gt;DS&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Los pasos son:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20220620-dnssec_ecdsap256sha256.html"&gt;Leer más…&lt;/a&gt; (quedan 5 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>BIND</category><category>Configuración</category><category>DNSSEC</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20220620-dnssec_ecdsap256sha256.html</guid><pubDate>Mon, 20 Jun 2022 18:00:00 GMT</pubDate></item><item><title>DNSSEC: enlaces interesantes (20220611)</title><link>https://blog.jcea.es/posts/20220611-dnssec_docs.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Puesta al día de algunos enlaces interesantes sobre &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; para
quitármelos de mis marcadores del navegador web:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.dnssec-deployment.org/"&gt;DNSSEC Deployment&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://stats.dnssec-tools.org/"&gt;DNSSEC and DANE Deployment Statistics&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;En el momento de escribir este artículo, el despliegue de claves
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;KSK&lt;/a&gt; está igualado entre los &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmos&lt;/a&gt; &lt;span class="kbd"&gt;RSASHA256&lt;/span&gt; y
&lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.incibe-cert.es/sites/default/files/contenidos/guias/doc/incibe_guia_de_implantacion_y_buenas_practicas_de_dnssec.pdf"&gt;INCIBE: Guía de implantación y buenas prácticas de DNSSEC&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Lectura imprescindible. 103 páginas de nada.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://datatracker.ietf.org/doc/html/rfc6605"&gt;RFC 6605: Elliptic Curve Digital Signature Algorithm (DSA) for
DNSSEC&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.afnic.fr/en/observatory-and-resources/expert-papers/resolutions-for-2020-afnic-goes-elliptic/"&gt;Resolutions for 2020: Afnic goes elliptic&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.afnic.fr/en/observatory-and-resources/expert-papers/dnssec-change-of-algorithm-for-the-fr-zone/"&gt;DNSSEC: change of algorithm for the .fr zone&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;El dominio &lt;span class="kbd"&gt;.fr&lt;/span&gt; ha migrado a &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.icann.org/en/system/files/files/octo-033-04apr22-en.pdf"&gt;DNSSEC Algorithm Use in 2022&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;El 30.5% de los dominios protegidos con &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; utilizan
&lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://labs.ripe.net/author/moritz_muller/dnssec-the-long-and-bumpy-road-of-algorithm-deployment/"&gt;DNSSEC: The Long and Bumpy Road of Algorithm Deployment&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://blog.apnic.net/2022/03/24/dnssec-algorithms-for-tlds-and-everyone-else/"&gt;DNSSEC algorithms for TLDs (and everyone else)&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://dnsinstitute.com/research/2020/banks-dnssec-202010.html"&gt;DNSSEC Report 2020-10 for Top 100 Banking Institutions&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://ris.utwente.nl/ws/portalfiles/portal/237707051/Muller2020reality.pdf"&gt;The Reality of Algorithm Agility: Studying the DNSSEC Algorithm
Life-Cycle&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://datatracker.ietf.org/doc/html/rfc8080"&gt;RFC 8080: Edwards-Curve Digital Security Algorithm (EdDSA) for
DNSSEC&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://datatracker.ietf.org/doc/html/rfc7344"&gt;RFC 7344: Automating DNSSEC Delegation Trust Maintenance&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://datatracker.ietf.org/doc/html/rfc8078"&gt;RFC 8078: Managing DS Records from the Parent via CDS/CDNSKEY&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://blog.dnsimple.com/2019/02/cds_cdnskey/"&gt;Announcing CDS/CDNSKEY Support&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://blog.apnic.net/2021/11/02/dnssec-provisioning-automation-with-cds-cdnskey-in-the-real-world/"&gt;DNSSEC provisioning automation with CDS/CDNSKEY in the real
world&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.dns.cam.ac.uk/news/2020-01-15-rollover.html"&gt;DNSSEC algorithm rollover HOWTO&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://jpmens.net/2017/09/21/parents-children-cds-cdnskey-records-and-dnssec-cds/"&gt;Parents, children, CDS/CDNSKEY records, and dnssec-cds&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://ftp.arnes.si/packages/bind9/9.16.0/doc/arm/man.dnssec-cds.html"&gt;dnssec-cds&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p class="first"&gt;&lt;a class="reference external" href="https://www.swico.ch/media/filer_public/45/0b/450b457b-f592-4752-b036-d3e0332919d4/websecurityday_automating_dnssec.pdf"&gt;Automating the DNSSEC trust anchors using CDS&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;</description><category>BIND</category><category>Configuración</category><category>DNSSEC</category><category>Enlaces</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20220611-dnssec_docs.html</guid><pubDate>Sat, 11 Jun 2022 15:19:00 GMT</pubDate></item><item><title>DNSSEC: Migración a ECDSAP256SHA256 en algunos de mis dominios</title><link>https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Tras &lt;a class="reference external" href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html"&gt;"Key Rollover" y reconfiguración de mis DNSSEC para eliminar SHA-1&lt;/a&gt; me quedé con el resquemor de
migrar mis dominios &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; protegidos con &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; al &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmo&lt;/a&gt;
&lt;span class="kbd"&gt;RSASHA256&lt;/span&gt; y no al molón &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt;. Mi miedo en
aquel momento era la compatibilidad &lt;a class="footnote-reference" href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html#compatibilidad" id="id1"&gt;[1]&lt;/a&gt;.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="compatibilidad" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label"&gt;&lt;col&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;&lt;a class="fn-backref" href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html#id1"&gt;[1]&lt;/a&gt;&lt;/td&gt;&lt;td&gt;La zona raíz del &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; y el propio dominio regional &lt;span class="kbd"&gt;.es&lt;/span&gt;
utilizan &lt;span class="kbd"&gt;RSASHA256&lt;/span&gt; para las firmas &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Pero dentro de &lt;span class="kbd"&gt;jcea.es&lt;/span&gt; tengo algunos dominios de uso
interno y otro con un único "consumidor". Comprobando los
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System#DNS_resolvers"&gt;resolvers&lt;/a&gt; "consumidores" de esos dominios, confirmo que son
compatibles con el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmo&lt;/a&gt; &lt;span class="kbd"&gt;ECDSAP256SHA256&lt;/span&gt; en &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt;.
¡Podría migrarlos sin arriesgar la compatibilidad del dominio
&lt;span class="kbd"&gt;jcea.es&lt;/span&gt;!&lt;/p&gt;
&lt;p&gt;Los pasos son similares a los documentados en
&lt;a class="reference external" href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html"&gt;"Key Rollover" y reconfiguración de mis DNSSEC para eliminar SHA-1&lt;/a&gt;, así que no voy a repetir los
comandos precisos, me centraré en una descripción de alto nivel:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html"&gt;Leer más…&lt;/a&gt; (quedan 2 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>BIND</category><category>Configuración</category><category>DNSSEC</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20200806-dnssec_interno_ecdsap256sha256.html</guid><pubDate>Thu, 06 Aug 2020 14:19:00 GMT</pubDate></item><item><title>"Key Rollover" y reconfiguración de mis DNSSEC para eliminar SHA-1</title><link>https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Mi configuración actual &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; utiliza &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Hash_Algorithm#SHA-1"&gt;SHA-1&lt;/a&gt;, que es un
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmo&lt;/a&gt; de &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Funci%C3%B3n_hash"&gt;hash&lt;/a&gt; al que se le han ido encontrando
vulnerabilidades. Lo he mantenido porque un ataque a mi &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt;
parece poco rentable y porque lo consideraba el más compatible
&lt;a class="footnote-reference" href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html#desconocido" id="id1"&gt;[1]&lt;/a&gt;, pero la puntilla ha sido un nuevo ataque en enero
de 2020. La situación es ya insostenible y mantener &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Secure_Hash_Algorithm#SHA-1"&gt;SHA-1&lt;/a&gt; resulta
injustificable.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="desconocido" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label"&gt;&lt;col&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;[1]&lt;/td&gt;&lt;td&gt;&lt;em&gt;(&lt;a class="fn-backref" href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html#id1"&gt;1&lt;/a&gt;, &lt;a class="fn-backref" href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html#id2"&gt;2&lt;/a&gt;)&lt;/em&gt; &lt;p&gt;Si durante la verificación &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; un &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System#DNS_resolvers"&gt;resolver&lt;/a&gt; encuentra
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmos&lt;/a&gt; desconocidos, simplemente se comportará como si ese
registro &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; no existiese.&lt;/p&gt;
&lt;p class="last"&gt;En particular, si el registro de anclaje &lt;span class="kbd"&gt;DS&lt;/span&gt; que activa
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; en un subdominio no es reconocido, el &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System#DNS_resolvers"&gt;resolver&lt;/a&gt;
considerará que el registro no existe y, por tanto, el dominio
no tiene &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Incluyo algunos enlaces relevantes en la bibliografía del final.&lt;/p&gt;
&lt;p&gt;Las &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Criptograf%C3%ADa_asim%C3%A9trica"&gt;claves públicas&lt;/a&gt;  &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; actuales de mi dominio
&lt;span class="kbd"&gt;jcea.es&lt;/span&gt; son:&lt;/p&gt;
&lt;pre class="code console"&gt;&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-1"&gt;&lt;/a&gt;&lt;span class="gp"&gt;jcea@jcea:~$&lt;/span&gt; dig DNSKEY jcea.es
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-2"&gt;&lt;/a&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-3"&gt;&lt;/a&gt;&lt;span class="go"&gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.16.1-Ubuntu &amp;lt;&amp;lt;&amp;gt;&amp;gt; DNSKEY jcea.es&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-4"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; global options: +cmd&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-5"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; Got answer:&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-6"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 30207&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-7"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-8"&gt;&lt;/a&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-9"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; OPT PSEUDOSECTION:&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-10"&gt;&lt;/a&gt;&lt;span class="go"&gt;; EDNS: version: 0, flags:; udp: 65494&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-11"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; QUESTION SECTION:&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-12"&gt;&lt;/a&gt;&lt;span class="go"&gt;;jcea.es.                       IN      DNSKEY&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-13"&gt;&lt;/a&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-14"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; ANSWER SECTION:&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-15"&gt;&lt;/a&gt;&lt;span class="go"&gt;jcea.es.                86400   IN      DNSKEY  256 3 7 AwEAAdvqYNIq+kT+BeN+EZLr2oygteIWy1McKv9pt3PEXnSmoIUT+puP p6fVbqf5bbPQxp7FD6k2d5U8VpF7c1clcvlqhihgZK59jF1sWe2vM51k QW+ZeyAY5hcWF/DRij7jUa3QcWBJLnOSseV8VEOFfD53FSiIdGpDdVbf OH2Mwi1l&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-16"&gt;&lt;/a&gt;&lt;span class="go"&gt;jcea.es.                86400   IN      DNSKEY  257 3 7 AwEAAbBRJkUetAndznEpQm8SI1UFxwy+/ZWyj/CK0MT13Cjx0Yd/Kmah WfFC9G9cpJU3aPw/5w8TOC0Cpa9BluYfBboKu60i1OXlgDvQevevk8Av foqLm213nttALCFfeCTd5iBxJohNQUjreopxcV+FgCG1TKCZQqbDUh5L DaCMDeeHPZJKzIp+Jysif9etSwLnsShUem75X9wv0DLc6i6fdKDsz61j vitl420eDET98LCxRraIgPPjW4yYDoUIEeagtd5VSbgbDXLKVK0nAHlv G4p19cTtZz+Ct928l072FIZ4w3XIDYB7TkWZ5AU/+pXIHfglXwurLtUo gDuHWD2mcgs=&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-17"&gt;&lt;/a&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-18"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; Query time: 96 msec&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-19"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; SERVER: 127.0.0.53#53(127.0.0.53)&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-20"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; WHEN: jue jul 16 15:41:19 CEST 2020&lt;/span&gt;
&lt;a name="rest_code_75014db7688544039979bf826f0bc9d0-21"&gt;&lt;/a&gt;&lt;span class="go"&gt;;; MSG SIZE  rcvd: 460&lt;/span&gt;
&lt;/pre&gt;&lt;p&gt;Ambas claves, la &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;KSK&lt;/a&gt; y la &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions#Key_management"&gt;ZSK&lt;/a&gt;, utilizan el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Algoritmo"&gt;algoritmo&lt;/a&gt; 7 que,
según el &lt;a class="reference external" href="https://www.rfc-editor.org/rfc/rfc8624#section-3.1"&gt;RFC8624&lt;/a&gt;, es
&lt;span class="kbd"&gt;RSASHA1-NSEC3-SHA1&lt;/span&gt;. Está marcado como &lt;span class="kbd"&gt;NOT
RECOMMENDED&lt;/span&gt;. Toca cambiar.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html"&gt;Leer más…&lt;/a&gt; (quedan 5 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>BIND</category><category>Configuración</category><category>DNSSEC</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20200722-dnssec_rsasha256.html</guid><pubDate>Wed, 22 Jul 2020 12:11:00 GMT</pubDate></item><item><title>DNS TTL of 0 and "nsec3params"</title><link>https://blog.jcea.es/posts/20190704-nsec3params.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;As described in &lt;a class="reference external" href="https://blog.jcea.es/posts/20170624-dnssec_dns_dinamico_nsec3.html"&gt;Usar NSEC3 en vez de NSEC en un dominio DNSSEC con gestión de DNS dinámico&lt;/a&gt;, the
common &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;TTL&lt;/a&gt; (&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;&lt;em&gt;Time To Live (TTL)&lt;/em&gt;&lt;/a&gt;) used in &lt;strong&gt;NSEC3PARAMS&lt;/strong&gt; record is &lt;strong&gt;Zero&lt;/strong&gt;.
This record is used in &lt;a class="reference external" href="https://es.wikipedia.org/wiki/DNSSEC"&gt;DNSSEC&lt;/a&gt; to provide a secure "proof of non
existence" without leaking details about what names actually
exist. I never fully understood why a &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;TTL&lt;/a&gt; of zero is so common,
but knowing in this case is not really important.&lt;/p&gt;
&lt;p&gt;So good so far.&lt;/p&gt;
&lt;p&gt;The problem was listening to &lt;a class="reference external" href="http://www.ask-mrdns.com/2019/02/episode-57/"&gt;The Ask Mr. DNS Podcast: Episode 57&lt;/a&gt; &lt;a class="footnote-reference" href="https://blog.jcea.es/posts/20190704-nsec3params.html#mr-dns" id="id1"&gt;[1]&lt;/a&gt;.
There, Matt Larson and Cricket Liu talk long and deep about why
using a &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;TTL&lt;/a&gt; of &lt;strong&gt;Zero&lt;/strong&gt; for &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; records is (almost) always a bad
idea. I agree with the comments in the &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Podcast"&gt;podcast&lt;/a&gt;, but the comments
hit a nerve inside of me. I have always been unconfortable about
not knowing WHY a &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;TTL&lt;/a&gt; of &lt;strong&gt;Zero&lt;/strong&gt; is used with &lt;strong&gt;NSEC3PARAMS&lt;/strong&gt;
and now real &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; experts &lt;a class="footnote-reference" href="https://blog.jcea.es/posts/20190704-nsec3params.html#mr-dns" id="id2"&gt;[1]&lt;/a&gt; were saying that a &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Time_to_live#DNS_records"&gt;TTL&lt;/a&gt; of
&lt;strong&gt;Zero&lt;/strong&gt; is bad.&lt;/p&gt;
&lt;table class="docutils footnote" frame="void" id="mr-dns" rules="none"&gt;
&lt;colgroup&gt;&lt;col class="label"&gt;&lt;col&gt;&lt;/colgroup&gt;
&lt;tbody valign="top"&gt;
&lt;tr&gt;&lt;td class="label"&gt;[1]&lt;/td&gt;&lt;td&gt;&lt;em&gt;(&lt;a class="fn-backref" href="https://blog.jcea.es/posts/20190704-nsec3params.html#id1"&gt;1&lt;/a&gt;, &lt;a class="fn-backref" href="https://blog.jcea.es/posts/20190704-nsec3params.html#id2"&gt;2&lt;/a&gt;, &lt;a class="fn-backref" href="https://blog.jcea.es/posts/20190704-nsec3params.html#id3"&gt;3&lt;/a&gt;)&lt;/em&gt; &lt;p&gt;&lt;a class="reference external" href="http://www.ask-mrdns.com/"&gt;The Ask Mr. DNS Podcast&lt;/a&gt; is
(usually) a quite deep, insightful and (at times) funny
&lt;a class="reference external" href="https://en.wikipedia.org/wiki/Podcast"&gt;podcast&lt;/a&gt; about &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; conducted by world class &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; experts Matt
Larson and Cricket Liu.&lt;/p&gt;
&lt;p class="last"&gt;You can ask them &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Dns"&gt;DNS&lt;/a&gt; questions at &lt;a class="reference external" href="mailto:mrdns@ask-mrdns.com"&gt;mrdns@ask-mrdns.com&lt;/a&gt;. If you are lucky (they are
picky), they could reply them in the &lt;a class="reference external" href="https://en.wikipedia.org/wiki/Podcast"&gt;podcast&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Sorry, I needed to know. I sent a message to &lt;a class="reference external" href="http://www.ask-mrdns.com/"&gt;The Ask Mr. DNS
Podcast&lt;/a&gt; people &lt;a class="footnote-reference" href="https://blog.jcea.es/posts/20190704-nsec3params.html#mr-dns" id="id3"&gt;[1]&lt;/a&gt; asking for clarification and expert
insight:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20190704-nsec3params.html"&gt;Leer más…&lt;/a&gt; (quedan 4 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>BIND</category><category>Configuración</category><category>DNSSEC</category><category>English</category><category>Seguridad</category><guid>https://blog.jcea.es/posts/20190704-nsec3params.html</guid><pubDate>Wed, 03 Jul 2019 22:46:00 GMT</pubDate></item><item><title>¿Cómo desactivar la WIFI y/o el Bluetooth internos de una Raspberry PI 3?</title><link>https://blog.jcea.es/posts/20160920-rasppi_desactiva_wifi.html</link><dc:creator>Jesús Cea Avión</dc:creator><description>&lt;div&gt;&lt;p&gt;Cambiar mi red &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; al canal 13, como se describe en
&lt;a class="reference external" href="https://blog.jcea.es/posts/20160828-rasppi_13.html"&gt;Usar los canales WIFI 12 y 13 en una Raspberry PI&lt;/a&gt;, ayudó un poco, pero la calidad seguía
siendo insuficiente. En la práctica no se podía confiar en el
funcionamiento &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; de la &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Raspberry_Pi"&gt;Raspberry PI&lt;/a&gt; 3, lo que resulta la
mar de frustrante.&lt;/p&gt;
&lt;p&gt;Antes de la &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Raspberry_Pi"&gt;Raspberry PI&lt;/a&gt; 3 usaba modelos anteriores con un &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Universal_Serial_Bus"&gt;USB&lt;/a&gt;
&lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; externo. Funcionaba a la perfección. ¿Y si pruebo ese
dispositivo en la &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Raspberry_Pi"&gt;Raspberry PI&lt;/a&gt; 3?.&lt;/p&gt;
&lt;p&gt;Esa &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Raspberry_Pi"&gt;Raspberry PI&lt;/a&gt; 3 usa &lt;a class="reference external" href="https://osmc.tv/"&gt;OSMC&lt;/a&gt; como &lt;a class="reference external" href="https://es.wikipedia.org/wiki/HTPC"&gt;media center&lt;/a&gt;. Esta distribución solo
permite una tarjeta &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; así que tenemos que desactivar la
capacidad &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; interna para que utilice el &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Wifi"&gt;WIFI&lt;/a&gt; &lt;a class="reference external" href="https://es.wikipedia.org/wiki/Universal_Serial_Bus"&gt;USB&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blog.jcea.es/posts/20160920-rasppi_desactiva_wifi.html"&gt;Leer más…&lt;/a&gt; (quedan 1 minutos de lectura)&lt;/p&gt;&lt;/div&gt;</description><category>Bluetooth</category><category>Configuración</category><category>Raspberry PI</category><category>WIFI</category><guid>https://blog.jcea.es/posts/20160920-rasppi_desactiva_wifi.html</guid><pubDate>Tue, 20 Sep 2016 17:39:00 GMT</pubDate></item></channel></rss>