Tutorial: firma digital de correos electrónicos

26 сообщений, 1 страниц:  1 ↖ Вернуться к списку тем

счёт: +0

1. el_pichon,

¡Hola a todos!
Vengo por aquí a dar la lata con la típica cosa que sólo aprovecharán 4 gatos, pero los 4 gatos que la aprovechen lo harán muy bien. Como todo el mundo sabe, existen muchos mecanismos para proteger nuestra cuenta de correo frente a invitados no deseados: una contraseña fuerte, métodos de autenticación de doble factor, preguntas de seguridad, etc. También existen mecanismos a nivel de servidor que previenen la suplantación de identidad: registros SPF, DKIM y DMARC. Estos últimos sólo nos interesan a los que tenemos dominios y servidores, y logran que un atacante malintencionado que desee suplantar la identidad de un usuario legítimo acabe en el buzón de correo no deseado de la víctima. Y todo ello de forma transparente, sin que el usuario tenga que hacer nada. Pero ¿cómo podemos proteger nuestros correos de la manipulación? ¿Podemos hacer algo para que un intermediario no vea lo que contienen?
Ya nos conectamos usando conexiones https, indicando que los servidores imap y smtp van con conexión segura, pero a veces el intermediario malintencionado puede ser el propio servicio de correo.
Como anécdota, hace unos 15 años una vecina de Cuba vino a casa porque quería enviarle a su hermana unas fotos de sus niños. La cuenta de correo de la hermana era de un dominio cubano. Las fotos salieron bien de aquí en PDF, pero llegaron distorsionadas. No fue ninguna sorpresa, ya que nos avisaron de que el régimen tenía por costumbre intervenir y manipular correos a conveniencia. La solución del momento fue cifrar el PDF con contraseña, y transmitir la contraseña por una vía alternativa. Misteriosamente, al hacerlo así, llegaron bien. Si eso sucediera hoy, podríamos aplicar una solución mucho mejor: una firma digital.
Las firmas digitales en los correos no tienen nada que ver con las firmas que a veces vemos al pie de los mismos. Las primeras garantizan la autenticidad del origen y la integridad del contenido, y las segundas contienen lo que el remitente quiere que veamos. Existen dos métodos para firmar digitalmente un correo:

  • S/MIME: es compatible con casi todos los programas de correo existentes. Consiste en una clave privada generada en local, y un certificado expedido por una autoridad de certificación. Los certificados más comunes, que incluyen la identidad del remitente, cuestan dinero. Sin embargo, los que veremos aquí son gratis y cambian el método de generación un poco.
  • OpenPGP: se trata de un sistema descentralizado donde tú generas tus propias claves privada y pública. En vez de disponer de una autoridad de certificación que nos avale, son los propios destinatarios los que deciden cuánto confían en nuestra clave. La mayoría de programas de correo suelen necesitar algún tipo de complemento para trabajar con esta tecnología. Thunderbird, desde su versión 78, lleva ya el soporte integrado. Hablaremos de ello otro día si os interesa.

Hecha esta breve introducción, vamos a ver cómo obtener un certificado de firma de correo con Actalis y cómo instalarlo en Thunderbird. Actalis es una de las pocas entidades certificadoras que nos ofrece certificados gratuitos durante un año para todas las cuentas que queramos. Está reconocida por todos los navegadores y sistemas operativos. Yo llevo varios años con ellos, y gracias a la ayuda de un buen amigo y un poco de ruido, conseguimos que cambiasen su captcha inaccesible por Recaptcha.

Obtención del certificado

  1. Accede al formulario de solicitud. Está en inglés, pero eso no será un problema.
  2. Introduce tu correo electrónico en el único cuadro de edición que hay en la página, resuelve el captcha y envía el formulario.
  3. Recibirás un correo electrónico en italiano y en inglés con un código de verificación. Copia el código y pégalo en el cuadro de edición destinado a tal efecto.
  4. Marca las casillas indicando que aceptas los términos del servicio y pulsa el botón que envía este nuevo formulario.
  5. En la página de confirmación hay una contraseña. Cópiala y consérvala en un lugar seguro, la necesitarás más adelante.
  6. Recibirás otro correo, en italiano y en inglés, con un archivo adjunto. En ese archivo van tanto la clave privada como el certificado, cifrados en formato pfx. La contraseña que lo descifra es la que copiaste en el paso anterior.
  7. Descomprime el archivo zip en una carpeta de tu disco duro. Quedará el archivo con extensión .pfx.

Instalación del certificado en Mozilla Thunderbird

