OpenVPN con Android 2.3.x - problemas de seguridad

Necesito usar mi teléfono Android 2.3.x para acceder a un servidor OpenVPN. Tengo CM 7 con soporte integrado para OpenVPN y tun. Mi principal preocupación es que no sé dónde poner las llaves. Si mi teléfono cae en las manos equivocadas, dejo las llaves a la vista y no puedo tener eso.

Si tuviera un teléfono ICS, tendría cifrado completo del sistema de archivos y estaría a salvo. Entonces, ¿hay alguna alternativa o alguna técnica que no conozca que pueda almacenar los certificados y la clave de forma segura en el teléfono?

Respuestas (2)

Si mantiene el servidor OpenVPN, puede generar claves que requieren una contraseña para ser utilizadas. La técnica se describe en http://openvpn.net/index.php/open-source/documentation/howto.html#pki .

Desplácese a la sección titulada Generar certificados y claves para 3 clientes . Deberá utilizar el build-key-passscript para generar una clave protegida con contraseña. Esto evitará que su clave se use maliciosamente si su teléfono cae en las manos equivocadas, aunque no estoy completamente seguro de si la implementación de OpenVPN de CM 7 lo admite.

Si no tiene la capacidad de usar build-key-passpara generar y registrar sus propias claves, entonces realmente no hay una forma práctica de garantizar la seguridad de su clave sin el cifrado completo del dispositivo.

Otra opción, aunque no tan infalible: use una aplicación de borrado remoto para borrar de forma remota su teléfono si se lo roban.
Lo primero que hace cualquier ladrón/buscador es deshacerse de la tarjeta SIM.

OK, me apresuré aquí e hice una pregunta sin probar las cosas primero. La solución es sencilla y muy segura. Primero, crea una clave combinada PKCS12 en el servidor que combina el certificado del servidor, el certificado del cliente y la clave con openssl pkcs12 -export -in android.cer -inkey android.key -certfile ca.crt -name android -out certs.p12. Durante eso, debe emitir una contraseña de descifrado. Está perfectamente seguro transfiriendo esa tecla combinada a la tarjeta SD. Luego, importa eso en el almacenamiento seguro de Android y luego puede eliminar la clave PKCS12.

Después de eso, está listo para comenzar, las claves están en una bóveda protegida con contraseña y, por lo tanto, nadie más puede acceder a ellas. No hace falta decir que necesita proteger su teléfono con una contraseña de desbloqueo.