Túnel con cifrado de clave compartida

per Victor Carceler darrera modificació 2020-04-06T13:06:37+02:00

Se desea utiliza OpenVPN para construir un túnel. El túnel cifrará los datos que transporta y para ello se utilizará una clave estática compartida entre los dos equipos.

Utilizar una clave compartida es una manera sencilla de conseguir un túnel con cifrado y autentificación (la clave sirve tanto para cifrar los datos como para autentificar a la otra estación), pero si un atacante se hiciese con la clave podría descifrar todo lo que transporta el túnel. En lugar de una clave compartida es posible utilizar OpenVPN con certificados SSL/TLS y gestión de claves RSA. En este modo de funcionamiento se negocian nuevas claves cada cierto tiempo, de manera que un atacante no puede descifrar todo lo que va a transportar el túnel.

Puede leer http://laurel.datsi.fi.upm.es/~rpons/openvpn_como/#pre-shared para ver la manera de crear una clave compartida. Recuerde que la seguridad del tunel depende de que esta clave se mantenga en secreto, por lo tanto deberá utilizarse un canal seguro para copiarla de un equipo a otro.



  1. Monte un nuevo túnel en el que se utilizará una clave compartida
  2. Compruebe con Wireshark que los datos que transporta el túnel están cifrados
  3. Realice una prueba de rendimiento traspasanco con FTP un fichero de datos por el túnel. Qué ocurre comparado con el túnel sin cifrado ? disminuye la capacidad del túnel ? aumenta el uso de CPU ?
  4. Utilice el parámetro --show-ciphers para obtener la lista de algoritmos de cifrado soportados por su versión de OpenVPN. Qué indican los parámetros que acompañan a cada cifrado ?
  5. Utilice las directivas auth y cipher en el fichero de configuración del túnel para probar diferentes algoritmos de autentificación y cifrado. Aprecia algún cambio en la velocidad/uso de CPU ?
  6. Qué ocurre cuando los dos extremos del túnel no utilizan el mismo algoritmo ? Revise los ficheros de registro para ver los mensajes de OpenVPN
  7. Utilice Wikipedia para contestar a las siguientes preguntas:
  • Puede confiarse en alguna versión de DES ?
  • Qué algoritmo de cifrado substituye a DES ? qué tamaños de clave permite ?
  • Qué es CAST-128 ? Está soportado por OpenVPN ?
  • Criptonomicón es un novela de recomendada lectura de Neal Stephenson, parte de la trama gira entorno a un algoritmo llamado Pontifex que los personajes implementan con una baraja de cartas. Ese algoritmo existe y es más conocido como Solitario. Quién inventó Solitario ? Lea su biografía en la Wikipedia. Busque en la red el código fuente en Perl de un script que implemente Solitario.