El certificado que acabamos de recibir se puede abrir directamente e instalar en Windows con un asistente muy sencillo. Al hacerlo, quedará disponible en aplicaciones tales como Outlook, el correo de Windows y también Thunderbird. Sin embargo, en este dará algunos problemas. Por lo tanto, lo importaremos en el almacén de Mozilla, donde todo funciona bien. Así, además, al copiar el perfil a otros equipos o usarlo en modo portable, el certificado se vendrá con nosotros estemos donde estemos.

  1. En Thunderbird, ve al menú Herramientas, y pulsa enter sobre Ajustes.
  2. En el cuadro de búsqueda, escribe Certificados y pulsa enter de nuevo.
  3. Tabula hasta el botón "Administrar certificados" y actívalo.
  4. Asegúrate de que está seleccionada la pestaña "Sus certificados". Si no lo está, puedes activar el modo exploración de NVDA y seleccionarla con flechas y enter.
  5. Pulsa el botón Importar. En el diálogo que se carga, busca el archivo .pfx extraído en la sección anterior.
  6. Introduce la contraseña que descifra el archivo pfx. El certificado aparecerá en el árbol, listo para usar durante un año. Si es necesario, Thunderbird permite salvarlo junto con la clave privada, y cifrarlo con otra contraseña distinta.
  7. Pulsa Aceptar para cerrar el diálogo de certificados, y control+w para cerrar las preferencias y regresar a la bandeja de entrada.

Vinculación de la cuenta con el certificado

Ahora, debemos indicar a Thunderbird que nuestra cuenta de correo tiene asociado ese certificado. De lo contrario, no sabrá que puede usarlo.

  1. Ve al menú Herramientas, y pulsa Intro sobre Configuración de la cuenta.
  2. Selecciona tu cuenta en el árbol, si no lo estaba ya. Después, tabula hasta el botón Administrar identidades y actívalo.
  3. En la lista, selecciona la identidad cuyo correo va asociado al certificado. Normalmente debería haber una sola identidad. Después, pulsa el botón Editar.
  4. En el nuevo diálogo que se muestra, selecciona la pestaña "Cifrado de extremo a extremo". Puedes activar el modo exploración, navegar con las flechas y pulsar enter.
  5. Al tabular hasta el grupo "S/MIME", verás un botón Seleccionar. Púlsalo para elegir tu certificado de firma.
  6. En el cuadro combinado se mostrarán sólo los certificados que puedes usar para firmar correos con tu dirección. Es raro que haya más de uno, pero puede suceder. Elige el que más te convenga y acepta.
  7. Thunderbird preguntará si quieres usar el mismo certificado para cifrar correos. Si es así, responde que sí.
  8. El resto de casillas del diálogo se pueden configurar según tus gustos. A mí me gusta mantener los correos sin cifrar, pero que vayan firmados por defecto. Para ello, se puede marcar la casilla "Firmar mensajes sin cifrar" y marcar el botón de opción "Desactivar cifrado para mensajes nuevos". Si tenemos tanto S/MIME como OpenPGP disponibles, puede ser buena idea elegir la opción "Preferir S/MIME".
  9. Pulsa los botones Cerrar o Aceptar en todos los diálogos, y control+w para cerrar la configuración de la cuenta.

Creación de un correo firmado

Me encantaría extenderme en esta sección y llenarla de complicados pasos que justifiquen por qué casi nadie firma sus correos, pero es que no se puede. Marcando la casilla del paso 8 de la sección anterior termina todo. Todos los correos que enviemos irán firmados de serie. Cuando pase un año y el certificado caduque, Thunderbird fallará y dirá que el certificado ya no es válido. En ese momento, habrá que eliminarlo y repetir este tutorial paso a paso. Ahora bien, ¿qué pasa si la firma no está activada por defecto, o queremos desactivarla para que un correo se envíe sin firmar?
En ocasiones, sabemos que un correo va a ser manipulado sí o sí. Por ejemplo, cuando lo enviamos a una lista de correo. Los destinatarios recibirán una alerta indicando que el mensaje ha sido manipulado y pueden asustarse, por lo que nos interesa quitar la firma. En la ventana de redacción del mensaje, aparecerá un nuevo menú en la barra de menú llamado "Seguridad". En él, la opción que nos interesa se llama "Firmar digitalmente", y puede estar marcada o desmarcada. Si está desmarcada, el mensaje no se firmará.

Verificación de la firma de un correo recibido

Al recibir un correo firmado, Thunderbird almacenará el certificado del remitente en su propio almacén, dentro de la sección "Otras personas". Esto nos vendrá bien más adelante para cifrar.
Si recorremos la ventana del mensaje con el tabulador, llegaremos a sus cabeceras. En ellas, un botón llamado S/MIME nos informará del estado de la firma y el cifrado, si lo hay. Si el mensaje ha sufrido alguna manipulación mientras viajaba por la red, lo sabremos al instante.

Creación de un mensaje cifrado

Hasta ahora hemos visto cómo garantizar la integridad de un mensaje. Sin embargo, ¿qué pasa si también queremos que nadie, salvo el destinatario, pueda verlo? En ese caso, debemos cifrarlo. En la ventana de creación de mensajes, en el menú Seguridad, también hay una opción para cifrar, pero tiene truco: aunque esté marcada, sólo funcionará si el certificado del destinatario está en la sección "Otras personas" del almacén y sigue siendo válido. De lo contrario, Thunderbird avisará con un error.
El cifrado de mensajes es asimétrico: ciframos el contenido con la clave pública del destinatario (su certificado). El destinatario, por su parte, descifrará el mensaje con la clave privada correspondiente, que sólo tiene él. Nadie más podrá saber qué contiene. Del mismo modo, si quiere respondernos cifrando el mensaje, deberá tener nuestro certificado.

Conclusiones

En este tutorial hemos visto una de las tecnologías más usadas a nivel empresarial para firmar y cifrar mensajes de correo electrónico: S/MIME. Hemos visto cómo obtener un certificado que durará un año, y que después puede seguir renovándose por otro año totalmente gratis. Sin embargo, la cosa no acaba aquí: no hemos hablado de OpenPGP, y sólo se ha explicado la configuración en Thunderbird. En vez de dejarlo cerrado sin más, como en ocasiones anteriores, vamos a hacer que vaya creciendo colaborando entre todos. ¿Cómo se configura un certificado S/MIME en iPhone? ¿Y en Android? ¿Y en Microsoft Outlook o la app nativa de correo de Windows? ¿Se pueden firmar mensajes digitalmente desde la web? No conozco las respuestas a estas preguntas, pero seguro que alguno de vosotros sí, así que ánimo! Y mientras tanto, ¡a firmar un poco más los correos!

счёт: +1

2. nicko,

que información tan útil, esto es lo que da gusto leer! y aprender, muchas gracias xd

счёт: +0

3. el-prevoste,

esóoo, arriba el pichón :D

счёт: +0

4. GingerFox,

se podría recrear ese proceso con outlook? Y qué pasa con aquellos que usen la página web del servicio de correo?

счёт: +0

5. James_Potter,

Gracias!
Lo intentaré hacer a la tarde.

счёт: +0

6. Markk,

Me gusta esta saga de... pichontutoriales (?) que no se corte

Una de las preguntas que me hice durante todo el tutorial es... se podrá firmar desde la web? uso más que nada webmail, a lo sumo la aplicación de correo nativa de windows. Habrá que googlear, seguro se puede. Cuando tenga un rato si encuentro como se hace lo paso por acá.

Sumo otra pregunta, en caso de tener varias cuentas hay que generar un certificado por cuenta? o se puede / es recomendable usar el mismo. O en caso de configurar el certificado en el móvil, sería un certificado por cuenta en vez de uno por dispositivo?

счёт: +0

7. el_pichon,

Puedes meter el certificado en todos los dispositivos que quieras, pero sólo uno por cuenta. Estoy seguro de que otras autoridades, probablemente de pago, sí permiten generar un certificado para varias cuentas y cosas así. Yo tengo todas mis cuentas con certificados de Actalis.

счёт: +0

8. Chicavampiro ,

esa imfo está genial gracias señor pichon.

счёт: +0

9. Borja ,

gracias! muy útil

счёт: +0

10. Rayo,

me sumo a markk. yo uso por lo general, la web de Gmail.

счёт: +0

11. Markk,

Creeria que justamente con la web de gmail no se puede, salvo que seas administrador de una suite de workspace educativa o empresarial. Al menos por lo que estuve viendo googleando no sale nada y en los ajustes de gmail tampoco

счёт: +0

12. el_pichon,

En cierto modo, tiene sentido que desde la web no se pueda. Si alguien consigue entrar, puede hacerse con todos los componentes del certificado. Desde un cliente situado en un ordenador, no es imposible, pero sí más complicado.

счёт: +0

13. TemasVarios,

¡Qué genial! Esto es lo que interesa, por fin algo bueno que poder leer y aprender.

счёт: +0

14. spanishwoman,

Me va a venir de lujo. Gracias palomito.

счёт: +0

15. Chopin,

me viene bien para cifrar correos. había escuchado de las firmas digitales en los mismos, pero no tenía idea de qué eran. gracias!

счёт: +0

16. kaladin-bendito-por-la-tormenta,

listo, instalado y desclasificado. ahora, a veee si se puede hacer algo, con el gestor de correos de mocosoft. había un apartado que decía seguridad dentro de configuración, pero no habían opciones. ojalá que, tras la instalación esta vez quizá, solo quizá, muestre algo. si no, pos mala suerte xd.

счёт: +0

17. Markk,

No sé, yo hice una pregunta en el foro de microsoft Comunity, no me han respondido aún pero creo que esa configuración de seguridad es solo para cuentas exchange. Me acabo de instalar Thunderbird, las cosas que hace uno. Soy un poco reacio a utilizar thunderbird pero creo que bien configurado no está mal, lo voy a probar a ver qué onda, creo que es la única opción para utilizar estos certificados en windows. Y outlook, pero mñe (?)

счёт: +0

Последнее изменение Markk, 10.08.2022 03:41:18

18. kaladin-bendito-por-la-tormenta,

estoy viendo lo mismo. lo que es yo, en el pasado usé tundervird. muy cómodo el cliente. bastante bueno, de echo. el asunto, es que luego me acostumbré a usar el cliente de Microsoft y, no. no deja hacer nada, puesto que dice que esa configuración no está disponible para el tipo de cuenta que tengo activas. aunque, probaré instalando el programa, a ver si vuelvo a acostumbrarme.

счёт: +0

19. Markk,

Okay, más problemas con la app nativa de correo para Windows.
Configuré el certificado en Thunderbird y probé enviarme a mi mismo un mail a varias cuentas.
En la cuenta Microsoft, se recibe el mail y permite instalar el certificado pero arroja un mensaje que dice: "Se ha producido un problema al validar el id. digital de este mensaje."

Pero lo peor de todo es que en las cuentas de Gmail directamente los mensajes firmados no llegan a la app. Por webmail sí se ven

счёт: +0

20. el_pichon,

Sí, el soporte está un poco de aquella manera según la aplicación. Yo estuve buscando información de cómo hacerlo en Outlook. Daré instrucciones más concretas cuando lo pruebe (o puede hacerlo alguien más si me adelanta), pero hay que visitar el centro de confianza en archivo > Opciones.

счёт: +0

21. jafet321,

gran aporte
super

счёт: +0

22. Rayo,

Revivo para decir que ahora mis correos estarán con el certificado S/MIME. muchas gracias, pichón.

счёт: +0

23. Markk,

Los míos también, hasta me sirvió para empezar a usar thunderbird y dejar la web. Qué tiene de malo la web? nada, pero me parece muy cómodo tb el pájaro trueno (?)

счёт: +0

24. Rayo,

secundo, totalmente jajaja. empecé a usar thunderbird gracias a eso, y, aunque sinceramente no me termino de adaptar, hallí vamos.

счёт: +0

25. Markk,

Buenas.
Generé una clave PGP en Thunderbird y la asocié a mi cuenta, por lo que ahora puedo firmar y cifrar con PGP en lugar de s/mime, pero, cuál serían las ventajas y desventajas en relación al certificado s/mime de Actalis?
Entiendo que las claves son autogestionadas, que pueden no caducar nunca, hasta ahí llego, pero, si no hay una entidad que valide tu identidad, cómo sabe Thunderbird si la firma es correcta o no?
Por lo que leí se deja esa decisión en manos de cada uno si confiar o no en las claves, pero perdería un poco el sentido, no?
Supongo también el cifrado sería más seguro con PGP que con s/mime, es así?

счёт: +0

26. el_pichon,

Efectivamente. Cuando te llega una clave pgp de otra persona, tú decides hasta qué punto confías. Para eso puedes recurrir a un canal alternativo, como hablar con la persona y que te confirme que esa es su clave. La seguridad, en términos criptográficos, viene a ser la misma. Una clave pgp podría verse comprometida, pero con los certificados pasa lo mismo. Yo tengo ambos mecanismos implantados, pero uso pgp menos porque hay menos clientes de correo compatibles. Y casi nunca cifro emails, aunque me encantaría.

счёт: +0

26 сообщений, 1 страниц:  1 ↖ Вернуться к списку тем

Ответить на тему

Чтобы писать на форуме, вам нужно сначала войти.

Забыли пароль? Создать учётную запись